diff options
-rw-r--r-- | doc/OSC-help.pd | 20 | ||||
-rw-r--r-- | doc/OSCroute-help.pd | 194 | ||||
-rw-r--r-- | doc/dumpOSC-help.pd | 17 | ||||
-rw-r--r-- | doc/help-OSC.pd | 10 | ||||
-rw-r--r-- | doc/help-OSCroute.pd | 96 | ||||
-rw-r--r-- | doc/help-sendOSC.pd | 60 | ||||
-rw-r--r-- | doc/sendOSC-help.pd | 122 |
7 files changed, 180 insertions, 339 deletions
diff --git a/doc/OSC-help.pd b/doc/OSC-help.pd index b3b7a9a..88ddc52 100644 --- a/doc/OSC-help.pd +++ b/doc/OSC-help.pd @@ -1,10 +1,10 @@ -#N canvas 608 335 423 300 10; -#X obj 21 149 sendOSC-help; -#X obj 21 174 dumpOSC-help; -#X obj 21 200 OSCroute-help; -#X obj 17 43 OSC; -#X msg 17 19 version; -#X text 15 79 1 click sendOSC-help 2 click connect button 3 randomly -click the 3 available messages 4 watch console; -#X text 102 19 version 0.16; -#X connect 4 0 3 0; +#N canvas 608 335 471 304 12;
+#X obj 21 149 sendOSC-help;
+#X obj 21 174 dumpOSC-help;
+#X obj 21 200 OSCroute-help;
+#X obj 17 43 OSC;
+#X msg 17 19 version;
+#X text 15 79 1 click sendOSC-help 2 click connect button 3 randomly
+click the 3 available messages 4 watch console;
+#X text 102 19 version 0.16;
+#X connect 4 0 3 0;
diff --git a/doc/OSCroute-help.pd b/doc/OSCroute-help.pd index 58da40d..a249835 100644 --- a/doc/OSCroute-help.pd +++ b/doc/OSCroute-help.pd @@ -1,96 +1,98 @@ -#N canvas 112 247 493 349 10; -#X msg 20 72 version; -#X obj 86 72 r rcvOSC; -#X obj 86 109 OSCroute /test /ix /yps; -#X obj 161 143 print ix; -#X obj 242 142 print yps; -#X obj 85 183 OSCroute /bla /bli /blo; -#X obj 85 212 unpack f f f; -#X floatatom 85 239 4 0 0 0 - - -; -#X floatatom 124 239 4 0 0 0 - - -; -#X floatatom 164 239 4 0 0 0 - - -; -#X text 20 11 OSCroute works pretty much like route but outputs remainder -of routing tag after match.; -#X obj 68 143 print test; -#X obj 241 212 print rejected; -#N canvas 663 325 672 347 patternmatching 1; -#X obj 26 242 OSCroute /freq; -#X obj 150 242 OSCroute /freq; -#X obj 272 241 OSCroute /freq; -#X msg 81 115 /*/freq 23 45 67; -#X obj 72 201 OSCroute /inst1 /inst2 /inst3; -#X obj 26 266 unpack f f f; -#X floatatom 26 287 3 0 0 0 - - -; -#X floatatom 65 287 3 0 0 0 - - -; -#X floatatom 105 287 3 0 0 0 - - -; -#X obj 150 265 unpack f f f; -#X floatatom 150 286 3 0 0 0 - - -; -#X floatatom 189 286 3 0 0 0 - - -; -#X floatatom 229 286 3 0 0 0 - - -; -#X obj 272 265 unpack f f f; -#X floatatom 272 286 3 0 0 0 - - -; -#X floatatom 311 286 3 0 0 0 - - -; -#X floatatom 351 286 3 0 0 0 - - -; -#X msg 55 44 /inst1/freq 100 200 300; -#X msg 64 66 /inst2/freq 111 222 333; -#X msg 70 88 /inst3/freq 321 432 543; -#X text 45 116 4->; -#X text 37 89 3->; -#X text 30 67 2->; -#X text 22 45 1->; -#X text 11 7 took me a while to figure this out \, somehow i always -thought it should work the other way round:; -#X msg 96 145 /inst[12]/freq 0 99 88; -#X msg 119 174 /inst?/freq 22.33 44.55 66.77; -#X text 367 48 well \, now it does \, crudely:; -#X obj 375 130 OSCroute /*; -#X msg 375 80 /test1/data 1 2 3; -#X msg 401 103 /test2/data 3.4 5 1; -#X obj 447 157 print rejected; -#X obj 375 184 print routed; -#X connect 0 0 5 0; -#X connect 1 0 9 0; -#X connect 2 0 13 0; -#X connect 3 0 4 0; -#X connect 4 0 0 0; -#X connect 4 1 1 0; -#X connect 4 2 2 0; -#X connect 5 0 6 0; -#X connect 5 1 7 0; -#X connect 5 2 8 0; -#X connect 9 0 10 0; -#X connect 9 1 11 0; -#X connect 9 2 12 0; -#X connect 13 0 14 0; -#X connect 13 1 15 0; -#X connect 13 2 16 0; -#X connect 17 0 4 0; -#X connect 18 0 4 0; -#X connect 19 0 4 0; -#X connect 25 0 4 0; -#X connect 26 0 4 0; -#X connect 28 0 32 0; -#X connect 28 1 31 0; -#X connect 29 0 28 0; -#X connect 30 0 28 0; -#X restore 288 57 pd patternmatching; -#X text 184 57 check here =>; -#X text 239 235 last outlet emits all non-matches; -#X text 252 269 -OSC patterns that didnt match; -#X text 239 252 (like classic route):; -#X text 252 280 -patterns not starting with /; -#X text 252 294 -patterns starting with a number; -#X text 325 324 2002-09-08 \, jdl xdv.org; -#X connect 0 0 2 0; -#X connect 1 0 2 0; -#X connect 2 0 5 0; -#X connect 2 0 11 0; -#X connect 2 1 3 0; -#X connect 2 1 5 0; -#X connect 2 2 4 0; -#X connect 2 2 5 0; -#X connect 5 0 6 0; -#X connect 5 3 12 0; -#X connect 6 0 7 0; -#X connect 6 1 8 0; -#X connect 6 2 9 0; +#N canvas 112 247 501 357 10;
+#X msg 20 72 version;
+#X obj 86 72 r rcvOSC;
+#X obj 86 109 OSCroute /test /ix /yps;
+#X obj 161 143 print ix;
+#X obj 242 142 print yps;
+#X obj 85 183 OSCroute /bla /bli /blo;
+#X obj 85 212 unpack f f f;
+#X floatatom 85 239 4 0 0 0 - - -;
+#X floatatom 124 239 4 0 0 0 - - -;
+#X floatatom 164 239 4 0 0 0 - - -;
+#X text 20 11 OSCroute works pretty much like route but outputs remainder
+of routing tag after match.;
+#X obj 68 143 print test;
+#X obj 241 212 print rejected;
+#N canvas 663 325 676 351 patternmatching 0;
+#X obj 26 242 OSCroute /freq;
+#X obj 150 242 OSCroute /freq;
+#X obj 272 241 OSCroute /freq;
+#X msg 81 115 /*/freq 23 45 67;
+#X obj 72 201 OSCroute /inst1 /inst2 /inst3;
+#X obj 26 266 unpack f f f;
+#X floatatom 26 287 3 0 0 0 - - -;
+#X floatatom 65 287 3 0 0 0 - - -;
+#X floatatom 105 287 3 0 0 0 - - -;
+#X obj 150 265 unpack f f f;
+#X floatatom 150 286 3 0 0 0 - - -;
+#X floatatom 189 286 3 0 0 0 - - -;
+#X floatatom 229 286 3 0 0 0 - - -;
+#X obj 272 265 unpack f f f;
+#X floatatom 272 286 3 0 0 0 - - -;
+#X floatatom 311 286 3 0 0 0 - - -;
+#X floatatom 351 286 3 0 0 0 - - -;
+#X msg 55 44 /inst1/freq 100 200 300;
+#X msg 64 66 /inst2/freq 111 222 333;
+#X msg 70 88 /inst3/freq 321 432 543;
+#X text 45 116 4->;
+#X text 37 89 3->;
+#X text 30 67 2->;
+#X text 22 45 1->;
+#X text 11 7 took me a while to figure this out \, somehow i always
+thought it should work the other way round:;
+#X msg 96 145 /inst[12]/freq 0 99 88;
+#X msg 119 174 /inst?/freq 22.33 44.55 66.77;
+#X text 367 48 well \, now it does \, crudely:;
+#X obj 375 130 OSCroute /*;
+#X msg 375 80 /test1/data 1 2 3;
+#X msg 401 103 /test2/data 3.4 5 1;
+#X obj 447 157 print rejected;
+#X obj 375 184 print routed;
+#X connect 0 0 5 0;
+#X connect 1 0 9 0;
+#X connect 2 0 13 0;
+#X connect 3 0 4 0;
+#X connect 4 0 0 0;
+#X connect 4 1 1 0;
+#X connect 4 2 2 0;
+#X connect 5 0 6 0;
+#X connect 5 1 7 0;
+#X connect 5 2 8 0;
+#X connect 9 0 10 0;
+#X connect 9 1 11 0;
+#X connect 9 2 12 0;
+#X connect 13 0 14 0;
+#X connect 13 1 15 0;
+#X connect 13 2 16 0;
+#X connect 17 0 4 0;
+#X connect 18 0 4 0;
+#X connect 19 0 4 0;
+#X connect 25 0 4 0;
+#X connect 26 0 4 0;
+#X connect 28 0 32 0;
+#X connect 28 1 31 0;
+#X connect 29 0 28 0;
+#X connect 30 0 28 0;
+#X restore 288 57 pd patternmatching;
+#X text 184 57 check here =>;
+#X text 239 235 last outlet emits all non-matches;
+#X text 252 269 -OSC patterns that didnt match;
+#X text 239 252 (like classic route):;
+#X text 252 280 -patterns not starting with /;
+#X text 252 294 -patterns starting with a number;
+#X text 325 324 2002-09-08 \, jdl xdv.org;
+#X text 28 318 for more info \, get help on:;
+#X obj 195 319 OSC;
+#X connect 0 0 2 0;
+#X connect 1 0 2 0;
+#X connect 2 0 5 0;
+#X connect 2 0 11 0;
+#X connect 2 1 3 0;
+#X connect 2 1 5 0;
+#X connect 2 2 4 0;
+#X connect 2 2 5 0;
+#X connect 5 0 6 0;
+#X connect 5 3 12 0;
+#X connect 6 0 7 0;
+#X connect 6 1 8 0;
+#X connect 6 2 9 0;
diff --git a/doc/dumpOSC-help.pd b/doc/dumpOSC-help.pd index ab769ef..118ac54 100644 --- a/doc/dumpOSC-help.pd +++ b/doc/dumpOSC-help.pd @@ -1,7 +1,10 @@ -#N canvas 485 432 461 199 12; -#X obj 17 105 print rcvOSC; -#X obj 17 53 dumpOSC 9999; -#X obj 45 78 s rcvOSC; -#X text 15 7 dumpOSC listens on specified port / UDP \, outputs everything received on its only outlet. seems to be pretty stable.; -#X connect 1 0 0 0; -#X connect 1 0 2 0; +#N canvas 485 432 465 203 12;
+#X obj 17 105 print rcvOSC;
+#X obj 17 53 dumpOSC 9999;
+#X obj 45 78 s rcvOSC;
+#X text 15 7 dumpOSC listens on specified port / UDP \, outputs everything
+received on its only outlet. seems to be pretty stable.;
+#X obj 417 163 OSC;
+#X text 194 163 for more info \, get help on:;
+#X connect 1 0 0 0;
+#X connect 1 0 2 0;
diff --git a/doc/help-OSC.pd b/doc/help-OSC.pd deleted file mode 100644 index b3b7a9a..0000000 --- a/doc/help-OSC.pd +++ /dev/null @@ -1,10 +0,0 @@ -#N canvas 608 335 423 300 10; -#X obj 21 149 sendOSC-help; -#X obj 21 174 dumpOSC-help; -#X obj 21 200 OSCroute-help; -#X obj 17 43 OSC; -#X msg 17 19 version; -#X text 15 79 1 click sendOSC-help 2 click connect button 3 randomly -click the 3 available messages 4 watch console; -#X text 102 19 version 0.16; -#X connect 4 0 3 0; diff --git a/doc/help-OSCroute.pd b/doc/help-OSCroute.pd deleted file mode 100644 index 58da40d..0000000 --- a/doc/help-OSCroute.pd +++ /dev/null @@ -1,96 +0,0 @@ -#N canvas 112 247 493 349 10; -#X msg 20 72 version; -#X obj 86 72 r rcvOSC; -#X obj 86 109 OSCroute /test /ix /yps; -#X obj 161 143 print ix; -#X obj 242 142 print yps; -#X obj 85 183 OSCroute /bla /bli /blo; -#X obj 85 212 unpack f f f; -#X floatatom 85 239 4 0 0 0 - - -; -#X floatatom 124 239 4 0 0 0 - - -; -#X floatatom 164 239 4 0 0 0 - - -; -#X text 20 11 OSCroute works pretty much like route but outputs remainder -of routing tag after match.; -#X obj 68 143 print test; -#X obj 241 212 print rejected; -#N canvas 663 325 672 347 patternmatching 1; -#X obj 26 242 OSCroute /freq; -#X obj 150 242 OSCroute /freq; -#X obj 272 241 OSCroute /freq; -#X msg 81 115 /*/freq 23 45 67; -#X obj 72 201 OSCroute /inst1 /inst2 /inst3; -#X obj 26 266 unpack f f f; -#X floatatom 26 287 3 0 0 0 - - -; -#X floatatom 65 287 3 0 0 0 - - -; -#X floatatom 105 287 3 0 0 0 - - -; -#X obj 150 265 unpack f f f; -#X floatatom 150 286 3 0 0 0 - - -; -#X floatatom 189 286 3 0 0 0 - - -; -#X floatatom 229 286 3 0 0 0 - - -; -#X obj 272 265 unpack f f f; -#X floatatom 272 286 3 0 0 0 - - -; -#X floatatom 311 286 3 0 0 0 - - -; -#X floatatom 351 286 3 0 0 0 - - -; -#X msg 55 44 /inst1/freq 100 200 300; -#X msg 64 66 /inst2/freq 111 222 333; -#X msg 70 88 /inst3/freq 321 432 543; -#X text 45 116 4->; -#X text 37 89 3->; -#X text 30 67 2->; -#X text 22 45 1->; -#X text 11 7 took me a while to figure this out \, somehow i always -thought it should work the other way round:; -#X msg 96 145 /inst[12]/freq 0 99 88; -#X msg 119 174 /inst?/freq 22.33 44.55 66.77; -#X text 367 48 well \, now it does \, crudely:; -#X obj 375 130 OSCroute /*; -#X msg 375 80 /test1/data 1 2 3; -#X msg 401 103 /test2/data 3.4 5 1; -#X obj 447 157 print rejected; -#X obj 375 184 print routed; -#X connect 0 0 5 0; -#X connect 1 0 9 0; -#X connect 2 0 13 0; -#X connect 3 0 4 0; -#X connect 4 0 0 0; -#X connect 4 1 1 0; -#X connect 4 2 2 0; -#X connect 5 0 6 0; -#X connect 5 1 7 0; -#X connect 5 2 8 0; -#X connect 9 0 10 0; -#X connect 9 1 11 0; -#X connect 9 2 12 0; -#X connect 13 0 14 0; -#X connect 13 1 15 0; -#X connect 13 2 16 0; -#X connect 17 0 4 0; -#X connect 18 0 4 0; -#X connect 19 0 4 0; -#X connect 25 0 4 0; -#X connect 26 0 4 0; -#X connect 28 0 32 0; -#X connect 28 1 31 0; -#X connect 29 0 28 0; -#X connect 30 0 28 0; -#X restore 288 57 pd patternmatching; -#X text 184 57 check here =>; -#X text 239 235 last outlet emits all non-matches; -#X text 252 269 -OSC patterns that didnt match; -#X text 239 252 (like classic route):; -#X text 252 280 -patterns not starting with /; -#X text 252 294 -patterns starting with a number; -#X text 325 324 2002-09-08 \, jdl xdv.org; -#X connect 0 0 2 0; -#X connect 1 0 2 0; -#X connect 2 0 5 0; -#X connect 2 0 11 0; -#X connect 2 1 3 0; -#X connect 2 1 5 0; -#X connect 2 2 4 0; -#X connect 2 2 5 0; -#X connect 5 0 6 0; -#X connect 5 3 12 0; -#X connect 6 0 7 0; -#X connect 6 1 8 0; -#X connect 6 2 9 0; diff --git a/doc/help-sendOSC.pd b/doc/help-sendOSC.pd deleted file mode 100644 index bdf6091..0000000 --- a/doc/help-sendOSC.pd +++ /dev/null @@ -1,60 +0,0 @@ -#N canvas 496 472 848 467 10; -#X obj 59 396 sendOSC; -#X floatatom 59 423 5 0 0 0 - - -; -#X msg 44 119 disconnect; -#X msg 79 163 send /test/bla 1 2 3; -#X msg 26 93 connect localhost 9999; -#X msg 91 187 send /ix/bli 4 fuenf 6; -#X msg 103 211 send /yps/blo 7.8 9.1 zehnkommaelf; -#X text 8 142 ========================================; -#X msg 274 92 connect localhost 10001; -#X msg 149 301 typetags 1; -#X msg 144 333 typetags 0; -#X text 475 112 typetags; -#X text 475 129 sendOSC now by default uses; -#X text 477 145 typetags.; -#X text 477 166 dumOSC on the other hand; -#X text 477 186 should be able to interpret; -#X text 478 208 this.; -#X text 474 93 new (or again):; -#X msg 423 294 [; -#X msg 423 321 ]; -#X msg 256 249 send /bla 1 2 3 \, send /bli 3 4 5 \, send /blo 4 5 -6; -#X text 462 312 when last bundle is closed the buffer is sent.; -#X text 463 333 so: first "[" \, then add messages with send /bla; -#X text 466 351 open nested nudle etc \, close with "]"; -#X floatatom 113 425 5 0 0 0 - - -; -#X text 162 428 bundleDepth; -#X text 24 11 sendOSC: send OSC formatted packet to network. at the -moment over UDP only is supported.; -#X text 28 38 supported int \, flot + string.; -#X text 462 291 open / close bundles here.; -#X text 465 372 watch the bundleDepth index change while you do this. -; -#X text 231 299 switch usage of typetags; -#X text 232 316 on/off.; -#X text 231 332 default: on; -#X text 465 392 MAX_BUNDLE_NESTING: 32; -#X msg 315 154 send; -#X msg 315 179 send /; -#X msg 368 156 send /bang; -#X msg 265 57 connect 192.168.0.255 5555; -#X text 462 58 use something like this to broadcast on UDP; -#X connect 0 0 1 0; -#X connect 0 1 24 0; -#X connect 2 0 0 0; -#X connect 3 0 0 0; -#X connect 4 0 0 0; -#X connect 5 0 0 0; -#X connect 6 0 0 0; -#X connect 8 0 0 0; -#X connect 9 0 0 0; -#X connect 10 0 0 0; -#X connect 18 0 0 0; -#X connect 19 0 0 0; -#X connect 20 0 0 0; -#X connect 34 0 0 0; -#X connect 35 0 0 0; -#X connect 36 0 0 0; -#X connect 37 0 0 0; diff --git a/doc/sendOSC-help.pd b/doc/sendOSC-help.pd index bdf6091..3123fef 100644 --- a/doc/sendOSC-help.pd +++ b/doc/sendOSC-help.pd @@ -1,60 +1,62 @@ -#N canvas 496 472 848 467 10; -#X obj 59 396 sendOSC; -#X floatatom 59 423 5 0 0 0 - - -; -#X msg 44 119 disconnect; -#X msg 79 163 send /test/bla 1 2 3; -#X msg 26 93 connect localhost 9999; -#X msg 91 187 send /ix/bli 4 fuenf 6; -#X msg 103 211 send /yps/blo 7.8 9.1 zehnkommaelf; -#X text 8 142 ========================================; -#X msg 274 92 connect localhost 10001; -#X msg 149 301 typetags 1; -#X msg 144 333 typetags 0; -#X text 475 112 typetags; -#X text 475 129 sendOSC now by default uses; -#X text 477 145 typetags.; -#X text 477 166 dumOSC on the other hand; -#X text 477 186 should be able to interpret; -#X text 478 208 this.; -#X text 474 93 new (or again):; -#X msg 423 294 [; -#X msg 423 321 ]; -#X msg 256 249 send /bla 1 2 3 \, send /bli 3 4 5 \, send /blo 4 5 -6; -#X text 462 312 when last bundle is closed the buffer is sent.; -#X text 463 333 so: first "[" \, then add messages with send /bla; -#X text 466 351 open nested nudle etc \, close with "]"; -#X floatatom 113 425 5 0 0 0 - - -; -#X text 162 428 bundleDepth; -#X text 24 11 sendOSC: send OSC formatted packet to network. at the -moment over UDP only is supported.; -#X text 28 38 supported int \, flot + string.; -#X text 462 291 open / close bundles here.; -#X text 465 372 watch the bundleDepth index change while you do this. -; -#X text 231 299 switch usage of typetags; -#X text 232 316 on/off.; -#X text 231 332 default: on; -#X text 465 392 MAX_BUNDLE_NESTING: 32; -#X msg 315 154 send; -#X msg 315 179 send /; -#X msg 368 156 send /bang; -#X msg 265 57 connect 192.168.0.255 5555; -#X text 462 58 use something like this to broadcast on UDP; -#X connect 0 0 1 0; -#X connect 0 1 24 0; -#X connect 2 0 0 0; -#X connect 3 0 0 0; -#X connect 4 0 0 0; -#X connect 5 0 0 0; -#X connect 6 0 0 0; -#X connect 8 0 0 0; -#X connect 9 0 0 0; -#X connect 10 0 0 0; -#X connect 18 0 0 0; -#X connect 19 0 0 0; -#X connect 20 0 0 0; -#X connect 34 0 0 0; -#X connect 35 0 0 0; -#X connect 36 0 0 0; -#X connect 37 0 0 0; +#N canvas 496 472 852 471 10;
+#X obj 59 396 sendOSC;
+#X floatatom 59 423 5 0 0 0 - - -;
+#X msg 44 119 disconnect;
+#X msg 79 163 send /test/bla 1 2 3;
+#X msg 26 93 connect localhost 9999;
+#X msg 91 187 send /ix/bli 4 fuenf 6;
+#X msg 103 211 send /yps/blo 7.8 9.1 zehnkommaelf;
+#X text 8 142 ========================================;
+#X msg 274 92 connect localhost 10001;
+#X msg 149 301 typetags 1;
+#X msg 144 333 typetags 0;
+#X text 475 112 typetags;
+#X text 475 129 sendOSC now by default uses;
+#X text 477 145 typetags.;
+#X text 477 166 dumOSC on the other hand;
+#X text 477 186 should be able to interpret;
+#X text 478 208 this.;
+#X text 474 93 new (or again):;
+#X msg 423 294 [;
+#X msg 423 321 ];
+#X msg 256 249 send /bla 1 2 3 \, send /bli 3 4 5 \, send /blo 4 5
+6;
+#X text 462 312 when last bundle is closed the buffer is sent.;
+#X text 463 333 so: first "[" \, then add messages with send /bla;
+#X text 466 351 open nested nudle etc \, close with "]";
+#X floatatom 113 425 5 0 0 0 - - -;
+#X text 162 428 bundleDepth;
+#X text 24 11 sendOSC: send OSC formatted packet to network. at the
+moment over UDP only is supported.;
+#X text 28 38 supported int \, flot + string.;
+#X text 462 291 open / close bundles here.;
+#X text 465 372 watch the bundleDepth index change while you do this.
+;
+#X text 231 299 switch usage of typetags;
+#X text 232 316 on/off.;
+#X text 231 332 default: on;
+#X text 465 392 MAX_BUNDLE_NESTING: 32;
+#X msg 315 154 send;
+#X msg 315 179 send /;
+#X msg 368 156 send /bang;
+#X msg 265 57 connect 192.168.0.255 5555;
+#X text 462 58 use something like this to broadcast on UDP;
+#X text 607 435 for more info \, get help on:;
+#X obj 774 436 OSC;
+#X connect 0 0 1 0;
+#X connect 0 1 24 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 0;
+#X connect 5 0 0 0;
+#X connect 6 0 0 0;
+#X connect 8 0 0 0;
+#X connect 9 0 0 0;
+#X connect 10 0 0 0;
+#X connect 18 0 0 0;
+#X connect 19 0 0 0;
+#X connect 20 0 0 0;
+#X connect 34 0 0 0;
+#X connect 35 0 0 0;
+#X connect 36 0 0 0;
+#X connect 37 0 0 0;
|