#N canvas 547 54 415 461 12;
#X obj 21 21 until;
#X obj 126 294 until;
#X text 151 235 start;
#X msg 142 264 3;
#X text 178 265 start limited to 3 iterations;
#X obj 126 332 f;
#X obj 164 325 + 1;
#X obj 219 321 sel 0;
#X obj 164 351 mod 10;
#X obj 12 52 cnv 1 400 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X obj 2 414 cnv 1 400 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X text 340 20 <= click;
#N canvas 598 111 573 271 reference 0;
#X obj 8 52 cnv 5 550 5 empty empty INLET: 8 18 0 13 #202020 #000000 0;
#X obj 8 170 cnv 2 550 2 empty empty OUTLET: 8 12 0 13 #202020 #000000 0;
#X obj 7 246 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X obj 8 207 cnv 2 550 2 empty empty ARGUMENTS: 8 12 0 13 #202020 #000000 0;
#X text 147 218 NONE, f 52;
#X obj 38 18 until;
#X text 126 180 bang - bangs in a loop., f 49;
#X text 127 106 bang - start loop until a bang reaches the right inlet.;
#X obj 7 130 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 9 83 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 127 136 bang - stops the loop.;
#X text 87 18 - bang loop mechanism.;
#X text 120 86 float - set number of iterations in the loop and start it.;
#X restore 246 21 pd reference;
#X text 23 182 WARNING: if you bang an [until] which doesn't have a stopping mechanism \, Pd goes into an infinite loop and freezes!;
#X obj 126 381 print until;
#X text 202 427 updated for Pd version 0.41;
#X obj 126 235 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X text 70 20 - bang loop mechanism;
#X text 20 65 When receiving a bang at the left inlet \, [until] starts a loop in which it outputs "bang" until its right inlet gets a bang which stops it., f 54;
#X text 20 114 If you send [until] a number instead of a bang \, it iterates that number of times (if a bang to the right inlet doesn't stop it first). 0 or negative numbers are ignored., f 53;
#X connect 1 0 5 0;
#X connect 3 0 1 0;
#X connect 5 0 6 0;
#X connect 5 0 14 0;
#X connect 6 0 8 0;
#X connect 7 0 1 1;
#X connect 8 0 5 1;
#X connect 8 0 7 0;
#X connect 16 0 1 0;
