#N canvas 207 23 1070 714 12;
#X obj 529 248 noteout;
#X obj 675 338 pgmout;
#X obj 560 338 bendout;
#X floatatom 26 447 5 0 0 0 - - - 0;
#X text 31 379 pitch bend, f 5;
#X obj 675 257 ctlout;
#X obj 779 338 touchout;
#X obj 895 338 polytouchout;
#X obj 69 559 midiin;
#X obj 411 557 sysexin;
#X obj 794 631 midiout;
#X obj 241 567 midirealtimein;
#X obj 241 419 touchin;
#X obj 340 399 polytouchin;
#X obj 26 167 notein;
#X text 79 219 velocity;
#X text 90 193 channel;
#X obj 280 159 ctlin;
#X text 311 247 value;
#X text 440 427 channel;
#X text 235 379 channel aftertouch, f 10;
#X text 341 358 polyphonic aftertouch, f 10;
#X text 372 473 aftertouch value;
#X floatatom 261 330 0 0 0 0 - - - 0;
#X text 289 331 value;
#X text 76 166 (omni);
#X obj 166 192 notein 1;
#X text 157 157 (channel 1);
#X text 324 158 (all controllers \, omni);
#X floatatom 65 324 0 0 0 0 - - - 0;
#X text 22 325 value;
#X obj 65 298 ctlin 4;
#X floatatom 111 324 0 0 0 0 - - - 0;
#X text 507 192 note;
#X text 886 272 touch;
#X text 931 281 note;
#X text 121 297 (controller 4);
#X text 707 178 value;
#X text 740 231 channel;
#X obj 848 230 ctlout 7;
#X text 24 614 raw MIDI byte by byte (except real-time messages), f 27;
#X text 236 621 real-time messages;
#X text 32 516 These three below are always omni \, don't take arguments and output the port number on the right outlet:;
#X text 725 205 controller #;
#X text 327 217 controller #;
#X text 61 241 note;
#X text 159 243 note;
#X text 200 243 velocity;
#X text 409 450 note;
#X obj 26 419 bendin, f 7;
#X text 81 418 *;
#X text 615 337 *;
#X text 612 217 channel;
#X text 548 191 velocity;
#X text 391 608 system exclusive messages only \, byte by byte, f 16;
#X text 886 288 value;
#X text 339 185 channel/port;
#X text 165 171 (port 1);
#X text 139 326 channel/port;
#X obj 261 300 ctlin 7 17;
#X text 339 294 (controller 7 \, channel 1/port 2), f 17;
#X text 15 8 MIDI INPUTS: Inputs are omni by default \, an optional argument sets the channel/port and removes the rightmost outlet (which outputs this information). For [ctlin] \, a first optional argument sets controller number and suppresses its corresponding outlet \, and a second argument sets the channel and also suppresses its corresponding outlet., f 70;
#X text 549 71 MIDI OUTPUTS: Outputs are set to channel 1 / port 1 by default \, but they also take a channel/port argument (where channels from 17 represent port 2 \, from 33 port 3 and so on). The [ctlout] object takes control and channel/port arguments. Inlets are not suppressed by arguments and change the parameters., f 67;
#X text 808 163 (controller 7 \, channel/port 1), f 15;
#X obj 959 230 ctlout 3 38;
#X text 15 89 Port number is encoded as the channel number. Channels 1 to 16 are for port 1 \, channels 17 to 32 is the same as channels 1 to 16 for port 2 \, channels 33 to 48 represents channels 1 to 16 in port 3 \, and so on..., f 70;
#X text 184 418 **;
#X text 724 337 **;
#X text 539 437 ** Program change values in [pgmin] and [pgmout] are indexed from 1 \, which means that the possible values are from 1 to 128 (not 0 to 127)!, f 70;
#X text 539 387 * Known bug: [bendin] and [bendout] are inconsistent ([bendin] outputs values from 0 to 16383 and [bendout] takes values from -8192 to 8191) - this won't change., f 70;
#X text 839 682 updated for Pd version 0.48-2;
#X text 938 163 (controller 3 \, channel 6/port 3), f 17;
#X floatatom 26 241 4 0 127 0 - - - 0;
#X floatatom 588 217 0 1 64 0 - - - 0;
#X floatatom 560 312 5 0 0 0 - - - 0;
#X floatatom 45 218 4 0 127 0 - - - 0;
#X floatatom 166 221 4 0 127 0 - - - 0;
#X floatatom 280 246 4 0 127 0 - - - 0;
#X floatatom 296 217 4 0 127 0 - - - 0;
#X floatatom 377 449 4 0 127 0 - - - 0;
#X floatatom 340 471 4 0 127 0 - - - 0;
#X floatatom 127 447 4 0 127 0 - - - 0;
#X floatatom 241 447 4 0 127 0 - - - 0;
#X floatatom 69 588 4 0 127 0 - - - 0;
#X floatatom 241 596 4 0 127 0 - - - 0;
#X floatatom 108 588 4 0 127 0 - - - 0;
#X floatatom 411 586 4 0 127 0 - - - 0;
#X floatatom 457 586 4 0 127 0 - - - 0;
#X floatatom 336 596 4 0 127 0 - - - 0;
#X floatatom 959 203 4 0 127 0 - - - 0;
#X floatatom 848 203 4 0 127 0 - - - 0;
#X floatatom 694 204 4 0 127 0 - - - 0;
#X floatatom 675 177 4 0 127 0 - - - 0;
#X floatatom 552 217 4 0 127 0 - - - 0;
#X floatatom 514 217 4 0 127 0 - - - 0;
#X floatatom 675 312 4 0 127 0 - - - 0;
#X floatatom 779 312 4 0 127 0 - - - 0;
#X floatatom 895 312 4 0 127 0 - - - 0;
#X floatatom 935 312 4 0 127 0 - - - 0;
#X floatatom 714 230 0 1 64 0 - - - 0;
#X floatatom 312 184 0 1 64 0 - - - 0;
#X floatatom 219 220 0 1 64 0 - - - 0;
#X floatatom 65 193 0 1 64 0 - - - 0;
#X floatatom 72 447 0 1 64 0 - - - 0;
#X floatatom 287 447 0 1 64 0 - - - 0;
#X floatatom 414 427 0 1 64 0 - - - 0;
#X text 561 12 MIDI Input/Output objects;
#X obj 127 419 pgmin 2;
#X text 110 377 program change (channel 2), f 14;
#X text 73 468 ch;
#X text 289 467 ch;
#X text 20 468 value;
#X text 159 448 value;
#X text 233 467 value;
#X obj 529 40 cnv 1 540 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X obj 7 671 cnv 1 1055 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#N canvas 502 23 566 293 reference 0;
#N canvas 686 71 588 563 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 199 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 253 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X obj 39 16 notein;
#X text 135 58 NONE;
#X text 93 15 - MIDI note input;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 112 float - MIDI note pitch., f 27;
#X text 146 140 float - MIDI note velocity.;
#X obj 18 161 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 166 float - MIDI channel (if no argument is given).;
#X obj 18 336 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 453 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 489 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 525 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 154 462 NONE;
#X obj 18 395 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 367 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 372 float - MIDI note pitch., f 27;
#X text 146 400 float - MIDI note velocity.;
#X obj 18 421 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 29 306 noteout;
#X text 93 305 - MIDI note output;
#X text 146 426 float - MIDI channel.;
#X text 55 224 1) float - sets MIDI channel and suppresses 3rd outlet (default OMNI)., f 70;
#X text 141 498 1) float - sets MIDI channel/port (default 1).;
#X restore 383 19 pd reference;
#X obj 230 19 notein;
#X text 350 20 ==>;
#X obj 286 19 noteout;
#N canvas 692 23 584 587 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 196 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 270 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 161 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 168 float - MIDI channel (if no argument is given).;
#X obj 18 356 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 473 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 509 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 567 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 174 482 NONE;
#X obj 39 16 ctlin;
#X text 89 15 - MIDI control input;
#X text 146 112 float - control value., f 27;
#X obj 29 326 ctlout;
#X text 83 325 - MIDI control output;
#X text 146 140 float - MIDI control number (if no argument is given).;
#X obj 17 415 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 387 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 441 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X text 165 392 float - control value., f 27;
#X text 165 420 float - MIDI control number.;
#X text 139 519 1) float - sets control number (default 0)., f 46;
#X text 55 221 1) float - sets control number and suppresses 2nd outlet (default ALL)., f 71;
#X text 55 241 2) float - sets MIDI channel and suppresses 3rd outlet (default OMNI)., f 70;
#X text 165 448 float - MIDI channel.;
#X text 140 539 2) float - sets MIDI channel/port (default 1).;
#X restore 383 59 pd reference;
#X text 350 60 ==>;
#X obj 242 59 ctlin;
#X obj 292 59 ctlout;
#N canvas 706 82 584 551 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 172 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 226 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 144 float - MIDI channel (if no argument is given).;
#X obj 18 356 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 450 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 486 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 527 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 174 459 NONE;
#X obj 17 415 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 387 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 155 392 float - control value., f 27;
#X obj 39 16 bendin;
#X text 92 15 - MIDI pitch bend input.;
#X text 55 197 1) float - sets MIDI channel and suppresses 2nd outlet (default OMNI)., f 70;
#X text 146 112 float - pitch bend value., f 27;
#X obj 29 326 bendout;
#X text 155 420 float - MIDI channel number.;
#X text 93 325 - MIDI pitch bend output;
#X text 130 497 1) float - sets MIDI channel/port (default 1).;
#X restore 383 95 pd reference;
#X text 350 96 ==>;
#X obj 228 95 bendin;
#X obj 284 95 bendout;
#N canvas 706 82 584 554 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 172 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 226 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 144 float - MIDI channel (if no argument is given).;
#X obj 18 356 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 450 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 486 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 527 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 174 459 NONE;
#X obj 17 415 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 387 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 55 197 1) float - sets MIDI channel and suppresses 2nd outlet (default OMNI)., f 71;
#X text 155 420 float - MIDI channel number.;
#X obj 39 16 pgmin;
#X obj 29 326 pgmout;
#X text 93 325 - MIDI program output;
#X text 92 15 - MIDI program input.;
#X text 130 497 1) float - sets MIDI channel/port (default 1).;
#X text 146 112 float - program value (from 1 to 128).;
#X text 155 392 float - program value (from 1 to 128).;
#X restore 383 131 pd reference;
#X text 350 132 ==>;
#X obj 242 131 pgmin;
#X obj 291 131 pgmout;
#N canvas 706 82 584 561 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 172 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 226 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 144 float - MIDI channel (if no argument is given).;
#X obj 18 356 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 450 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 486 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 527 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 174 459 NONE;
#X obj 17 415 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 387 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X text 55 197 1) float - sets MIDI channel and suppresses 2nd outlet (default OMNI)., f 70;
#X text 155 420 float - MIDI channel number.;
#X obj 39 16 touchin;
#X text 104 16 - MIDI channel aftertouch input.;
#X text 146 112 float - channel aftertouch value.;
#X obj 29 326 touchout;
#X text 93 325 - MIDI channel aftertouch output.;
#X text 155 392 float - channel aftertouch value.;
#X text 130 497 1) float - sets MIDI channel/port (default 1).;
#X restore 383 168 pd reference;
#X text 350 169 ==>;
#X obj 217 168 touchin;
#X obj 277 168 touchout;
#N canvas 666 100 588 554 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 196 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 250 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 135 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 161 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 166 float - MIDI channel (if no argument is given).;
#X obj 18 336 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 453 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 489 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 525 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 154 462 NONE;
#X obj 18 395 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 367 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 421 cnv 1 550 1 empty empty 3rd: 8 12 0 13 #7c7c7c #000000 0;
#X text 146 426 float - MIDI channel.;
#X text 55 221 1) float - sets MIDI channel and suppresses 3rd outlet (default OMNI)., f 70;
#X obj 39 16 polytouchin;
#X text 133 16 - MIDI polyphonic aftertouch input.;
#X obj 29 306 polytouchout;
#X text 131 305 - MIDI polyphonic aftertouch output.;
#X text 146 112 float - aftertouch value., f 27;
#X text 146 140 float - MIDI note pitch.;
#X text 146 372 float - aftertouch value., f 27;
#X text 146 400 float - MIDI note pitch.;
#X text 141 498 1) float - sets MIDI channel/port (default 1).;
#X restore 383 209 pd reference;
#X text 350 210 ==>;
#X obj 160 209 polytouchin;
#X obj 250 209 polytouchout;
#X obj 64 247 midiin;
#X obj 226 247 sysexin;
#X obj 118 247 midirealtimein;
#X obj 284 247 midiout;
#N canvas 658 145 583 559 reference 0;
#X obj 18 46 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 83 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 199 cnv 2 550 2 empty empty ARGUMENTS: 8 12 0 13 #202020 #000000 0;
#X obj 17 233 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 135 58 NONE;
#X obj 18 162 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 107 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 18 336 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 18 450 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 18 486 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 17 523 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 174 459 NONE;
#X obj 17 415 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 17 367 cnv 1 550 1 empty empty 1st: 8 12 0 13 #7c7c7c #000000 0;
#X obj 33 12 midiin;
#X obj 195 12 sysexin;
#X obj 87 12 midirealtimein;
#X text 156 208 none;
#X text 146 171 float - port number.;
#X text 70 116 float -;
#X obj 29 306 midiout;
#X text 259 13 - raw \, realtime and sysex input.;
#X text 155 420 float - port number.;
#X text 174 494 NONE;
#X text 155 372 float - raw MIDI stream.;
#X text 162 392 list - MIDI packets.;
#X text 87 305 - raw MIDI output (including real time and sysex).;
#X text 128 117 midiin: raw MIDI (except real-time messages) \, midirealtimein: real-time messages \, sysexin: system exclusive messages., f 61;
#X restore 383 246 pd reference;
#X text 350 247 ==>;
#X restore 856 9 pd reference;
#X text 954 10 <= click;
#X obj 529 4 cnv 1 1 35 empty empty empty 8 12 0 13 #000000 #000000 0;
#X floatatom 794 571 5 0 0 0 - - - 0;
#X text 563 564 In order to use MIDI Input or output objects \, be sure to set MIDI devices in:, f 29;
#X text 593 615 Preferences --> MIDI;
#X msg 794 542 144 \, 68 \, 120;
#X msg 812 599 128 68 0;
#X text 893 542 note on as a stream of raw MIDI., f 19;
#X text 881 592 note off as a MIDI packet list, f 18;
#X text 37 647 (sysex supported);
#X text 540 478 Raw MIDI output is provided by [midiout]. It deals with a stream of floats or MIDI packet lists. It doesn't take arguments and the 2nd inlet sets port number. You can use [midiout] to send raw real-time and sysex messages as well., f 70;
#X connect 8 0 83 0;
#X connect 8 1 85 0;
#X connect 9 0 86 0;
#X connect 9 1 87 0;
#X connect 11 0 84 0;
#X connect 11 1 88 0;
#X connect 12 0 82 0;
#X connect 12 1 104 0;
#X connect 13 0 80 0;
#X connect 13 1 79 0;
#X connect 13 2 105 0;
#X connect 14 0 72 0;
#X connect 14 1 75 0;
#X connect 14 2 102 0;
#X connect 17 0 77 0;
#X connect 17 1 78 0;
#X connect 17 2 100 0;
#X connect 26 0 76 0;
#X connect 26 1 101 0;
#X connect 31 0 29 0;
#X connect 31 1 32 0;
#X connect 49 0 3 0;
#X connect 49 1 103 0;
#X connect 59 0 23 0;
#X connect 73 0 0 2;
#X connect 74 0 2 0;
#X connect 89 0 64 0;
#X connect 90 0 39 0;
#X connect 91 0 5 1;
#X connect 92 0 5 0;
#X connect 93 0 0 1;
#X connect 94 0 0 0;
#X connect 95 0 1 0;
#X connect 96 0 6 0;
#X connect 97 0 7 0;
#X connect 98 0 7 1;
#X connect 99 0 5 2;
#X connect 107 0 81 0;
#X connect 119 0 10 0;
#X connect 122 0 119 0;
#X connect 123 0 10 0;
