#N canvas 582 39 573 547 10;
#X obj 2 285 cnv 3 550 3 empty empty inlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 2 390 cnv 3 550 3 empty empty outlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 2 471 cnv 3 550 3 empty empty arguments 8 12 0 13 #dcdcdc #000000 0;
#X obj 83 295 cnv 17 3 67 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 82 402 cnv 17 3 30 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 191 169 bng 20 250 50 0 empty empty empty 0 -6 0 8 #d0d0d0 #404040 #000000;
#X floatatom 304 204 5 0 0 0 - - - 0;
#X msg 279 177 seed \$1;
#X floatatom 279 155 5 0 0 0 - - - 0;
#X obj 304 252 bng 18 250 50 0 empty empty empty 0 -6 0 8 #d0d0d0 #404040 #000000;
#X obj 83 368 cnv 17 3 17 empty empty 1 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 82 436 cnv 17 3 30 empty empty 1 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 2 539 cnv 1 550 1 empty empty empty 0 0 0 4 #fcfcfc #fcfcfc 0;
#X obj 2 515 cnv 15 552 21 empty empty empty 20 12 0 14 #e0e0e0 #202020 0;
#X text 140 295 bang;
#X text 134 369 float;
#X text 141 436 bang;
#X text 134 403 float;
#X text 117 480 1) float;
#X msg 229 170 clear;
#X obj 229 256 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10 #dcdcdc #000000 #000000 0 256;
#X text 327 253 done;
#X text 133 256 random numbers;
#X text 182 295 - generates unrepeated random number, f 59;
#X text 134 329 clear;
#X text 92 345 seed <float>;
#X text 182 329 - clears the memory (the list of already generated numbers);
#X text 182 403 - unrepeated random number output - when receiving a bang (if not all have been generated yet);
#X text 182 436 - if all random numbers have already been generated - when receiving a bang;
#X text 182 345 - reseeds the random number generator, f 59;
#X text 180 480 -;
#X text 182 369 - clears the memory and sets size;
#X text 56 91 [urn] generates random numbers in a range defined by the 'n' size (from 0 to n-1) without repeating them. When all numbers have been output \, a bang is sent to the right outlet and it stops generating numbers unless it receives a clear message., f 68;
#X text 406 198 (random values are from 0-n-1), f 16;
#X text 191 480 sets size (default 1 \, maximum 65536 - in max it's 4096);
#X text 341 203 size 'n';
#X text 134 311 float;
#X text 182 311 - same as bang, f 59;
#X text 180 496 -;
#X text 117 496 2) float;
#X text 191 496 sets seed (default internal random one);
#X obj 229 226 cyclone/urn 4;
#N canvas 732 116 634 416 seed 0;
#X obj 128 170 bng 18 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X obj 171 311 nbx 3 17 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 12 #dcdcdc #000000 #000000 0 256;
#X obj 282 310 bng 18 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X obj 171 267 cyclone/urn 10 4526;
#X msg 224 206 clear;
#X msg 170 149 seed 4526;
#X msg 187 178 seed 0;
#X text 132 53 A 2nd argument can set the seed. You can also set the seed via a message \, but only after the sequence has finished or right after it was cleared. If you set it to 0 \, it's like the default \, where an internal value is set.;
#X obj 324 170 bng 18 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X obj 367 311 nbx 3 17 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 12 #dcdcdc #000000 #000000 0 256;
#X obj 478 310 bng 18 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X obj 367 267 cyclone/urn 10 4526;
#X msg 420 206 clear;
#X msg 366 149 seed 4526;
#X msg 383 178 seed 0;
#X connect 0 0 3 0;
#X connect 2 0 4 0;
#X connect 3 0 1 0;
#X connect 3 1 2 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 3 0;
#X connect 8 0 11 0;
#X connect 10 0 12 0;
#X connect 11 0 9 0;
#X connect 11 1 10 0;
#X connect 12 0 11 0;
#X connect 13 0 11 0;
#X connect 14 0 11 0;
#X restore 490 254 pd seed;
#X obj 3 4 ./header urn;
#X text 22 63 Unrepeated random numbers;
#X connect 5 0 41 0;
#X connect 6 0 41 1;
#X connect 7 0 41 0;
#X connect 8 0 7 0;
#X connect 19 0 41 0;
#X connect 41 0 20 0;
#X connect 41 1 9 0;
