#N canvas 57 36 895 665 12;
#X obj 35 17 cnv 15 400 40 empty empty [route] 20 12 0 24 -262144 -66577
0;
#X text 240 221 A mensagem cujo seletor que não combinou com nenhum
argumento é repassada intacta pelo último outlet.;
#X floatatom 109 286 5 0 0 0 - - -;
#X msg 29 155 primeiro 8675;
#X obj 80 294 bng 15 250 50 0 empty empty empty 0 -6 0 10 -204786 -1
-1;
#X msg 64 179 segundo 3 0 9;
#X obj 106 261 route primeiro segundo;
#X obj 172 288 print segundo;
#X obj 295 289 print não_roteado:;
#X obj 153 290 bng 15 250 50 0 empty empty empty 0 -6 0 10 -261234
-1 -1;
#X obj 276 291 bng 15 250 50 0 empty empty empty 0 -6 0 10 -204800
-1 -1;
#X text 42 65 Parecido com o [select] \, [route] é um roteador. Ele
recebe uma mensagem com pelo menos dois elementos. O primeiro (ou seletor)
é o endereço para onde os elementos restantes vão.;
#X obj 96 309 print primeiro;
#X msg 120 231 terceiro 7 2 6;
#X obj 97 506 bng 15 250 50 0 empty empty empty 0 -6 0 10 -204786 -1
-1;
#X obj 97 474 route primeiro segundo;
#X obj 172 506 bng 15 250 50 0 empty empty empty 0 -6 0 10 -261234
-1 -1;
#X msg 75 416 primeiro;
#X msg 117 443 segundo;
#X obj 125 503 print;
#X obj 273 507 bng 15 250 50 0 empty empty empty 0 -6 0 10 -204786
-1 -1;
#X obj 352 507 bng 15 250 50 0 empty empty empty 0 -6 0 10 -261234
-1 -1;
#X obj 301 504 print;
#X obj 273 475 select primeiro segundo;
#X msg 251 417 symbol primeiro;
#X msg 293 444 symbol segundo;
#X text 43 351 Quando o [route] recebe uma mensagem com apenas 1 elemento
\, ele envia uma lista com 0 elementos adiante \, que vira um bang.
Assim \, ele funciona mais ou menos como o [select].;
#X msg 678 210 23 14;
#X msg 731 210 12 15;
#X floatatom 674 294 5 0 0 0 - - -;
#X floatatom 721 271 5 0 0 0 - - -;
#X msg 781 211 29 40;
#X floatatom 776 271 5 0 0 0 - - -;
#X obj 770 295 print No_Match;
#X msg 623 190 12;
#X obj 695 274 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144
-1 -1;
#X text 493 330 Como no [select] \, os argumentos do [route] podem
ser ou símbolos \, ou números \, nunca ambos.;
#X obj 684 245 route 12 23;
#X text 654 187 solta bang \, como no [select];
#X obj 623 287 print;
#X text 498 368 Nesse caso \, como o primeiro argumento é um número
\, o [route] apenas vai aceitar números como seletores.;
#X obj 544 513 *~;
#X obj 566 473 route 1;
#X msg 578 441 1 0.4;
#X floatatom 581 512 5 0 0 0 - - -;
#X msg 542 441 1;
#X obj 678 474 route 1;
#X msg 678 447 1 0.4;
#X floatatom 678 504 5 0 0 0 - - -;
#X obj 660 536 *~;
#X text 426 571 Por mais que o [route] repasse apenas um número \,
ele não é um "float" \, e sim uma lista com apenas um elemento. Por
isso é preciso um certo cuidado. Alguns objetos podem reclamar \, como
o [*~].;
#X text 693 538 funciona;
#X text 537 538 não funciona;
#X text 175 146 O [route] gera outlets de acordo com os argumentos
\, procura um argumento que seja igual ao primeiro elemento de uma
mensagem um seletor e envia o resto da lista para o devido outlet.
;
#X connect 3 0 6 0;
#X connect 5 0 6 0;
#X connect 6 0 2 0;
#X connect 6 0 4 0;
#X connect 6 0 12 0;
#X connect 6 1 7 0;
#X connect 6 1 9 0;
#X connect 6 2 8 0;
#X connect 6 2 10 0;
#X connect 13 0 6 0;
#X connect 15 0 14 0;
#X connect 15 0 19 0;
#X connect 15 1 16 0;
#X connect 15 1 19 0;
#X connect 17 0 15 0;
#X connect 18 0 15 0;
#X connect 23 0 20 0;
#X connect 23 0 22 0;
#X connect 23 1 21 0;
#X connect 23 1 22 0;
#X connect 24 0 23 0;
#X connect 25 0 23 0;
#X connect 27 0 37 0;
#X connect 28 0 37 0;
#X connect 31 0 37 0;
#X connect 34 0 37 0;
#X connect 37 0 29 0;
#X connect 37 0 35 0;
#X connect 37 0 39 0;
#X connect 37 1 30 0;
#X connect 37 2 32 0;
#X connect 37 2 33 0;
#X connect 42 0 41 1;
#X connect 42 0 44 0;
#X connect 43 0 42 0;
#X connect 45 0 42 0;
#X connect 46 0 48 0;
#X connect 47 0 46 0;
#X connect 48 0 49 1;
