#N canvas 254 101 924 639 10; #X obj 262 171 mtx 4 3; #X msg 160 166 bang; #X obj 355 50 + 1; #X obj 355 26 hradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144 -1 -1 3; #X floatatom 262 29 5 0 0 0 - - -; #X obj 262 107 list split 1; #N canvas 0 0 450 300 drip 0; #X obj 39 229 list split 1; #X obj 39 146 until; #X obj 39 184 list append; #X obj 169 229 bang; #X text 121 113 First store list \, then start the loop; #X text 138 141 "until" bangs its output until told to stop by a "bang" to its right inlet.; #X text 157 183 Store the remaining list.; #X obj 67 76 inlet; #X obj 65 113 t b a; #X obj 40 258 outlet; #X connect 0 0 9 0; #X connect 0 1 2 1; #X connect 0 2 3 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 1 1; #X connect 7 0 8 0; #X connect 8 0 1 0; #X connect 8 1 2 1; #X restore 341 302 pd drip; #X msg 262 146 row \$1; #X msg 147 90 element 2 1 1; #N canvas 0 0 450 300 count 0; #X obj 85 145 f 0; #X obj 113 145 + 1; #X obj 85 181 outlet; #X obj 85 89 inlet; #X obj 128 89 inlet; #X msg 128 118 0; #X obj 85 113 b; #X connect 0 0 1 0; #X connect 0 0 2 0; #X connect 1 0 0 1; #X connect 3 0 6 0; #X connect 4 0 5 0; #X connect 5 0 0 1; #X connect 6 0 0 0; #X restore 371 353 pd count; #X obj 341 387 select 1; #X obj 341 410 f; #X obj 341 275 t a b; #X obj 341 437 list append; #X obj 341 323 t a b; #X obj 357 462 print RESULT; #X floatatom 341 597 5 0 0 0 - - -; #X floatatom 365 579 5 0 0 0 - - -; #X floatatom 389 559 5 0 0 0 - - -; #X obj 262 196 route matrix; #X obj 100 307 list prepend matrix; #X obj 100 328 list trim; #X obj 100 352 mtx_print; #X msg 54 92 ones 4 3; #X msg 55 116 zeros 4 3; #X msg 56 67 eye 4 3; #X msg 147 64 element 4 3 1; #X msg 147 113 element 2 2 1; #X obj 262 74 list prepend 1; #X text 496 489 reset; #X obj 413 143 t a; #X text 451 144 store actual message below; #X text 380 71 prepend intended row-index.; #X text 316 147 get row.; #X text 454 358 look up indices of the ones (zero-based!); #X text 441 398 prepend column index in front of message \, if a one was found there.; #X obj 476 250 print ROW; #X obj 341 516 route 0 1 2; #X msg 356 487 0 0 \, 1 0 \, 2 0; #X obj 413 538 print huh?; #X connect 0 0 19 0; #X connect 1 0 0 0; #X connect 2 0 28 1; #X connect 3 0 2 0; #X connect 4 0 28 0; #X connect 5 0 7 0; #X connect 5 1 30 0; #X connect 6 0 14 0; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 9 0 11 1; #X connect 10 0 11 0; #X connect 11 0 13 0; #X connect 12 0 6 0; #X connect 12 1 9 1; #X connect 13 0 15 0; #X connect 13 0 37 0; #X connect 14 0 10 0; #X connect 14 1 9 0; #X connect 19 0 20 0; #X connect 19 1 12 0; #X connect 19 1 36 0; #X connect 20 0 21 0; #X connect 21 0 22 0; #X connect 23 0 0 0; #X connect 24 0 0 0; #X connect 25 0 0 0; #X connect 26 0 0 0; #X connect 27 0 0 0; #X connect 28 0 5 0; #X connect 30 0 13 1; #X connect 37 0 16 0; #X connect 37 1 17 0; #X connect 37 2 18 0; #X connect 37 3 39 0; #X connect 38 0 37 0;