#N canvas 194 251 597 354 10; #X msg 373 78 disconnect; #X msg 79 16 /s/server/socket; #X msg 86 36 /s/server/ip; #X msg 94 57 /b/mysynth/freq/1/ 1230; #X msg 100 81 /9/bassist/boes/ 0.9; #X msg 114 102 /10/sumsum/attack 20; #X msg 94 57 /b/mysynth/freq/1/ 1230; #X msg 94 57 /b/mysynth/freq/1/ 1230; #X obj 51 138 list prepend to; #X obj 51 160 s NETPD; #N canvas 38 50 391 329 CLIENT 0; #X obj 171 192 tcpclient; #X obj 13 235 unpackOSC; #X obj 13 78 packOSC; #X obj 171 123 list prepend send; #X obj 171 146 list trim; #N canvas 0 0 653 487 forward_to_localhost 0; #X obj 22 127 route 47; #X obj 22 18 inlet; #X obj 22 40 t a a a a a a a b; #X obj 94 337 t b a; #X obj 126 359 s to.realign; #X obj 126 378 r from.realign; #X obj 94 402 list append; #X text 247 380 realign OSC address to a multiple of 4 bytes; #X obj 94 445 outlet; #X obj 22 67 list split 3; #X obj 22 175 route 47; #X obj 22 206 list append; #X obj 22 289 t b a; #X obj 54 313 list split 2; #X text 178 312 skip first field of OSC adress; #X obj 131 213 list append; #X obj 131 189 b; #X obj 131 238 outlet; #X text 202 241 non-local messages; #X text 162 449 local messages; #X text 163 73 first field of OSC address mustn't exceed 1 byte (+ 2 x '/'); #N canvas 393 132 493 501 realign 0; #N canvas 1048 333 213 342 find 0; #X obj 15 124 list split 1; #X obj 15 77 until; #X obj 15 99 list append; #X obj 122 118 bang; #X obj 15 14 inlet; #X obj 15 43 t b a b; #X obj 15 152 t a b; #X obj 47 176 f; #X obj 47 200 + 1; #X msg 65 152 0; #X obj 15 228 sel 44; #X obj 15 252 f; #X obj 15 306 outlet; #X obj 15 275 - 1; #X connect 0 0 6 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 4 0 5 0; #X connect 5 0 1 0; #X connect 5 1 2 1; #X connect 5 2 9 0; #X connect 6 0 10 0; #X connect 6 1 7 0; #X connect 7 0 8 0; #X connect 8 0 7 1; #X connect 8 0 11 1; #X connect 9 0 7 1; #X connect 10 0 11 0; #X connect 11 0 13 0; #X connect 13 0 12 0; #X restore 82 67 pd find 44; #X obj 15 34 t a a; #X obj 15 96 list split; #N canvas 46 270 341 337 strip 0; #X obj 35 128 list split 1; #X obj 35 81 until; #X obj 35 103 list append; #X obj 142 122 bang; #X obj 15 14 inlet; #X obj 160 175 t a; #X obj 67 175 list prepend; #X obj 15 45 t b b a b; #X obj 15 210 list append; #X obj 35 151 sel 0; #X obj 195 122 b; #X obj 15 233 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 4 0 7 0; #X connect 5 0 6 1; #X connect 6 0 5 0; #X connect 6 0 8 1; #X connect 7 0 8 0; #X connect 7 1 1 0; #X connect 7 2 2 1; #X connect 7 3 10 0; #X connect 8 0 11 0; #X connect 9 1 6 0; #X connect 10 0 6 1; #X connect 10 0 8 1; #X restore 15 135 pd strip 0; #X obj 47 230 mod 4; #X obj 47 251 sel 0 1 2 3; #X msg 47 331 0 0 0 0; #X msg 65 311 0 0 0; #X msg 84 292 0 0; #X msg 102 272 0; #X obj 15 378 list append; #X obj 15 428 list append; #X obj 15 180 t a a; #X obj 47 208 list length; #X obj 15 9 inlet; #X text 168 67 find start of type tag: 44 = \,; #X text 101 135 strip any trailing zeros from OSC adress pattern; #X text 135 307 align OSC address to a multiple of 4 bytes; #X text 113 430 join OSC address and rest of OSC packet; #X obj 15 452 outlet; #X text 113 96 split OSC address pattern from rest of OSC packet; #X connect 0 0 2 1; #X connect 1 0 2 0; #X connect 1 1 0 0; #X connect 2 0 3 0; #X connect 2 1 11 1; #X connect 3 0 12 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 5 1 7 0; #X connect 5 2 8 0; #X connect 5 3 9 0; #X connect 6 0 10 1; #X connect 7 0 10 1; #X connect 8 0 10 1; #X connect 9 0 10 1; #X connect 10 0 11 0; #X connect 11 0 19 0; #X connect 12 0 10 0; #X connect 12 1 13 0; #X connect 13 0 4 0; #X connect 14 0 1 0; #X restore 487 252 pd realign; #X obj 487 230 r to.realign; #X obj 487 273 s from.realign; #X text 175 123 we only need to check for this sequence: 47 108 47 ; #X text 173 145 108 = 'l'; #X obj 22 152 route 108; #X connect 0 0 26 0; #X connect 1 0 2 0; #X connect 2 0 9 0; #X connect 2 6 11 1; #X connect 2 6 15 1; #X connect 3 0 6 0; #X connect 3 1 4 0; #X connect 5 0 6 1; #X connect 6 0 8 0; #X connect 9 0 0 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 12 1 13 0; #X connect 13 1 3 0; #X connect 15 0 17 0; #X connect 16 0 15 0; #X connect 21 0 23 0; #X connect 22 0 21 0; #X connect 26 0 10 0; #X connect 26 1 16 0; #X restore 13 101 pd forward_to_localhost; #X obj 13 298 s NETPD; #X obj 13 256 list prepend from; #X obj 13 276 list trim; #X obj 13 8 r NETPD; #X msg 231 212 connection \$1; #X obj 231 232 s NETPD; #X obj 13 31 list trim; #X obj 13 56 route to tcpclient; #X connect 0 0 1 0; #X connect 0 2 10 0; #X connect 1 0 7 0; #X connect 2 0 5 0; #X connect 3 0 4 0; #X connect 4 0 0 0; #X connect 5 0 1 0; #X connect 5 1 3 0; #X connect 7 0 8 0; #X connect 8 0 6 0; #X connect 9 0 12 0; #X connect 10 0 11 0; #X connect 12 0 13 0; #X connect 13 0 2 0; #X connect 13 1 0 0; #X restore 95 215 pd CLIENT; #X obj 346 149 s NETPD; #X obj 346 127 list prepend tcpclient; #X obj 51 270 r NETPD; #X obj 51 295 route from; #X obj 51 318 print DEBUG; #X obj 352 278 r NETPD; #X obj 352 298 route connection; #X obj 352 320 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X msg 371 58 connect netpd.org 3027; #X connect 0 0 12 0; #X connect 1 0 8 0; #X connect 2 0 8 0; #X connect 3 0 8 0; #X connect 4 0 8 0; #X connect 5 0 8 0; #X connect 8 0 9 0; #X connect 12 0 11 0; #X connect 13 0 14 0; #X connect 14 0 15 0; #X connect 16 0 17 0; #X connect 17 0 18 0; #X connect 19 0 12 0;