-
Notifications
You must be signed in to change notification settings - Fork 4
/
metaseq.pd
1302 lines (1302 loc) · 33.6 KB
/
metaseq.pd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#N canvas 829 443 404 461 10;
#N canvas 614 106 396 76 NETPD 0;
#N canvas 305 106 381 123 abslist 0;
#X msg 17 15 metaseq-segmenter-netpd;
#X msg 28 78 metaseq-gop157x177;
#X msg 38 49 metaseq-set-instance;
#X msg 198 45 untik-clock-provider;
#X restore 12 33 pd abslist;
#X msg 109 20 singleton;
#X msg 11 8 version 0 2 0;
#X restore 10 14 pd NETPD 2 0;
#X obj 9 69 netpd_head \$1 metaseq;
#N canvas 186 479 422 302 \$1-metaseq 1;
#X obj 259 8 metaseq-gop157x177 \$0.segments.gop;
#X obj 6 28 metaseq-set-instance \$1 \$0 1;
#X obj 6 48 metaseq-set-instance \$1 \$0 2;
#X obj 6 68 metaseq-set-instance \$1 \$0 3;
#X obj 6 88 metaseq-set-instance \$1 \$0 4;
#X obj 6 108 metaseq-set-instance \$1 \$0 5;
#X obj 6 128 metaseq-set-instance \$1 \$0 6;
#X obj 6 148 metaseq-set-instance \$1 \$0 7;
#X obj 6 168 metaseq-set-instance \$1 \$0 8;
#X obj 20 28 netpd-gui-dropdown \$0.1.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 48 netpd-gui-dropdown \$0.2.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 68 netpd-gui-dropdown \$0.3.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 88 netpd-gui-dropdown \$0.4.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 108 netpd-gui-dropdown \$0.5.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 128 netpd-gui-dropdown \$0.6.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 148 netpd-gui-dropdown \$0.7.clockname 67 16 10 888 234 234 0 666 887;
#X obj 20 168 netpd-gui-dropdown \$0.8.clockname 67 16 10 888 234 234 0 666 887;
#X obj 92 8 cnv 16 26 16 empty empty div 2 8 0 10 #80a0c0 #ffffff 0;
#X obj 119 8 cnv 16 38 16 empty empty shift 2 8 0 10 #80a0c0 #ffffff 0;
#X obj 158 8 cnv 16 44 16 empty empty length 2 8 0 10 #80a0c0 #ffffff 0;
#X obj 6 8 cnv 16 85 16 empty empty metaseq 2 8 0 18 #80a0c0 #b6cee0 0;
#X obj 202 8 cnv 16 41 16 empty empty pos 4 8 0 10 #80a0c0 #ffffff 0;
#X obj 254 14 cnv 4 4 4 empty empty empty 20 12 0 10 #b6cee0 #404040 0;
#X obj 249 14 cnv 4 4 14 empty empty empty 20 12 0 10 #b6cee0 #404040 0;
#X restore 10 42 pd \$1-metaseq;
#N canvas 459 235 705 291 set.editor.gui.code 0;
#N canvas 324 204 947 696 create_rows 0;
#N canvas 478 103 673 487 struct_num 0;
#X obj 21 343 outlet;
#X obj 37 24 inlet;
#X obj 78 348 route change click;
#X obj 78 396 f;
#X obj 78 372 t b p;
#X obj 21 306 t a a;
#X obj 31 198 filledpolygon bgclr bgclr 0 40 posy 40 posy(0:1000)(16:1016) 136 posy(0:1000)(16:1016) 136 posy;
#X obj 37 72 s pd-\$0.segments.gop;
#X obj 21 267 struct \$0.seg.row float posy float width float offset float fgclr float bgclr float vis;
#X obj 139 373 get \$0.seg.row posy;
#X obj 78 421 set \$0.seg.row posy;
#X obj 288 393 get \$0.seg.row width;
#X obj 288 415 max 1;
#X obj 288 440 set \$0.seg.row width;
#X obj 288 368 t p p;
#X obj 288 345 route change;
#X obj 430 364 t p p;
#X obj 430 341 route change;
#X obj 430 389 get \$0.seg.row offset;
#X obj 430 436 set \$0.seg.row offset;
#X obj 430 411 max 0;
#X obj 31 113 drawnumber -v vis width 84 posy(0:1000)(1:1001) fgclr;
#X obj 29 151 drawnumber -v vis offset 44 posy(0:1000)(1:1001) fgclr;
#X connect 1 0 7 0;
#X connect 2 0 4 0;
#X connect 2 1 9 0;
#X connect 3 0 10 0;
#X connect 4 0 3 0;
#X connect 4 1 10 1;
#X connect 5 0 0 0;
#X connect 5 1 2 0;
#X connect 5 1 15 0;
#X connect 5 1 17 0;
#X connect 8 0 5 0;
#X connect 9 0 3 1;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 14 0 11 0;
#X connect 14 1 13 1;
#X connect 15 0 14 0;
#X connect 16 0 18 0;
#X connect 16 1 19 1;
#X connect 17 0 16 0;
#X connect 18 0 20 0;
#X connect 20 0 19 0;
#X restore 41 278 pd struct_num;
#N canvas 280 285 501 440 struct_mute 0;
#X obj 30 359 outlet;
#X obj 37 24 inlet;
#X obj 30 287 t a a;
#X obj 97 315 route change click;
#X obj 97 363 f;
#X obj 97 339 t b p;
#X obj 37 72 s pd-\$0.segments.gop;
#X obj 30 263 struct \$0.seg.mute float posy float fgclr float bgclr;
#X obj 158 340 get \$0.seg.mute posy;
#X obj 97 388 set \$0.seg.mute posy;
#X obj 31 179 filledpolygon bgclr bgclr 0 27 posy 27 posy(0:1000)(16:1016) 36 posy(0:1000)(16:1016) 36 posy;
#X obj 29 120 filledpolygon fgclr fgclr 0 27 posy(0:1000)(3:1003) 27 posy(0:1000)(13:1013) 36 posy(0:1000)(13:1013) 36 posy(0:1000)(3:1003);
#X connect 1 0 6 0;
#X connect 2 0 0 0;
#X connect 2 1 3 0;
#X connect 3 0 5 0;
#X connect 3 1 8 0;
#X connect 4 0 9 0;
#X connect 5 0 4 0;
#X connect 5 1 9 1;
#X connect 7 0 2 0;
#X connect 8 0 4 1;
#X restore 312 276 pd struct_mute;
#X obj 312 306 route click;
#X msg 402 435 234;
#X obj 41 417 t p p;
#X obj 41 313 route change click;
#X obj 169 499 change;
#X obj 41 499 change;
#X msg 102 431 set -1;
#X obj 102 406 t b a;
#X obj 41 530 list prepend;
#X obj 169 528 list prepend;
#X obj 312 330 t p p p;
#X msg 357 503 1;
#X msg 398 504 0;
#X msg 447 48 8;
#X obj 447 70 until;
#X obj 447 92 f;
#X obj 447 114 t a a;
#X obj 490 99 + 1;
#X obj 447 136 * 20;
#X obj 447 158 + 20;
#X msg 496 62 0;
#N canvas 280 285 501 440 struct_range 0;
#X obj 30 359 outlet;
#X obj 37 24 inlet;
#X obj 30 287 t a a;
#X obj 97 315 route change click;
#X obj 97 363 f;
#X obj 97 339 t b p;
#X obj 37 72 s pd-\$0.segments.gop;
#X obj 30 258 struct \$0.seg.range float posy float bgclr;
#X obj 158 340 get \$0.seg.range posy;
#X obj 97 388 set \$0.seg.range posy;
#X obj 37 115 filledpolygon bgclr bgclr 0 0 posy 0 posy(0:1000)(16:1016) 10 posy(0:1000)(16:1016) 10 posy;
#X connect 1 0 6 0;
#X connect 2 0 0 0;
#X connect 2 1 3 0;
#X connect 3 0 5 0;
#X connect 3 1 8 0;
#X connect 4 0 9 0;
#X connect 5 0 4 0;
#X connect 5 1 9 1;
#X connect 7 0 2 0;
#X connect 8 0 4 1;
#X restore 746 281 pd struct_range;
#X obj 746 311 route click;
#X obj 746 370 - 20;
#X obj 746 392 div 20;
#X obj 102 360 - 20;
#X obj 102 382 div 20;
#X obj 312 524 div 20;
#X obj 312 501 - 20;
#X obj 447 183 list prepend \$0;
#X msg 312 251 scalar \$1.seg.mute \$2 234 234;
#X msg 746 252 scalar \$1.seg.range \$2 234;
#X obj 746 348 get \$0.seg.range posy;
#X obj 102 338 get \$0.seg.row posy;
#X obj 169 475 get \$0.seg.row offset;
#X obj 331 356 get \$0.seg.mute fgclr;
#X obj 362 460 set \$0.seg.mute fgclr;
#X obj 312 479 get \$0.seg.mute posy;
#X obj 447 7 inlet;
#X obj 41 475 get \$0.seg.row width;
#X obj 447 29 t b b;
#X msg 746 469 raw range \$1;
#X obj 746 491 s \$0.from.seg.gui;
#X obj 746 440 + 1;
#X obj 41 646 s \$0.from.seg.gui;
#X msg 41 249 scalar \$1.seg.row \$2 16 0 999 234 0;
#X msg 312 615 edit \$1 mute \$2;
#X msg 169 554 edit \$1 offset \$2;
#X msg 41 577 edit \$1 width \$2;
#X msg 522 251 scalar \$1.seg.solo \$2 234;
#X obj 447 207 t a a a a;
#N canvas 280 285 501 440 struct_solo 0;
#X obj 30 359 outlet;
#X obj 37 24 inlet;
#X obj 30 287 t a a;
#X obj 97 315 route change click;
#X obj 97 363 f;
#X obj 97 339 t b p;
#X obj 37 72 s pd-\$0.segments.gop;
#X obj 158 340 get \$0.seg.solo posy;
#X obj 97 388 set \$0.seg.solo posy;
#X obj 30 263 struct \$0.seg.solo float posy float bgclr;
#X obj 31 179 filledpolygon bgclr bgclr 0 14 posy 14 posy(0:1000)(16:1016) 23 posy(0:1000)(16:1016) 23 posy;
#X connect 1 0 6 0;
#X connect 2 0 0 0;
#X connect 2 1 3 0;
#X connect 3 0 5 0;
#X connect 3 1 7 0;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 5 1 8 1;
#X connect 7 0 4 1;
#X connect 9 0 2 0;
#X restore 522 280 pd struct_solo;
#X obj 522 320 route click;
#X obj 599 421 - 20;
#X obj 599 443 div 20;
#X obj 522 557 s \$0.from.seg.gui;
#X msg 522 535 raw solo \$1;
#N canvas 0 50 334 279 limit.to.count 0;
#X obj 125 38 r \$0.from.seg.gui;
#X obj 125 64 route scrollpos;
#X obj 10 93 +;
#X obj 10 121 moses;
#X obj 131 123 r \$0.to.seg.gui;
#X obj 131 145 route count;
#X obj 10 143 b;
#X obj 10 73 t a a;
#X obj 10 167 f;
#X obj 10 15 inlet;
#X obj 10 216 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 5 0;
#X connect 5 0 3 1;
#X connect 6 0 8 0;
#X connect 7 0 2 0;
#X connect 7 1 8 1;
#X connect 8 0 10 0;
#X connect 9 0 7 0;
#X restore 599 468 pd limit.to.count;
#N canvas 0 50 334 279 limit.to.count 0;
#X obj 125 38 r \$0.from.seg.gui;
#X obj 125 64 route scrollpos;
#X obj 10 93 +;
#X obj 10 121 moses;
#X obj 131 123 r \$0.to.seg.gui;
#X obj 131 145 route count;
#X obj 10 143 b;
#X obj 10 73 t a a;
#X obj 10 167 f;
#X obj 10 15 inlet;
#X obj 10 216 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 5 0;
#X connect 5 0 3 1;
#X connect 6 0 8 0;
#X connect 7 0 2 0;
#X connect 7 1 8 1;
#X connect 8 0 10 0;
#X connect 9 0 7 0;
#X restore 746 415 pd limit.to.count;
#X obj 522 344 get \$0.seg.solo bgclr posy;
#X obj 599 395 f;
#X obj 522 366 sel 567 234;
#X msg 522 409 symbol off;
#X obj 312 593 list append;
#N canvas 0 50 334 279 limit.to.count 0;
#X obj 125 38 r \$0.from.seg.gui;
#X obj 125 64 route scrollpos;
#X obj 10 93 +;
#X obj 10 121 moses;
#X obj 131 123 r \$0.to.seg.gui;
#X obj 131 145 route count;
#X obj 10 143 b;
#X obj 10 73 t a a;
#X obj 10 167 f;
#X obj 10 15 inlet;
#X obj 10 216 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 5 0;
#X connect 5 0 3 1;
#X connect 6 0 8 0;
#X connect 7 0 2 0;
#X connect 7 1 8 1;
#X connect 8 0 10 0;
#X connect 9 0 7 0;
#X restore 312 548 pd limit.to.count;
#X obj 331 380 f;
#X obj 312 570 t a b;
#X msg 362 435 567;
#X obj 351 404 select 234 567;
#X connect 0 0 5 0;
#X connect 1 0 2 0;
#X connect 2 0 12 0;
#X connect 3 0 38 0;
#X connect 4 0 41 0;
#X connect 4 1 36 0;
#X connect 5 0 4 0;
#X connect 5 1 35 0;
#X connect 6 0 11 0;
#X connect 7 0 10 0;
#X connect 8 0 6 0;
#X connect 8 0 7 0;
#X connect 9 0 8 0;
#X connect 9 1 11 1;
#X connect 9 1 10 1;
#X connect 10 0 50 0;
#X connect 11 0 49 0;
#X connect 12 0 39 0;
#X connect 12 1 37 0;
#X connect 12 2 38 1;
#X connect 13 0 65 1;
#X connect 14 0 65 1;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 20 0;
#X connect 18 1 19 0;
#X connect 19 0 17 1;
#X connect 20 0 21 0;
#X connect 21 0 31 0;
#X connect 22 0 17 1;
#X connect 23 0 24 0;
#X connect 24 0 34 0;
#X connect 25 0 26 0;
#X connect 26 0 60 0;
#X connect 27 0 28 0;
#X connect 28 0 9 0;
#X connect 29 0 66 0;
#X connect 30 0 29 0;
#X connect 31 0 52 0;
#X connect 32 0 1 0;
#X connect 33 0 23 0;
#X connect 34 0 25 0;
#X connect 35 0 27 0;
#X connect 36 0 6 0;
#X connect 37 0 67 1;
#X connect 39 0 30 0;
#X connect 40 0 42 0;
#X connect 41 0 7 0;
#X connect 42 0 15 0;
#X connect 42 1 22 0;
#X connect 43 0 44 0;
#X connect 45 0 43 0;
#X connect 47 0 0 0;
#X connect 48 0 46 0;
#X connect 49 0 46 0;
#X connect 50 0 46 0;
#X connect 51 0 53 0;
#X connect 52 0 47 0;
#X connect 52 1 32 0;
#X connect 52 2 51 0;
#X connect 52 3 33 0;
#X connect 53 0 54 0;
#X connect 54 0 61 0;
#X connect 55 0 56 0;
#X connect 56 0 59 0;
#X connect 58 0 57 0;
#X connect 59 0 58 0;
#X connect 60 0 45 0;
#X connect 61 0 63 0;
#X connect 61 1 62 1;
#X connect 62 0 55 0;
#X connect 63 0 64 0;
#X connect 63 1 62 0;
#X connect 64 0 58 0;
#X connect 65 0 48 0;
#X connect 66 0 68 0;
#X connect 67 0 70 0;
#X connect 68 0 65 0;
#X connect 68 1 67 0;
#X connect 69 0 38 0;
#X connect 70 0 69 0;
#X connect 70 0 13 0;
#X connect 70 1 3 0;
#X connect 70 1 14 0;
#X restore 471 173 pd create_rows;
#N canvas 721 244 568 415 update_rows 0;
#X obj 323 181 pointer;
#X msg 323 154 next;
#X msg 392 145 traverse \$1;
#X obj 392 123 symbol pd-\$0.segments.gop;
#X obj 58 5 r \$0.to.seg.gui;
#X obj 58 27 route raw;
#X obj 58 49 route row;
#X obj 48 108 list split 1;
#X obj 82 132 route bang;
#X obj 154 296 set \$0.seg.row offset;
#X obj 170 271 set \$0.seg.row width;
#X obj 240 343 set \$0.seg.row vis;
#X obj 58 71 t a a;
#X msg 323 26 \$1;
#X msg 202 200 \$1;
#X obj 62 343 set \$0.seg.mute fgclr;
#X obj 62 295 sel 0 1;
#X msg 62 317 234;
#X msg 170 198 \$2;
#X msg 154 227 \$3;
#X obj 44 172 t b b b;
#X msg 44 198 0;
#X obj 139 169 t b a a b a;
#X msg 139 251 1;
#X obj 323 48 * 4;
#X obj 323 68 + 3;
#X msg 95 319 567;
#X obj 323 90 t a b;
#X obj 323 112 until;
#X connect 0 0 9 1;
#X connect 0 0 10 1;
#X connect 0 0 11 1;
#X connect 0 0 15 1;
#X connect 1 0 0 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 1 8 0;
#X connect 8 0 20 0;
#X connect 8 1 22 0;
#X connect 12 0 7 0;
#X connect 12 1 13 0;
#X connect 13 0 24 0;
#X connect 14 0 16 0;
#X connect 16 0 17 0;
#X connect 16 1 26 0;
#X connect 17 0 15 0;
#X connect 18 0 10 0;
#X connect 19 0 9 0;
#X connect 20 0 21 0;
#X connect 20 1 1 0;
#X connect 20 2 17 0;
#X connect 21 0 11 0;
#X connect 22 0 23 0;
#X connect 22 1 19 0;
#X connect 22 2 18 0;
#X connect 22 3 1 0;
#X connect 22 4 14 0;
#X connect 23 0 11 0;
#X connect 24 0 25 0;
#X connect 25 0 27 0;
#X connect 26 0 15 0;
#X connect 27 0 28 0;
#X connect 27 1 3 0;
#X connect 28 0 1 0;
#X restore 419 123 pd update_rows;
#N canvas 66 324 379 328 struct_add 0;
#X obj 37 8 inlet;
#X obj 32 205 route click;
#X obj 32 227 b;
#X obj 37 106 filledpolygon bgclr bgclr 0 0 0 0 16 16 16 16 0;
#X obj 36 136 drawsymbol label 4 1 fgclr;
#X obj 37 77 s pd-\$0.segments.gop;
#X obj 32 183 struct \$0.seg.add float bgclr float fgclr symbol label;
#X obj 37 29 list prepend \$0;
#X msg 37 51 scalar \$1.seg.add \$2 \$3 \$4;
#X msg 32 250 add;
#X obj 32 272 s \$0.from.seg.gui;
#X connect 0 0 7 0;
#X connect 1 0 2 0;
#X connect 2 0 9 0;
#X connect 6 0 1 0;
#X connect 7 0 8 0;
#X connect 8 0 5 0;
#X connect 9 0 10 0;
#X restore 31 207 pd struct_add;
#X msg 419 56 clear;
#N canvas 66 324 379 328 struct_del 0;
#X obj 37 24 inlet;
#X obj 32 225 route click;
#X obj 37 121 filledpolygon bgclr bgclr 0 20 0 20 16 36 16 36 0;
#X obj 36 151 drawsymbol label 24 1 fgclr;
#X obj 37 92 s pd-\$0.segments.gop;
#X obj 37 46 list prepend \$0;
#X obj 32 203 struct \$0.seg.del float bgclr float fgclr symbol label;
#X msg 37 66 scalar \$1.seg.del \$2 \$3 \$4;
#X obj 32 270 s \$0.from.seg.gui;
#X msg 32 248 del;
#X connect 0 0 5 0;
#X connect 1 0 9 0;
#X connect 5 0 7 0;
#X connect 6 0 1 0;
#X connect 7 0 4 0;
#X connect 9 0 8 0;
#X restore 118 208 pd struct_del;
#N canvas 176 168 823 301 struct_count 0;
#X obj 37 24 inlet;
#X obj 37 121 filledpolygon bgclr bgclr 0 80 0 80 16 116 16 116 0;
#X obj 34 151 drawnumber count 84 1 fgclr;
#X obj 37 92 s pd-\$0.segments.gop;
#X obj 37 46 list prepend \$0;
#X obj 32 203 struct \$0.seg.count float bgclr float fgclr float count;
#X msg 37 66 scalar \$1.seg.count \$2 \$3 \$4;
#X obj 570 165 pointer;
#X msg 570 114 next;
#X msg 629 122 traverse \$1;
#X obj 629 100 symbol pd-\$0.segments.gop;
#X obj 570 24 r \$0.done.create;
#X obj 570 46 t b b;
#X obj 570 91 until;
#X obj 441 198 set \$0.seg.count count;
#X obj 441 59 r \$0.to.seg.gui;
#X obj 441 81 route count;
#N canvas 0 50 388 239 prohibit_editing 0;
#X obj 23 57 route change click;
#X obj 75 98 get \$0.seg.count count;
#X obj 23 152 set \$0.seg.count count;
#X obj 23 79 t b p;
#X obj 23 128 f;
#X obj 23 20 inlet;
#X connect 0 0 3 0;
#X connect 0 1 1 0;
#X connect 1 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 2 1;
#X connect 4 0 2 0;
#X connect 5 0 0 0;
#X restore 32 236 pd prohibit_editing;
#X msg 570 68 34;
#X connect 0 0 4 0;
#X connect 4 0 6 0;
#X connect 5 0 17 0;
#X connect 6 0 3 0;
#X connect 7 0 14 1;
#X connect 8 0 7 0;
#X connect 9 0 7 0;
#X connect 10 0 9 0;
#X connect 11 0 12 0;
#X connect 12 0 18 0;
#X connect 12 1 10 0;
#X connect 13 0 8 0;
#X connect 15 0 16 0;
#X connect 16 0 14 0;
#X connect 18 0 13 0;
#X restore 315 208 pd struct_count;
#N canvas 66 324 887 288 struct_length 0;
#X obj 37 24 inlet;
#X obj 37 121 filledpolygon bgclr bgclr 0 120 0 120 16 156 16 156 0;
#X obj 34 151 drawnumber length 124 1 fgclr;
#X obj 37 92 s pd-\$0.segments.gop;
#X obj 37 46 list prepend \$0;
#X msg 37 66 scalar \$1.seg.length \$2 \$3 \$4;
#X obj 32 203 struct \$0.seg.length float bgclr float fgclr float length;
#X obj 570 165 pointer;
#X msg 570 114 next;
#X msg 629 122 traverse \$1;
#X obj 629 100 symbol pd-\$0.segments.gop;
#X obj 570 24 r \$0.done.create;
#X obj 570 46 t b b;
#X obj 570 91 until;
#X obj 441 198 set \$0.seg.length length;
#X obj 441 115 r \$0.to.seg.gui;
#X obj 441 137 route length;
#N canvas 0 50 388 239 prohibit_editing 0;
#X obj 23 57 route change click;
#X obj 23 79 t b p;
#X obj 23 128 f;
#X obj 23 20 inlet;
#X obj 75 98 get \$0.seg.length length;
#X obj 23 152 set \$0.seg.length length;
#X connect 0 0 1 0;
#X connect 0 1 4 0;
#X connect 1 0 2 0;
#X connect 1 1 5 1;
#X connect 2 0 5 0;
#X connect 3 0 0 0;
#X connect 4 0 2 1;
#X restore 32 236 pd prohibit_editing;
#X msg 570 68 33;
#X connect 0 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 3 0;
#X connect 6 0 17 0;
#X connect 7 0 14 1;
#X connect 8 0 7 0;
#X connect 9 0 7 0;
#X connect 10 0 9 0;
#X connect 11 0 12 0;
#X connect 12 0 18 0;
#X connect 12 1 10 0;
#X connect 13 0 8 0;
#X connect 15 0 16 0;
#X connect 16 0 14 0;
#X connect 18 0 13 0;
#X restore 414 208 pd struct_length;
#N canvas 794 225 408 448 update_range 0;
#X obj 125 282 pointer;
#X msg 125 254 next;
#X msg 172 224 traverse \$1;
#X obj 10 124 t b a b b;
#X obj 10 191 f;
#X obj 10 166 until;
#X msg 61 169 0;
#X obj 50 198 + 1;
#X obj 10 213 t b a;
#X obj 37 281 change -1;
#X obj 37 333 moses;
#X msg 37 357 234;
#X obj 64 309 + 1;
#X msg 64 357 777;
#X obj 172 202 symbol pd-\$0.segments.gop;
#X obj 37 390 set \$0.seg.range bgclr;
#X obj 10 6 r \$0.from.seg.gui;
#X obj 10 30 route raw;
#X obj 10 51 route range;
#X obj 10 73 - 1;
#X obj 120 7 r \$0.to.seg.gui;
#X obj 37 259 div 4;
#X msg 10 144 30;
#X connect 0 0 15 1;
#X connect 1 0 0 0;
#X connect 2 0 0 0;
#X connect 3 0 22 0;
#X connect 3 1 12 0;
#X connect 3 2 1 0;
#X connect 3 3 6 0;
#X connect 3 3 14 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 6 0 4 1;
#X connect 7 0 4 1;
#X connect 8 0 1 0;
#X connect 8 1 21 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 10 1 13 0;
#X connect 11 0 15 0;
#X connect 12 0 10 1;
#X connect 13 0 15 0;
#X connect 14 0 2 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 19 0 3 0;
#X connect 20 0 17 0;
#X connect 21 0 9 0;
#X connect 22 0 5 0;
#X restore 419 103 pd update_range;
#X obj 419 80 s pd-\$0.segments.gop;
#X obj 215 43 loadbang;
#X obj 215 85 s \$0.done.create;
#X obj 215 65 t b b;
#X obj 269 43 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X msg 31 173 \$1 \$3 +;
#X msg 118 174 \$1 \$3 -;
#X msg 206 174 \$1 \$3 16;
#X msg 315 174 \$1 \$2 0;
#X msg 414 174 \$1 \$2 0;
#X msg 242 107 456 777 999;
#N canvas 622 106 943 658 scrollbar 0;
#X obj 9 10 inlet;
#X obj 9 226 s pd-\$0.segments.gop;
#X msg 28 151 obj 0 0 cnv 15 157 177 empty empty empty 20 12 0 14 -262144 -66577;
#X obj 9 35 f \$0;
#X obj 9 60 t a a a;
#X obj 414 503 s \$0.scrollbar.display;
#X msg 414 420 pos 140 \$1;
#X msg 430 472 vis_size 17 \$1;
#X msg 9 186 obj 140 20 cnv 0 17 157 empty \$1.scrollbar.display empty 20 12 0 14 -67105 -66577;
#X msg 48 113 obj 140 22 vsl 17 152 1 0 0 0 \$1.scrollbar.handle.s \$1.scrollbar.handle.r empty 0 -9 0 10 -262144 -1 -1 0 1;
#X obj 414 278 * 152;
#X obj 414 302 + 20;
#X obj 488 289 t a a;
#X msg 515 311 177 \$1;
#X obj 515 334 -;
#X obj 414 396 min;
#X obj 573 367 - 20;
#X obj 573 420 / 152;
#X obj 414 188 r \$0.scrollbar.handle.s;
#X obj 558 576 s \$0.scrollbar.handle.r;
#X obj 558 467 >;
#X obj 558 489 sel 1;
#X obj 558 511 f;
#X msg 558 533 set \$1;
#X obj 573 442 t a a;
#X msg 488 139 8 \$1;
#X obj 488 161 /;
#X obj 488 223 min 1;
#X obj 488 243 * 157;
#X obj 488 265 int;
#X obj 488 113 max 1;
#X obj 488 90 t a a;
#X obj 669 332 / 157;
#X obj 654 358 min;
#X obj 654 382 *;
#X obj 654 404 + 0.3;
#X obj 654 426 int;
#X obj 654 448 change;
#X obj 573 389 t a a;
#X obj 414 225 t a a a;
#X msg 654 505 scrollpos \$1;
#X obj 654 527 s \$0.from.seg.gui;
#X obj 639 35 r \$0.from.seg.gui;
#X obj 505 547 loadbang;
#X msg 505 569 0;
#X obj 639 60 route scrollpos;
#X obj 754 13 r \$0.to.seg.gui;
#X obj 754 35 route count;
#X obj 753 132 -;
#X obj 753 153 clip -1 1;
#X obj 753 175 sel -1 1;
#X obj 750 97 t a a a a;
#X obj 766 285 /;
#X obj 859 162 t a;
#X obj 769 324 s \$0.scrollbar.handle.r;
#X msg 821 282 1;
#X obj 754 57 t a a;
#X obj 753 202 f;
#X obj 822 162 - 8;
#X obj 822 188 max 0;
#X obj 753 235 min;
#X obj 654 470 t a a;
#X obj 778 495 pack f f;
#X msg 778 517 \$2 \$1;
#X obj 778 539 s \$0.set.scroll;
#X obj 766 441 t a a;
#X obj 766 463 tabread \$0.set.scroll;
#X obj 767 354 r \$0.to.seg;
#X obj 767 376 route scrollbar set;
#X obj 767 398 b;
#X obj 767 420 f;
#X connect 0 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 8 0;
#X connect 4 1 2 0;
#X connect 4 2 9 0;
#X connect 6 0 5 0;
#X connect 7 0 5 0;
#X connect 8 0 1 0;
#X connect 9 0 1 0;
#X connect 10 0 11 0;
#X connect 11 0 15 0;
#X connect 12 0 7 0;
#X connect 12 1 13 0;
#X connect 13 0 14 0;
#X connect 14 0 15 1;
#X connect 14 0 16 0;
#X connect 15 0 6 0;
#X connect 16 0 38 0;
#X connect 17 0 24 0;
#X connect 18 0 39 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 23 0 19 0;
#X connect 24 0 20 1;
#X connect 24 1 22 1;
#X connect 25 0 26 0;
#X connect 26 0 27 0;
#X connect 27 0 28 0;
#X connect 28 0 29 0;
#X connect 29 0 12 0;
#X connect 30 0 25 0;
#X connect 31 0 30 0;
#X connect 31 1 34 1;
#X connect 32 0 33 1;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 35 0 36 0;
#X connect 36 0 37 0;
#X connect 37 0 61 0;
#X connect 38 0 17 0;
#X connect 38 1 32 0;
#X connect 39 0 10 0;
#X connect 39 1 20 0;
#X connect 39 2 33 0;
#X connect 40 0 41 0;
#X connect 42 0 45 0;
#X connect 43 0 44 0;
#X connect 44 0 19 0;
#X connect 45 0 57 1;
#X connect 46 0 47 0;
#X connect 47 0 56 0;
#X connect 48 0 49 0;
#X connect 49 0 50 0;
#X connect 50 0 57 0;
#X connect 50 1 55 0;
#X connect 51 0 48 1;
#X connect 51 1 48 0;
#X connect 51 2 58 0;
#X connect 51 3 53 0;
#X connect 52 0 54 0;
#X connect 53 0 52 1;
#X connect 55 0 54 0;
#X connect 56 0 51 0;
#X connect 56 1 31 0;
#X connect 57 0 60 0;
#X connect 58 0 59 0;
#X connect 59 0 60 1;
#X connect 60 0 52 0;
#X connect 61 0 40 0;
#X connect 61 1 62 0;
#X connect 62 0 63 0;
#X connect 63 0 64 0;
#X connect 65 0 66 0;
#X connect 65 1 62 1;
#X connect 67 0 68 0;
#X connect 68 0 69 0;
#X connect 68 1 70 1;
#X connect 69 0 70 0;
#X connect 70 0 65 0;
#X restore 563 172 pd scrollbar;
#X obj 242 131 t a a a a a b b;
#N canvas 66 324 407 413 struct_default 0;
#X obj 37 24 inlet;
#X obj 37 121 filledpolygon bgclr bgclr 0 40 0 40 16 76 16 76 0;
#X obj 34 151 drawnumber default 44 1 fgclr;
#X obj 32 225 route change;
#X obj 37 92 s pd-\$0.segments.gop;
#X obj 37 46 list prepend \$0;
#X obj 32 203 struct \$0.seg.width float bgclr float fgclr float default;
#X msg 37 66 scalar \$1.seg.width \$2 \$3 \$4;
#X obj 32 384 s \$0.from.seg.gui;
#X msg 32 361 default_width \$1;
#X obj 32 273 get \$0.seg.width default;
#X obj 32 248 t p p;
#X obj 32 294 max 1;
#X obj 95 313 set \$0.seg.width default;
#X obj 32 316 t a a;
#X obj 32 338 change;
#X connect 0 0 5 0;
#X connect 3 0 11 0;
#X connect 5 0 7 0;
#X connect 6 0 3 0;
#X connect 7 0 4 0;
#X connect 9 0 8 0;
#X connect 10 0 12 0;
#X connect 11 0 10 0;
#X connect 11 1 13 1;
#X connect 12 0 14 0;
#X connect 14 0 15 0;
#X connect 14 1 13 0;
#X connect 15 0 9 0;
#X restore 206 208 pd struct_default;
#N canvas 747 126 385 511 update_solo 0;
#X obj 125 302 pointer;
#X msg 172 244 traverse \$1;
#X obj 10 144 t b a b b;
#X obj 10 211 f;
#X obj 10 186 until;
#X msg 61 189 0;
#X obj 50 218 + 1;
#X obj 10 233 t b a;
#X obj 37 301 change -1;
#X obj 64 329 + 1;
#X obj 172 222 symbol pd-\$0.segments.gop;
#X obj 10 6 r \$0.from.seg.gui;
#X obj 10 30 route raw;
#X obj 120 7 r \$0.to.seg.gui;
#X obj 37 279 div 4;
#X msg 10 164 30;
#X obj 10 51 route solo;
#X obj 37 410 set \$0.seg.solo bgclr;
#X msg 10 261 next;
#X msg 125 272 next \, next;
#X obj 37 352 sel;
#X msg 64 377 234;
#X msg 37 377 567;
#X obj 10 73 route off;
#X obj 10 118 - 1;
#X msg 10 95 -1;
#X connect 0 0 17 1;
#X connect 1 0 0 0;
#X connect 2 0 15 0;
#X connect 2 1 9 0;
#X connect 2 2 19 0;
#X connect 2 3 5 0;
#X connect 2 3 10 0;
#X connect 3 0 6 0;
#X connect 3 0 7 0;
#X connect 4 0 3 0;
#X connect 5 0 3 1;
#X connect 6 0 3 1;
#X connect 7 0 18 0;
#X connect 7 1 14 0;
#X connect 8 0 20 0;
#X connect 9 0 20 1;
#X connect 10 0 1 0;
#X connect 11 0 12 0;
#X connect 12 0 16 0;
#X connect 13 0 12 0;
#X connect 14 0 8 0;
#X connect 15 0 4 0;
#X connect 16 0 23 0;
#X connect 18 0 0 0;
#X connect 19 0 0 0;
#X connect 20 0 22 0;
#X connect 20 1 21 0;
#X connect 21 0 17 0;
#X connect 22 0 17 0;
#X connect 23 0 25 0;
#X connect 23 1 24 0;
#X connect 24 0 2 0;
#X connect 25 0 24 0;
#X restore 516 103 pd update_solo;
#X connect 3 0 8 0;
#X connect 9 0 11 0;
#X connect 11 0 10 0;
#X connect 11 1 18 0;
#X connect 12 0 11 0;
#X connect 13 0 2 0;
#X connect 14 0 4 0;
#X connect 15 0 21 0;
#X connect 16 0 5 0;
#X connect 17 0 6 0;
#X connect 18 0 20 0;
#X connect 20 0 13 0;
#X connect 20 1 14 0;
#X connect 20 2 15 0;
#X connect 20 3 16 0;
#X connect 20 4 17 0;
#X connect 20 5 0 0;
#X connect 20 6 19 0;
#X restore 9 106 pd set.editor.gui.code;
#X obj 237 389 s \$0.from.seg;
#X obj 237 311 r \$0.to.seg;
#N canvas 583 111 982 358 set.editor.gui.interfacing 0;
#X obj 229 11 r \$0.from.seg;
#X obj 41 162 s \$0.to.seg;
#X obj 41 13 r \$0.from.seg.gui;
#X obj 41 57 b;
#X obj 41 79 f 16;
#X msg 41 104 add \$1 0 0;
#X obj 347 122 r \$0.from.seg.gui;
#X obj 347 144 route scrollpos;
#X obj 299 158 t b a;
#X msg 299 180 8;
#X obj 299 202 until;
#X obj 299 224 f;
#X obj 348 221 + 1;
#X obj 299 108 b;
#X obj 299 130 f;
#X msg 353 77 count \$1;
#X obj 353 99 s \$0.to.seg.gui;
#X msg 299 271 get \$1;
#X obj 299 293 s \$0.to.seg;
#X obj 549 14 r \$0.from.seg;
#X obj 41 35 route add default_width del;
#X msg 147 60 remove;
#X obj 549 36 route segment;
#X obj 549 58 list split 1;
#X obj 549 91 -;
#X obj 549 132 list append;
#X obj 549 154 list prepend raw row;
#X obj 549 176 list trim;
#X obj 549 198 s \$0.to.seg.gui;
#X msg 613 108 \$3 \$1 \$2;
#X obj 815 94 r \$0.from.seg.gui;
#X obj 815 116 route scrollpos;
#X obj 747 22 r \$0.from.seg.gui;
#X obj 747 47 route edit;
#X obj 747 69 list split 1;
#X obj 747 91 +;
#X obj 747 143 list append;
#X msg 747 168 update_\$2 \$1 \$3;
#X obj 747 192 s \$0.to.seg;
#X obj 299 246 t a a a;
#X obj 546 228 r \$0.from.seg;
#X obj 546 250 route bang;
#X obj 546 274 f;
#X msg 546 296 raw row \$1;
#X obj 546 319 s \$0.to.seg.gui;
#X obj 51 185 loadbang;
#X msg 51 207 set 0;
#X obj 51 229 s \$0.to.seg;
#N canvas 0 50 507 276 solo 0;
#X obj 17 10 r \$0.from.seg;
#X obj 17 193 s \$0.to.seg.gui;
#X obj 17 32 route solo;
#X msg 17 171 raw solo \$1;
#X obj 17 54 route off;
#X obj 219 19 r \$0.from.seg.gui;
#X obj 219 41 route raw;
#X obj 219 63 route solo;
#X obj 219 85 route off;
#X msg 219 177 solo \$1;
#X obj 219 199 s \$0.to.seg;
#X obj 99 59 inlet;
#X obj 30 123 -;
#X obj 270 142 +;
#X msg 17 146 symbol off;
#X msg 219 107 -1;
#X connect 0 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 1 0;
#X connect 4 0 14 0;
#X connect 4 1 12 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 15 0;
#X connect 8 1 13 0;
#X connect 9 0 10 0;
#X connect 11 0 12 1;
#X connect 11 0 13 1;
#X connect 12 0 3 0;