view June/freqCalcCylD5.pd @ 199:2ded41e29e57

Projection matrix now calculated using control signals rather than audio. This makes sense as it was eating too much processing power for something that doesn't chage during the sound effect.
author Rod Selfridge <r.selfridge@qmul.ac.uk>
date Fri, 11 Mar 2016 20:51:21 +0000
parents c21ae30cfdbb
children
line wrap: on
line source
#N canvas 1449 -75 1649 836 10;
#X text 798 -33 Mass Density of Air;
#X text 107 282 Frequency (Hz);
#X obj 875 415 throw~ l;
#X obj 902 396 throw~ r;
#X obj 890 269 osc~;
#X obj 920 -32 *~ 1.225;
#X obj 920 43 /~ 1.81e-05;
#X obj 920 -2 *~ 1;
#X obj 890 218 /~ 1;
#X floatatom 201 262 10 0 0 0 - - -;
#X obj 905 86 /~;
#X obj 890 194 *~;
#X obj 890 243 clip~ 0 20000;
#X obj 212 -91 inlet;
#X text 761 36 Reynolds Number;
#X text 774 210 Strouhal Number;
#X obj 373 -93 inlet;
#X obj 890 299 *~;
#X text 950 23 Viscosity;
#X obj 654 220 *~ 2;
#X obj 654 247 osc~;
#X obj 654 269 *~;
#X obj 875 328 +~;
#X obj 212 -67 s \$0-diameter;
#X obj 981 -33 r \$0-diameter;
#X obj 970 167 r \$0-diameter;
#X obj 129 -29 s~ \$0-windSpeed;
#X obj 318 40 r~ \$0-windSpeed;
#X obj 969 136 r~ \$0-windSpeed;
#X obj 920 -60 r~ \$0-windSpeed;
#X obj 825 193 s~ \$0_str;
#X obj 308 19 r~ \$0_str;
#X obj 687 247 r~ \$0_dragDiGain;
#X obj 805 269 s~ \$0-myFreq;
#X obj 654 199 r~ \$0-myFreq;
#X obj 928 269 r~ \$0_liftDiGain;
#X obj 129 -71 sig~;
#X obj 129 -49 vd~ varwind;
#X obj 129 -95 inlet;
#X obj 1349 -2 r~ \$0-myFreq;
#X obj 1315 -52 noise~;
#X obj 1392 182 throw~ l;
#X obj 1419 161 throw~ r;
#X obj 1392 89 *~;
#X obj 123 84 snapshot~;
#X obj 123 59 metro 100;
#X obj 123 37 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 123 110 10 0 0 0 - - -;
#X obj 123 11 loadbang;
#X obj 49 59 r~ \$0-myRey;
#X obj 933 67 s~ \$0-myRey;
#X obj 1530 -1 snapshot~;
#X floatatom 1530 25 10 0 0 0 - - -;
#X obj 1530 -74 loadbang;
#X obj 1530 -49 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
1 1;
#X obj 1441 -103 r~ \$0-myRey;
#X obj 1357 350 r~ \$0-myFreq;
#X obj 1323 279 noise~;
#X obj 1400 539 throw~ l;
#X obj 1427 516 throw~ r;
#X obj 1400 447 *~;
#X obj 1538 359 snapshot~;
#X floatatom 1538 385 10 0 0 0 - - -;
#X obj 1538 286 loadbang;
#X obj 1538 311 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
1 1;
#X obj 1449 257 r~ \$0-myRey;
#X obj 1357 376 *~ 2;
#X text 108 130 Reynolds Number;
#X obj 1315 41 vcf~ 1000 10;
#X obj 1323 401 vcf~ 1000 10;
#X obj 875 371 fcpan;
#X obj 1392 138 fcpan;
#X obj 1400 491 fcpan;
#X obj 1407 62 *~ 1;
#X obj 1415 422 *~ 1;
#X obj 1449 332 clip~ 2 400;
#X obj 1441 -28 clip~ 2 400;
#X obj 1449 281 *~ -0.003;
#X obj 1441 -79 *~ -0.003;
#X obj 1441 -54 +~ 20;
#X obj 1449 306 +~ 20;
#X obj 1530 -26 metro 10;
#X obj 1538 334 metro 10;
#X obj 373 -73 s \$0_dist;
#X obj 606 -100 inlet;
#X obj 606 -31 s \$0_thisPan;
#X obj 902 342 r \$0_thisPan;
#X obj 1419 114 r \$0_thisPan;
#X obj 1427 469 r \$0_thisPan;
#X floatatom 551 -31 8 0 0 0 - - -;
#X obj 606 -76 max 0.1;
#X obj 606 -53 min 0.9;
#X text 1451 435 Drag Dipole spectrum calculation;
#X text 1446 79 Lift Dipole spectrum calculation;
#X text 641 82 Calculates the frequency;
#X text 641 95 based on the physics of;
#X text 642 108 the object and environment;
#X obj 315 299 r~ \$0-windSpeed;
#X obj 304 276 r~ \$0_str;
#X obj 1415 399 r~ \$0_dragNoiseGain;
#X obj 1407 20 r~ \$0_liftNoiseGain;
#X obj 871 47 sig~ 1;
#X obj 905 112 sqrt~;
#X obj 905 137 *~ 1.0356;
#X obj 831 128 sig~ 0.2684;
#X obj 890 167 -~;
#X obj 124 406 snapshot~;
#X obj 124 381 metro 100;
#X obj 124 359 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 124 432 10 0 0 0 - - -;
#X obj 124 333 loadbang;
#X obj 60 382 r~ \$0_str;
#N canvas 1955 100 622 660 noiseGain 1;
#X text -21205 129 Mass Density of Air \, squared;
#X text -20857 164 Speed of Sound to power 2;
#X obj -21070 29 *~;
#X obj -21022 70 *~;
#X obj -21022 104 *~ 1;
#X obj -21022 132 *~ 1.50063;
#X obj -20859 118 *;
#X obj -20859 141 * 118033;
#X obj -21022 193 /~ 1;
#X obj -21021 422 *~ 0.27;
#X text -20859 71 Distance;
#X obj -20890 352 cos;
#X obj -20890 307 / 360;
#X floatatom -20863 403 5 0 0 0 - - -;
#X obj -20890 376 *;
#X obj -20911 435 *~ 0.27;
#X obj -20890 329 * 6.28319;
#X obj -21000 282 + 90;
#X text -20895 510 Calculates Drag Dipole gain;
#X text -21175 486 Calculates Lift Dipole gain;
#N canvas 759 125 286 289 pow8 0;
#X obj 47 67 *~;
#X obj 76 67 *~;
#X obj 76 35 inlet~;
#X obj 47 170 outlet~;
#X obj 136 173 snapshot~;
#X obj 136 148 metro 100;
#X obj 136 126 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 200 10 0 0 0 - - -;
#X obj 136 100 loadbang;
#X obj 106 67 *~;
#X obj 47 93 *~;
#X obj 47 118 *~;
#X obj 136 67 *~;
#X obj 47 144 *~;
#X connect 0 0 10 0;
#X connect 1 0 10 1;
#X connect 2 0 0 0;
#X connect 2 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 9 0;
#X connect 2 0 9 1;
#X connect 2 0 1 0;
#X connect 2 0 12 0;
#X connect 2 0 12 1;
#X connect 4 0 7 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 8 0 6 0;
#X connect 9 0 11 1;
#X connect 10 0 11 0;
#X connect 11 0 13 0;
#X connect 12 0 13 1;
#X connect 13 0 3 0;
#X connect 13 0 4 0;
#X restore -21022 32 pd pow8;
#X obj -21005 222 s~ \$0-c;
#X obj -20948 385 r~ \$0-c;
#X obj -21021 444 *~ 1;
#X obj -20911 460 *~ 0.1;
#X obj -21070 7 inlet~;
#X obj -21022 7 inlet~;
#X obj -20989 55 inlet;
#X obj -20942 229 inlet;
#X obj -20873 229 inlet;
#X obj -20859 92 inlet;
#X obj -21021 465 outlet~;
#X obj -20911 485 outlet~;
#X text -20947 211 Azimuth;
#X text -20871 210 Elevation;
#X text -20961 26 Gain proportional to windspeed to power 8 for spectrum
;
#X text -20981 74 Diameter;
#N canvas 1567 153 479 552 angleCalc 0;
#X obj 307 116 hsl 100 20 -90 90 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 5223 1;
#X text 287 77 Elevation Angle;
#X obj 236 118 / 360;
#X obj 236 140 * 6.28319;
#X obj 164 80 / 360;
#X obj 164 102 * 6.28319;
#X floatatom 49 106 5 0 0 0 - - -;
#X floatatom 304 140 5 0 0 0 - - -;
#X obj 278 443 * 360;
#X floatatom 325 494 5 0 0 0 - - -;
#X obj 278 467 / 6.28319;
#X obj 236 235 *;
#X obj 236 267 swap 1;
#X obj 236 300 -;
#X obj 236 329 sqrt;
#X obj 278 360 /;
#X obj 278 388 atan;
#X obj 278 414 * 2;
#X text 318 296 Arccos of angle;
#X obj 293 236 + 1;
#X obj 164 126 cos;
#X obj 236 171 cos;
#X obj 236 205 *;
#X obj 164 149 t f b;
#X obj 162 174 delay 9;
#X obj 278 494 outlet;
#X obj 236 90 inlet;
#X obj 164 57 inlet;
#X obj 52 80 hsl 100 20 -90 90 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 4950 1;
#X text 56 42 Azimuth Angle;
#X connect 0 0 7 0;
#X connect 2 0 3 0;
#X connect 3 0 21 0;
#X connect 4 0 5 0;
#X connect 5 0 20 0;
#X connect 8 0 10 0;
#X connect 10 0 9 0;
#X connect 10 0 25 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 12 1 13 1;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 17 0 8 0;
#X connect 19 0 15 1;
#X connect 20 0 23 0;
#X connect 21 0 22 0;
#X connect 22 0 11 0;
#X connect 22 0 11 1;
#X connect 22 0 19 0;
#X connect 23 0 22 1;
#X connect 23 1 24 0;
#X connect 24 0 22 0;
#X connect 26 0 2 0;
#X connect 26 0 0 0;
#X connect 27 0 4 0;
#X connect 27 0 28 0;
#X connect 28 0 6 0;
#X restore -20942 252 pd angleCalc;
#X obj -20951 117 inlet;
#X obj -20951 142 *;
#X obj -21022 167 *~ 1;
#X text -20953 99 Length;
#X obj -21000 305 / 360;
#X obj -21000 351 cos;
#X obj -21000 375 *;
#X obj -21000 328 * 6.28319;
#X obj -21021 397 *~ 1;
#X obj -20911 411 *~ 1;
#X connect 2 0 3 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 40 0;
#X connect 6 0 7 0;
#X connect 7 0 8 1;
#X connect 8 0 21 0;
#X connect 8 0 46 0;
#X connect 9 0 23 0;
#X connect 11 0 14 0;
#X connect 11 0 14 1;
#X connect 12 0 16 0;
#X connect 14 0 13 0;
#X connect 14 0 47 1;
#X connect 15 0 24 0;
#X connect 16 0 11 0;
#X connect 17 0 42 0;
#X connect 20 0 3 0;
#X connect 22 0 47 0;
#X connect 23 0 31 0;
#X connect 24 0 32 0;
#X connect 25 0 2 0;
#X connect 25 0 2 1;
#X connect 26 0 20 0;
#X connect 27 0 4 1;
#X connect 28 0 37 0;
#X connect 29 0 37 1;
#X connect 30 0 6 0;
#X connect 30 0 6 1;
#X connect 37 0 17 0;
#X connect 37 0 12 0;
#X connect 38 0 39 0;
#X connect 38 0 39 1;
#X connect 39 0 40 1;
#X connect 40 0 8 0;
#X connect 42 0 45 0;
#X connect 43 0 44 0;
#X connect 43 0 44 1;
#X connect 44 0 46 1;
#X connect 45 0 43 0;
#X connect 46 0 9 0;
#X connect 47 0 15 0;
#X restore 304 428 pd noiseGain;
#X obj 327 320 r \$0-diameter;
#X obj 373 404 r \$0_dist;
#X obj 361 382 r \$0_azim;
#X obj 350 361 r \$0_elev;
#X obj 304 473 s~ \$0_liftNoiseGain;
#X obj 373 451 s~ \$0_dragNoiseGain;
#N canvas 2053 -13 661 655 freqGain 0;
#X text 36 127 Mass Density of Air \, squared;
#X text 400 151 Speed of Sound to power 2;
#N canvas 759 125 286 289 pow6 0;
#X obj 47 67 *~;
#X obj 76 67 *~;
#X obj 76 35 inlet~;
#X obj 47 163 outlet~;
#X obj 136 184 snapshot~;
#X obj 136 159 metro 100;
#X obj 136 137 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X floatatom 136 211 10 0 0 0 - - -;
#X obj 216 210 outlet;
#X obj 136 111 loadbang;
#X obj 106 67 *~;
#X obj 47 93 *~;
#X obj 47 118 *~;
#X connect 0 0 11 0;
#X connect 1 0 11 1;
#X connect 2 0 0 0;
#X connect 2 0 0 1;
#X connect 2 0 1 1;
#X connect 2 0 10 0;
#X connect 2 0 10 1;
#X connect 2 0 1 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 9 0 6 0;
#X connect 10 0 12 1;
#X connect 11 0 12 0;
#X connect 12 0 4 0;
#X connect 12 0 3 0;
#X restore 219 30 pd pow6;
#X obj 173 32 *~;
#X obj 219 68 *~;
#X obj 219 102 *~ 1;
#X obj 219 130 *~ 1.50063;
#X obj 398 103 *;
#X obj 398 128 * 118033;
#X obj 219 240 /~ 1;
#X obj 219 506 *~ 0.27;
#X text 313 297 Azimuth;
#X text 389 59 Distance;
#X obj 352 456 cos;
#X obj 352 411 / 360;
#X floatatom 379 502 8 0 0 0 - - -;
#X obj 352 480 *;
#X obj 331 527 *~ 0.27;
#X obj 236 269 s~ \$0-a;
#X obj 290 477 r~ \$0-a;
#X obj 352 433 * 6.28319;
#X floatatom 363 104 5 0 0 0 - - -;
#N canvas 1694 100 479 552 angleCalc 0;
#X obj 307 116 hsl 100 20 -90 90 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 5700 1;
#X text 287 77 Elevation Angle;
#X obj 236 118 / 360;
#X obj 236 140 * 6.28319;
#X obj 164 80 / 360;
#X obj 164 102 * 6.28319;
#X floatatom 49 106 5 0 0 0 - - -;
#X floatatom 304 140 5 0 0 0 - - -;
#X obj 278 443 * 360;
#X floatatom 325 494 5 0 0 0 - - -;
#X obj 278 467 / 6.28319;
#X obj 236 235 *;
#X obj 236 267 swap 1;
#X obj 236 300 -;
#X obj 236 329 sqrt;
#X obj 278 360 /;
#X obj 278 388 atan;
#X obj 278 414 * 2;
#X text 318 296 Arccos of angle;
#X obj 293 236 + 1;
#X obj 164 126 cos;
#X obj 236 171 cos;
#X obj 236 205 *;
#X obj 164 149 t f b;
#X obj 162 174 delay 9;
#X obj 278 494 outlet;
#X obj 236 90 inlet;
#X obj 164 57 inlet;
#X obj 52 80 hsl 100 20 -90 90 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 4700 1;
#X text 56 42 Azimuth Angle;
#X connect 0 0 7 0;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 21 0;
#X connect 4 0 5 0;
#X connect 5 0 20 0;
#X connect 8 0 10 0;
#X connect 10 0 9 0;
#X connect 10 0 25 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 12 1 13 1;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 17 0 8 0;
#X connect 19 0 15 1;
#X connect 20 0 23 0;
#X connect 21 0 22 0;
#X connect 22 0 11 0;
#X connect 22 0 11 1;
#X connect 22 0 19 0;
#X connect 23 0 22 1;
#X connect 23 1 24 0;
#X connect 24 0 22 0;
#X connect 26 0 2 0;
#X connect 27 0 4 0;
#X connect 28 0 6 0;
#X connect 28 0 4 0;
#X restore 298 333 pd angleCalc;
#X text 384 296 Elevation;
#X obj 240 364 + 90;
#X text 409 534 Calculates Drag Dipole gain;
#X text 48 445 Calculates Lift Dipole gain;
#X obj 220 528 *~ 1;
#X obj 331 552 *~ 0.1;
#X obj 173 8 inlet~;
#X obj 219 7 inlet~;
#X text 256 54 Diameter;
#X obj 250 69 inlet;
#X obj 398 78 inlet;
#X obj 298 312 inlet;
#X obj 367 311 inlet;
#X obj 220 556 outlet~;
#X obj 331 577 outlet~;
#X obj 297 125 inlet;
#X obj 297 149 *;
#X obj 219 193 *~ 1;
#X text 292 106 Length;
#X obj 240 388 / 360;
#X obj 240 434 cos;
#X obj 240 458 *;
#X obj 240 411 * 6.28319;
#X obj 331 503 *~ 1;
#X obj 219 481 *~ 1;
#X floatatom 139 477 8 0 0 0 - - -;
#X connect 2 0 4 0;
#X connect 3 0 4 1;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 40 0;
#X connect 7 0 8 0;
#X connect 8 0 9 1;
#X connect 9 0 18 0;
#X connect 9 0 47 0;
#X connect 10 0 27 0;
#X connect 13 0 16 0;
#X connect 13 0 16 1;
#X connect 14 0 20 0;
#X connect 16 0 15 0;
#X connect 16 0 46 1;
#X connect 17 0 28 0;
#X connect 19 0 46 0;
#X connect 20 0 13 0;
#X connect 22 0 24 0;
#X connect 22 0 14 0;
#X connect 24 0 42 0;
#X connect 27 0 36 0;
#X connect 28 0 37 0;
#X connect 29 0 3 0;
#X connect 29 0 3 1;
#X connect 30 0 2 0;
#X connect 32 0 5 1;
#X connect 33 0 7 1;
#X connect 33 0 7 0;
#X connect 33 0 21 0;
#X connect 34 0 22 0;
#X connect 35 0 22 1;
#X connect 38 0 39 0;
#X connect 38 0 39 1;
#X connect 39 0 40 1;
#X connect 40 0 9 0;
#X connect 42 0 45 0;
#X connect 43 0 44 0;
#X connect 43 0 44 1;
#X connect 44 0 47 1;
#X connect 44 0 48 0;
#X connect 45 0 43 0;
#X connect 46 0 17 0;
#X connect 47 0 10 0;
#X restore 308 170 pd freqGain;
#X obj 442 -93 inlet;
#X obj 442 -73 s \$0_elev;
#X obj 329 61 r \$0-diameter;
#X obj 510 -95 inlet;
#X obj 510 -73 s \$0_azim;
#X obj 371 149 r \$0_dist;
#X obj 350 106 r \$0_azim;
#X obj 360 127 r \$0_elev;
#X obj 371 194 s~ \$0_dragDiGain;
#X obj 308 214 s~ \$0_liftDiGain;
#X floatatom 373 -46 5 0 0 0 - - -;
#X floatatom 443 -47 5 0 0 0 - - -;
#X floatatom 511 -51 5 0 0 0 - - -;
#X obj 72 262 outlet;
#X obj 1315 -5 hip~;
#X obj 116 235 snapshot~;
#X obj 116 188 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 116 162 loadbang;
#X obj 116 210 metro 10;
#X obj 1323 376 hip~;
#X obj 37 212 r~ \$0-myFreq;
#X obj 116 262 s \$0_contFreq;
#X obj 1336 -28 r \$0_contFreq;
#X obj 1344 300 r \$0_contFreq;
#X obj 1344 323 * 2;
#X text 112 453 Strouhal Number;
#X text 298 231 Calculates the gain of the dipole source;
#X text 295 492 Calculates the gain of the source;
#X text 502 -114 Azimuth;
#X text 611 -118 Pan;
#X text 436 -112 Elevation;
#X text 369 -112 Distance;
#X text 207 -112 Diameter;
#X text 122 -113 Wind Speed;
#X obj 304 -92 inlet;
#X floatatom 305 -48 5 0 0 0 - - -;
#X text 300 -111 Length;
#X obj 304 -70 s \$0_leng;
#X obj 338 341 r \$0_leng;
#X obj 339 84 r \$0_leng;
#X connect 4 0 17 0;
#X connect 5 0 7 0;
#X connect 6 0 10 1;
#X connect 6 0 50 0;
#X connect 7 0 6 0;
#X connect 8 0 12 0;
#X connect 10 0 102 0;
#X connect 11 0 8 0;
#X connect 12 0 4 0;
#X connect 12 0 33 0;
#X connect 13 0 23 0;
#X connect 16 0 83 0;
#X connect 16 0 130 0;
#X connect 17 0 22 1;
#X connect 19 0 20 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 70 0;
#X connect 24 0 7 1;
#X connect 25 0 8 1;
#X connect 27 0 119 1;
#X connect 28 0 11 1;
#X connect 29 0 5 0;
#X connect 31 0 119 0;
#X connect 32 0 21 1;
#X connect 34 0 19 0;
#X connect 35 0 17 1;
#X connect 36 0 37 0;
#X connect 37 0 26 0;
#X connect 38 0 36 0;
#X connect 39 0 68 1;
#X connect 40 0 134 0;
#X connect 43 0 71 0;
#X connect 44 0 47 0;
#X connect 45 0 44 0;
#X connect 46 0 45 0;
#X connect 48 0 46 0;
#X connect 49 0 44 0;
#X connect 51 0 52 0;
#X connect 51 0 68 2;
#X connect 53 0 54 0;
#X connect 54 0 81 0;
#X connect 55 0 78 0;
#X connect 56 0 66 0;
#X connect 57 0 139 0;
#X connect 60 0 72 0;
#X connect 61 0 62 0;
#X connect 61 0 69 2;
#X connect 63 0 64 0;
#X connect 64 0 82 0;
#X connect 65 0 77 0;
#X connect 66 0 69 1;
#X connect 68 0 43 0;
#X connect 69 0 60 0;
#X connect 70 0 2 0;
#X connect 70 1 3 0;
#X connect 71 0 41 0;
#X connect 71 1 42 0;
#X connect 72 0 58 0;
#X connect 72 1 59 0;
#X connect 73 0 43 1;
#X connect 74 0 60 1;
#X connect 75 0 61 0;
#X connect 76 0 51 0;
#X connect 77 0 80 0;
#X connect 78 0 79 0;
#X connect 79 0 76 0;
#X connect 80 0 75 0;
#X connect 81 0 51 0;
#X connect 82 0 61 0;
#X connect 84 0 90 0;
#X connect 86 0 70 1;
#X connect 87 0 71 1;
#X connect 88 0 72 1;
#X connect 90 0 91 0;
#X connect 91 0 85 0;
#X connect 91 0 89 0;
#X connect 97 0 112 1;
#X connect 98 0 112 0;
#X connect 99 0 74 0;
#X connect 100 0 73 0;
#X connect 101 0 10 0;
#X connect 102 0 103 0;
#X connect 103 0 105 1;
#X connect 104 0 105 0;
#X connect 105 0 30 0;
#X connect 105 0 11 0;
#X connect 106 0 109 0;
#X connect 107 0 106 0;
#X connect 108 0 107 0;
#X connect 110 0 108 0;
#X connect 111 0 106 0;
#X connect 112 0 117 0;
#X connect 112 1 118 0;
#X connect 113 0 112 2;
#X connect 114 0 112 6;
#X connect 115 0 112 5;
#X connect 116 0 112 4;
#X connect 119 0 129 0;
#X connect 119 1 128 0;
#X connect 120 0 121 0;
#X connect 120 0 131 0;
#X connect 122 0 119 2;
#X connect 123 0 124 0;
#X connect 123 0 132 0;
#X connect 125 0 119 6;
#X connect 126 0 119 4;
#X connect 127 0 119 5;
#X connect 134 0 68 0;
#X connect 135 0 141 0;
#X connect 135 0 133 0;
#X connect 135 0 9 0;
#X connect 136 0 138 0;
#X connect 137 0 136 0;
#X connect 138 0 135 0;
#X connect 139 0 69 0;
#X connect 140 0 135 0;
#X connect 142 0 134 1;
#X connect 143 0 144 0;
#X connect 144 0 139 1;
#X connect 154 0 155 0;
#X connect 154 0 157 0;
#X connect 158 0 112 3;
#X connect 159 0 119 3;