aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xbee/packxbee-help.pd10
-rw-r--r--xbee/unpackxbee-help.pd531
2 files changed, 311 insertions, 230 deletions
diff --git a/xbee/packxbee-help.pd b/xbee/packxbee-help.pd
index 63f4f97..7e00c6b 100644
--- a/xbee/packxbee-help.pd
+++ b/xbee/packxbee-help.pd
@@ -1,4 +1,4 @@
-#N canvas 589 103 622 746 10;
+#N canvas 590 102 622 746 10;
#X declare -lib mrpeach;
#X obj 400 56 cnv 15 150 200 empty empty empty 20 12 0 14 -232576 -66577
0;
@@ -249,18 +249,16 @@
#X obj 153 185 packxbee 2;
#X obj 360 667 unpackxbee 2;
#X obj 491 6 import mrpeach;
-#N canvas 770 112 381 267 META 0;
+#N canvas 170 449 381 216 META 0;
#X text 22 55 LICENSE GPL v2 or later;
-#X text 22 193 AUTHOR Martin Peach;
+#X text 22 153 AUTHOR Martin Peach;
#X text 22 15 KEYWORDS control network wireless xbee;
-#X text 22 213 HELP_PATCH_AUTHORS Martin Peach;
+#X text 22 173 HELP_PATCH_AUTHORS Martin Peach;
#X text 22 75 DESCRIPTION [packxbee] builds packets for xbees in API
modes 1 or 2;
#X text 22 35 NAME packxbee;
#X text 22 110 INLET_0 API TX AT ATQ RAT verbosity;
#X text 22 130 OUTLET_0 list data;
-#X text 22 151 OUTLET_1 list samples;
-#X text 21 172 OUTLET_2 list status;
#X restore 534 26 pd META;
#X msg 291 341 info;
#X msg 271 321 open 4;
diff --git a/xbee/unpackxbee-help.pd b/xbee/unpackxbee-help.pd
index 96433c6..9f95777 100644
--- a/xbee/unpackxbee-help.pd
+++ b/xbee/unpackxbee-help.pd
@@ -1,247 +1,330 @@
#N canvas 26 77 1250 833 10;
#X declare -lib mrpeach;
-#X obj -15 50 cnv 15 600 240 empty empty empty 20 12 0 14 -262130 -66577
+#X obj -15 0 cnv 15 600 240 empty empty empty 20 12 0 14 -262130 -66577
0;
-#X obj 159 215 cnv 15 300 25 empty empty unpackxbee: 1 12 0 14 -257985
--159808 0;
-#X msg 280 153 verbosity \$1;
-#X obj 280 132 hradio 15 1 0 3 empty empty verbosity 0 -8 0 10 -4034
+#X obj -15 239 cnv 15 1400 550 empty empty unpackxbee_status: 1 12
+0 14 -203904 -159808 0;
+#X msg 280 103 verbosity \$1;
+#X obj 280 82 hradio 15 1 0 3 empty empty verbosity 0 -8 0 10 -4034
-1 -1 0;
-#X obj 330 220 unpackxbee 2;
-#X obj 491 6 import mrpeach;
-#N canvas 770 112 381 211 META 0;
+#X obj 330 170 unpackxbee 2;
+#X obj 591 6 import mrpeach;
+#N canvas 771 111 381 332 META 1;
#X text 22 55 LICENSE GPL v2 or later;
-#X text 22 153 AUTHOR Martin Peach;
+#X text 22 183 AUTHOR Martin Peach;
#X text 22 15 KEYWORDS control network wireless xbee;
-#X text 22 173 HELP_PATCH_AUTHORS Martin Peach;
-#X text 22 130 OUTLET_0 list;
+#X text 22 203 HELP_PATCH_AUTHORS Martin Peach;
#X text 22 35 NAME unpackxbee;
#X text 22 75 DESCRIPTION [unpackxbee] unpacks packets from xbees in
API modes 1 or 2;
#X text 22 110 INLET_0 list;
-#X restore 534 26 pd META;
-#X obj 330 180 comport 98 9600;
-#X text -12 270 Martin Peach 2013_02_20;
-#X text 27 55 [unpackxbee] is used to unpack API mode 1 or 2 packets
+#X text 23 125 OUTLET_0 list data;
+#X text 23 145 OUTLET_1 list sample frame;
+#X text 23 165 OUTLET_2 list status;
+#X restore 634 26 pd META;
+#X obj 330 130 comport 98 9600;
+#X text 27 5 [unpackxbee] is used to unpack API mode 1 or 2 packets
received from xbees. Usually the output of a [comport] object is connected
to the inlet.;
-#X text 26 103 Packet status comes out the right \, data is emitted
+#X text 26 53 Packet status comes out the right \, data is emitted
from the left outlet.;
-#X floatatom 174 468 5 0 0 0 - - -;
-#X obj 244 349 print unpack5;
-#X obj 63 296 route AT_Command_Response;
-#X obj 63 332 list split 3;
-#X obj 174 370 list trim;
-#X symbolatom 191 484 7 0 0 0 - - -;
-#X symbolatom 209 501 20 0 0 0 - - -;
-#X obj 63 370 unpack 0 0 0;
-#X floatatom 63 394 5 0 0 0 - - -;
-#X floatatom 97 414 5 0 0 0 - - -;
-#X floatatom 132 434 5 0 0 0 - - -;
-#X text -11 394 packet type;
-#X text 29 414 packet ID;
-#X text 54 433 data length;
-#X text 61 465 AT command status;
-#X text 145 483 addr16;
-#X text 165 499 addr64;
-#X obj 408 313 route ZigBee_Transmit_Status;
-#X floatatom 408 355 5 0 0 0 - - -;
-#X floatatom 429 373 5 0 0 0 - - -;
-#X text 334 355 packet type;
-#X text 361 373 packet ID;
-#X symbolatom 450 390 7 0 0 0 - - -;
-#X text 407 389 addr16;
-#X floatatom 513 442 5 0 0 0 - - -;
-#X floatatom 492 425 5 0 0 0 - - -;
-#X floatatom 471 408 5 0 0 0 - - -;
-#X text 340 406 transmit retry count;
-#X text 391 423 delivery status;
-#X text 407 440 discovery status;
-#X symbolatom 226 518 32 0 0 0 - - -;
-#X symbolatom 244 536 7 0 0 0 - - -;
-#X symbolatom 297 589 7 0 0 0 - - -;
-#X symbolatom 315 607 7 0 0 0 - - -;
-#X obj 174 446 unpack 0 s s s s 0 0 s s;
-#X floatatom 262 554 5 0 0 0 - - -;
-#X floatatom 279 571 5 0 0 0 - - -;
-#X text 129 517 Node Identifier;
-#X text 197 535 parent;
-#X text 187 551 device type;
-#X text 199 569 source event;
-#X text 242 587 profile;
-#X text 237 605 manufacturer;
-#X obj 408 335 unpack 0 0 s 0 0 0;
-#X obj 596 330 route ZigBee_Receive_Packet;
-#X obj 1101 364 print someotherpacket;
-#X symbolatom 665 427 7 0 0 0 - - -;
-#X symbolatom 642 409 17 0 0 0 - - -;
-#X text 619 426 addr16;
-#X text 598 407 addr64;
-#X floatatom 596 373 5 0 0 0 - - -;
-#X text 522 373 packet type;
-#X floatatom 689 445 5 0 0 0 - - -;
-#X text 590 443 receive options;
-#X obj 689 495 tgl 15 0 empty empty acknowledged 17 7 0 10 -4034 -1
+#X floatatom 174 441 5 0 0 0 - - -;
+#X obj 244 322 print unpack5;
+#X obj 63 269 route AT_Command_Response;
+#X obj 63 305 list split 3;
+#X obj 174 343 list trim;
+#X symbolatom 191 457 7 0 0 0 - - -;
+#X symbolatom 209 474 20 0 0 0 - - -;
+#X obj 63 343 unpack 0 0 0;
+#X floatatom 63 367 5 0 0 0 - - -;
+#X floatatom 97 387 5 0 0 0 - - -;
+#X floatatom 132 407 5 0 0 0 - - -;
+#X text -11 367 packet type;
+#X text 29 387 packet ID;
+#X text 54 406 data length;
+#X text 61 438 AT command status;
+#X text 145 456 addr16;
+#X text 165 472 addr64;
+#X obj 408 286 route ZigBee_Transmit_Status;
+#X floatatom 408 328 5 0 0 0 - - -;
+#X floatatom 429 346 5 0 0 0 - - -;
+#X text 334 328 packet type;
+#X text 361 346 packet ID;
+#X symbolatom 450 363 7 0 0 0 - - -;
+#X text 407 362 addr16;
+#X floatatom 513 415 5 0 0 0 - - -;
+#X floatatom 492 398 5 0 0 0 - - -;
+#X floatatom 471 381 5 0 0 0 - - -;
+#X text 340 379 transmit retry count;
+#X text 391 396 delivery status;
+#X text 407 413 discovery status;
+#X symbolatom 226 491 32 0 0 0 - - -;
+#X symbolatom 244 509 7 0 0 0 - - -;
+#X symbolatom 297 562 7 0 0 0 - - -;
+#X symbolatom 315 580 7 0 0 0 - - -;
+#X obj 174 419 unpack 0 s s s s 0 0 s s;
+#X floatatom 262 527 5 0 0 0 - - -;
+#X floatatom 279 544 5 0 0 0 - - -;
+#X text 129 490 Node Identifier;
+#X text 197 508 parent;
+#X text 187 524 device type;
+#X text 199 542 source event;
+#X text 242 560 profile;
+#X text 237 578 manufacturer;
+#X obj 408 308 unpack 0 0 s 0 0 0;
+#X obj 596 303 route ZigBee_Receive_Packet;
+#X obj 1101 337 print someotherpacket;
+#X symbolatom 665 400 7 0 0 0 - - -;
+#X symbolatom 642 382 17 0 0 0 - - -;
+#X text 619 399 addr16;
+#X text 598 380 addr64;
+#X floatatom 596 346 5 0 0 0 - - -;
+#X text 522 346 packet type;
+#X floatatom 689 418 5 0 0 0 - - -;
+#X text 590 416 receive options;
+#X obj 689 468 tgl 15 0 empty empty acknowledged 17 7 0 10 -4034 -1
-1 0 1;
-#X obj 729 515 tgl 15 0 empty empty broadcast 17 7 0 10 -4034 -1 -1
+#X obj 729 488 tgl 15 0 empty empty broadcast 17 7 0 10 -4034 -1 -1
0 1;
-#X obj 769 535 tgl 15 0 empty empty encrypted 17 7 0 10 -4034 -1 -1
+#X obj 769 508 tgl 15 0 empty empty encrypted 17 7 0 10 -4034 -1 -1
0 1;
-#X obj 809 555 tgl 15 0 empty empty from_end_device 17 7 0 10 -4034
+#X obj 809 528 tgl 15 0 empty empty from_end_device 17 7 0 10 -4034
-1 -1 0 1;
-#X obj 689 459 & 1;
-#X obj 729 459 & 2;
-#X obj 769 459 & 32;
-#X obj 809 459 & 64;
-#X obj 596 351 unpack 0 0 s s 0;
-#X floatatom 619 390 5 0 0 0 - - -;
-#X text 545 390 data length;
-#X obj 491 464 select 0 2 21 33 34 35 36 37;
-#X symbolatom 491 661 32 0 0 0 - - -;
-#X msg 491 488 set success;
-#X msg 656 646 set unknown;
-#X msg 511 507 set CCA_failurs;
-#X msg 552 547 set Network_ACK_Failure;
-#X msg 532 527 set Invalid_Destination_Endpoint;
-#X msg 573 567 set Not_Joined_To_Network;
-#X msg 592 587 set Self-Addresed;
-#X msg 614 606 set Address_Not_Found;
-#X msg 635 626 set Route_Not_Found;
-#X text 388 660 delivery status:;
-#X symbolatom 512 797 32 0 0 0 - - -;
-#X msg 593 782 set unknown;
-#X obj 512 685 select 0 1 2 3;
-#X msg 512 706 set No_Discovery_Overhead;
-#X msg 532 725 set Address_Discovery;
-#X msg 553 744 set Route_Discovery;
-#X msg 573 763 set Address_And_Route_Discovery;
-#X text 408 795 discovery status:;
-#X obj 856 347 route Remote_Command_Response;
-#X floatatom 856 400 5 0 0 0 - - -;
-#X floatatom 875 422 5 0 0 0 - - -;
-#X text 782 400 packet type;
-#X text 807 422 packet ID;
-#X floatatom 973 529 5 0 0 0 - - -;
-#X symbolatom 895 462 20 0 0 0 - - -;
-#X text 851 460 addr64;
-#X symbolatom 914 443 7 0 0 0 - - -;
-#X symbolatom 934 484 7 0 0 0 - - -;
-#X text 888 483 command;
-#X floatatom 953 506 5 0 0 0 - - -;
-#X text 903 530 data length;
-#X text 911 506 status;
-#X obj 856 374 unpack 0 0 s s s 0 0;
-#X obj 237 417 print AT_response;
-#X text 868 442 addr16;
-#X obj 1021 410 select 0 1 2 3 4;
-#X symbolatom 1021 610 32 0 0 0 - - -;
-#X text 978 609 delivery status:;
-#X msg 1021 437 set OK;
-#X msg 1039 457 set ERROR;
-#X msg 1058 476 set Invalid_Command;
-#X msg 1077 496 set Invalid_Parameter;
-#X msg 1095 519 set Transmission_Failed;
-#X obj 174 392 route ND SL;
-#X obj 51 559 print SL;
-#X obj 330 268 print unpackxbee_data;
-#X obj 399 248 print unpackxbee_status;
+#X obj 689 432 & 1;
+#X obj 729 432 & 2;
+#X obj 769 432 & 32;
+#X obj 809 432 & 64;
+#X obj 596 324 unpack 0 0 s s 0;
+#X floatatom 619 363 5 0 0 0 - - -;
+#X text 545 363 data length;
+#X obj 491 437 select 0 2 21 33 34 35 36 37;
+#X symbolatom 491 634 32 0 0 0 - - -;
+#X msg 491 461 set success;
+#X msg 656 619 set unknown;
+#X msg 511 480 set CCA_failurs;
+#X msg 552 520 set Network_ACK_Failure;
+#X msg 532 500 set Invalid_Destination_Endpoint;
+#X msg 573 540 set Not_Joined_To_Network;
+#X msg 592 560 set Self-Addresed;
+#X msg 614 579 set Address_Not_Found;
+#X msg 635 599 set Route_Not_Found;
+#X text 388 633 delivery status:;
+#X symbolatom 512 770 32 0 0 0 - - -;
+#X msg 593 755 set unknown;
+#X obj 512 658 select 0 1 2 3;
+#X msg 512 679 set No_Discovery_Overhead;
+#X msg 532 698 set Address_Discovery;
+#X msg 553 717 set Route_Discovery;
+#X msg 573 736 set Address_And_Route_Discovery;
+#X text 408 768 discovery status:;
+#X obj 856 320 route Remote_Command_Response;
+#X floatatom 856 373 5 0 0 0 - - -;
+#X floatatom 875 395 5 0 0 0 - - -;
+#X text 782 373 packet type;
+#X text 807 395 packet ID;
+#X floatatom 973 502 5 0 0 0 - - -;
+#X symbolatom 895 435 20 0 0 0 - - -;
+#X text 851 433 addr64;
+#X symbolatom 914 416 7 0 0 0 - - -;
+#X symbolatom 934 457 7 0 0 0 - - -;
+#X text 888 456 command;
+#X floatatom 953 479 5 0 0 0 - - -;
+#X text 903 503 data length;
+#X text 911 479 status;
+#X obj 856 347 unpack 0 0 s s s 0 0;
+#X obj 237 390 print AT_response;
+#X text 868 415 addr16;
+#X obj 1021 383 select 0 1 2 3 4;
+#X symbolatom 1021 583 32 0 0 0 - - -;
+#X text 978 582 delivery status:;
+#X msg 1021 410 set OK;
+#X msg 1039 430 set ERROR;
+#X msg 1058 449 set Invalid_Command;
+#X msg 1077 469 set Invalid_Parameter;
+#X msg 1095 492 set Transmission_Failed;
+#X obj 174 365 route ND SL;
+#X obj 51 532 print SL;
+#X obj 330 216 print unpackxbee_data;
+#X obj 462 187 print unpackxbee_status;
+#X text 645 195 Martin Peach 2013_03_13;
+#N canvas 4 77 541 300 sample_frame 0;
+#X obj 32 23 inlet;
+#X obj 32 76 route D0 D1 D2 D3 D4 D5 D10 D11 D12 A0 A1 A2 A3 A7;
+#X obj 26 106 cnv 15 300 50 empty empty Digital_Inputs 20 12 0 14 -204786
+-13381 0;
+#X obj 26 157 cnv 15 400 90 empty empty Analog_Inputs 20 12 0 14 -232576
+-45076 0;
+#X obj 29 190 nbx 5 14 -1e+37 1e+37 0 0 empty empty A0 40 8 0 10 -204800
+-13330 -159808 0 256;
+#X obj 89 190 nbx 5 14 -1e+37 1e+37 0 0 empty empty A1 40 8 0 10 -204800
+-13330 -159808 0 256;
+#X obj 149 190 nbx 5 14 -1e+37 1e+37 0 0 empty empty A2 40 8 0 10 -204800
+-13330 -159808 0 256;
+#X obj 209 190 nbx 5 14 -1e+37 1e+37 0 0 empty empty A3 40 8 0 10 -204800
+-13330 -159808 0 256;
+#X obj 269 190 nbx 5 14 -1e+37 1e+37 0 0 empty empty V+ 40 8 0 10 -204800
+-13330 -159808 0 256;
+#X obj 32 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D0 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 72 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D1 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 102 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D2 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 132 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D3 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 162 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D4 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 192 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty D5 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 222 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty P0 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 252 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty P1 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 282 132 nbx 2 14 -1e+37 1e+37 0 0 empty empty P2 8 20 0 10 -4034
+-1 -258113 0 256;
+#X obj 29 229 nbx 5 14 -1e+37 1e+37 0 0 empty empty A0_mV 40 8 0 10
+-204800 -13330 -159808 0 256;
+#X obj 29 209 * 1.17302;
+#X obj 109 229 nbx 5 14 -1e+37 1e+37 0 0 empty empty A1_mV 40 8 0 10
+-204800 -13330 -159808 0 256;
+#X obj 109 209 * 1.17302;
+#X obj 189 229 nbx 5 14 -1e+37 1e+37 0 0 empty empty A2_mV 40 8 0 10
+-204800 -13330 -159808 0 256;
+#X obj 189 209 * 1.17302;
+#X obj 269 229 nbx 5 14 -1e+37 1e+37 0 0 empty empty A3_mV 40 8 0 10
+-204800 -13330 -159808 0 256;
+#X obj 269 209 * 1.17302;
+#X obj 349 229 nbx 5 14 -1e+37 1e+37 0 0 empty empty V+_mV 40 8 0 10
+-204800 -13330 -159808 0 256;
+#X obj 349 209 * 1.17302;
+#X obj 32 48 list trim;
+#X obj 329 100 print more_sample_frame_stuff;
+#X connect 0 0 28 0;
+#X connect 1 0 9 0;
+#X connect 1 1 10 0;
+#X connect 1 2 11 0;
+#X connect 1 3 12 0;
+#X connect 1 4 13 0;
+#X connect 1 5 14 0;
+#X connect 1 6 15 0;
+#X connect 1 7 16 0;
+#X connect 1 8 17 0;
+#X connect 1 9 4 0;
+#X connect 1 9 19 0;
+#X connect 1 10 5 0;
+#X connect 1 10 21 0;
+#X connect 1 11 6 0;
+#X connect 1 11 23 0;
+#X connect 1 12 7 0;
+#X connect 1 12 25 0;
+#X connect 1 13 8 0;
+#X connect 1 13 27 0;
+#X connect 1 14 29 0;
+#X connect 19 0 18 0;
+#X connect 21 0 20 0;
+#X connect 23 0 22 0;
+#X connect 25 0 24 0;
+#X connect 27 0 26 0;
+#X connect 28 0 1 0;
+#X restore 364 197 pd sample_frame;
#X connect 2 0 4 0;
#X connect 3 0 2 0;
-#X connect 4 0 123 0;
-#X connect 4 1 13 0;
-#X connect 4 1 124 0;
+#X connect 4 0 122 0;
+#X connect 4 1 125 0;
+#X connect 4 2 123 0;
+#X connect 4 2 12 0;
#X connect 7 0 4 0;
-#X connect 13 0 14 0;
-#X connect 13 1 28 0;
-#X connect 14 0 18 0;
-#X connect 14 1 15 0;
-#X connect 14 2 12 0;
-#X connect 15 0 121 0;
-#X connect 18 0 19 0;
-#X connect 18 1 20 0;
-#X connect 18 2 21 0;
-#X connect 28 0 54 0;
-#X connect 28 1 55 0;
-#X connect 45 0 11 0;
-#X connect 45 1 16 0;
-#X connect 45 2 17 0;
-#X connect 45 3 41 0;
-#X connect 45 4 42 0;
-#X connect 45 5 46 0;
-#X connect 45 6 47 0;
-#X connect 45 7 43 0;
-#X connect 45 8 44 0;
-#X connect 54 0 29 0;
-#X connect 54 1 30 0;
-#X connect 54 2 33 0;
-#X connect 54 3 37 0;
-#X connect 54 4 36 0;
-#X connect 54 4 76 0;
-#X connect 54 5 35 0;
-#X connect 54 5 90 0;
-#X connect 55 0 73 0;
-#X connect 55 1 96 0;
-#X connect 63 0 69 0;
-#X connect 63 0 70 0;
-#X connect 63 0 71 0;
-#X connect 63 0 72 0;
+#X connect 12 0 13 0;
+#X connect 12 1 27 0;
+#X connect 13 0 17 0;
+#X connect 13 1 14 0;
+#X connect 13 2 11 0;
+#X connect 14 0 120 0;
+#X connect 17 0 18 0;
+#X connect 17 1 19 0;
+#X connect 17 2 20 0;
+#X connect 27 0 53 0;
+#X connect 27 1 54 0;
+#X connect 44 0 10 0;
+#X connect 44 1 15 0;
+#X connect 44 2 16 0;
+#X connect 44 3 40 0;
+#X connect 44 4 41 0;
+#X connect 44 5 45 0;
+#X connect 44 6 46 0;
+#X connect 44 7 42 0;
+#X connect 44 8 43 0;
+#X connect 53 0 28 0;
+#X connect 53 1 29 0;
+#X connect 53 2 32 0;
+#X connect 53 3 36 0;
+#X connect 53 4 35 0;
+#X connect 53 4 75 0;
+#X connect 53 5 34 0;
+#X connect 53 5 89 0;
+#X connect 54 0 72 0;
+#X connect 54 1 95 0;
+#X connect 62 0 68 0;
+#X connect 62 0 69 0;
+#X connect 62 0 70 0;
+#X connect 62 0 71 0;
+#X connect 68 0 64 0;
#X connect 69 0 65 0;
#X connect 70 0 66 0;
#X connect 71 0 67 0;
-#X connect 72 0 68 0;
-#X connect 73 0 61 0;
-#X connect 73 1 74 0;
-#X connect 73 2 58 0;
-#X connect 73 3 57 0;
-#X connect 73 4 63 0;
-#X connect 76 0 78 0;
-#X connect 76 1 80 0;
-#X connect 76 2 82 0;
-#X connect 76 3 81 0;
-#X connect 76 4 83 0;
-#X connect 76 5 84 0;
-#X connect 76 6 85 0;
-#X connect 76 7 86 0;
-#X connect 76 8 79 0;
-#X connect 78 0 77 0;
-#X connect 79 0 77 0;
-#X connect 80 0 77 0;
-#X connect 81 0 77 0;
-#X connect 82 0 77 0;
-#X connect 83 0 77 0;
-#X connect 84 0 77 0;
-#X connect 85 0 77 0;
-#X connect 86 0 77 0;
-#X connect 89 0 88 0;
-#X connect 90 0 91 0;
-#X connect 90 1 92 0;
-#X connect 90 2 93 0;
-#X connect 90 3 94 0;
-#X connect 90 4 89 0;
-#X connect 91 0 88 0;
-#X connect 92 0 88 0;
-#X connect 93 0 88 0;
-#X connect 94 0 88 0;
-#X connect 96 0 110 0;
-#X connect 96 1 56 0;
-#X connect 110 0 97 0;
-#X connect 110 1 98 0;
-#X connect 110 2 102 0;
-#X connect 110 3 104 0;
-#X connect 110 4 105 0;
-#X connect 110 5 107 0;
-#X connect 110 5 113 0;
-#X connect 110 6 101 0;
-#X connect 113 0 116 0;
-#X connect 113 1 117 0;
-#X connect 113 2 118 0;
-#X connect 113 3 119 0;
-#X connect 113 4 120 0;
-#X connect 116 0 114 0;
-#X connect 117 0 114 0;
-#X connect 118 0 114 0;
-#X connect 119 0 114 0;
-#X connect 120 0 114 0;
-#X connect 121 0 45 0;
-#X connect 121 1 122 0;
-#X connect 121 2 111 0;
+#X connect 72 0 60 0;
+#X connect 72 1 73 0;
+#X connect 72 2 57 0;
+#X connect 72 3 56 0;
+#X connect 72 4 62 0;
+#X connect 75 0 77 0;
+#X connect 75 1 79 0;
+#X connect 75 2 81 0;
+#X connect 75 3 80 0;
+#X connect 75 4 82 0;
+#X connect 75 5 83 0;
+#X connect 75 6 84 0;
+#X connect 75 7 85 0;
+#X connect 75 8 78 0;
+#X connect 77 0 76 0;
+#X connect 78 0 76 0;
+#X connect 79 0 76 0;
+#X connect 80 0 76 0;
+#X connect 81 0 76 0;
+#X connect 82 0 76 0;
+#X connect 83 0 76 0;
+#X connect 84 0 76 0;
+#X connect 85 0 76 0;
+#X connect 88 0 87 0;
+#X connect 89 0 90 0;
+#X connect 89 1 91 0;
+#X connect 89 2 92 0;
+#X connect 89 3 93 0;
+#X connect 89 4 88 0;
+#X connect 90 0 87 0;
+#X connect 91 0 87 0;
+#X connect 92 0 87 0;
+#X connect 93 0 87 0;
+#X connect 95 0 109 0;
+#X connect 95 1 55 0;
+#X connect 109 0 96 0;
+#X connect 109 1 97 0;
+#X connect 109 2 101 0;
+#X connect 109 3 103 0;
+#X connect 109 4 104 0;
+#X connect 109 5 106 0;
+#X connect 109 5 112 0;
+#X connect 109 6 100 0;
+#X connect 112 0 115 0;
+#X connect 112 1 116 0;
+#X connect 112 2 117 0;
+#X connect 112 3 118 0;
+#X connect 112 4 119 0;
+#X connect 115 0 113 0;
+#X connect 116 0 113 0;
+#X connect 117 0 113 0;
+#X connect 118 0 113 0;
+#X connect 119 0 113 0;
+#X connect 120 0 44 0;
+#X connect 120 1 121 0;
+#X connect 120 2 110 0;