Mercurial > hg > weather-synthesis-prototyping
diff June/woosh_D2.pd @ 117:3f2588a64b25
merged
author | Roderick Selfridge <r.selfridge@qmul.ac.uk> |
---|---|
date | Sat, 01 Aug 2015 05:48:03 +0100 |
parents | 65306ede8d41 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/June/woosh_D2.pd Sat Aug 01 05:48:03 2015 +0100 @@ -0,0 +1,645 @@ +#N canvas 256 26 1105 841 10; +#X obj 531 -113 vu 15 120 empty empty -1 -8 0 10 -66577 -1 1 0; +#X obj 594 -113 vu 15 120 empty empty -1 -8 0 10 -66577 -1 1 0; +#X text 591 -204 Gain; +#X obj 530 -230 loadbang; +#N canvas 865 368 284 318 opLevels 0; +#X obj 85 188 dac~; +#X obj 30 70 catch~ l; +#X obj 155 76 catch~ r; +#X obj 155 106 *~ 0.45; +#X obj 30 104 *~ 0.45; +#X obj 30 210 prvu~; +#X obj 155 213 prvu~; +#X obj 100 69 / 127; +#X obj 100 34 inlet; +#X obj 30 239 outlet; +#X obj 155 241 outlet; +#X obj 155 30 r NoOfSources; +#X obj 155 132 /~ 1; +#X obj 30 131 /~ 1; +#X obj 155 49 / 20; +#X connect 1 0 4 0; +#X connect 2 0 3 0; +#X connect 3 0 12 0; +#X connect 4 0 13 0; +#X connect 5 0 9 0; +#X connect 6 0 10 0; +#X connect 7 0 3 1; +#X connect 7 0 4 1; +#X connect 8 0 7 0; +#X connect 11 0 14 0; +#X connect 12 0 0 1; +#X connect 12 0 6 0; +#X connect 13 0 0 0; +#X connect 13 0 5 0; +#X connect 14 0 12 1; +#X connect 14 0 13 1; +#X restore 530 -156 pd opLevels; +#X msg 530 -207 5; +#N canvas 474 116 807 545 speedCalc 0; +#X obj 59 -12 inlet; +#X obj 135 -11 inlet; +#X obj 217 -12 inlet; +#X obj 317 -12 inlet; +#X obj 59 11 s \$0_swLen; +#X obj 135 11 s \$0_armLen; +#X obj 317 10 s \$0_tipSpeed; +#X obj 142 237 r \$0_tipSpeed; +#X obj 211 437 outlet; +#X obj 211 414 r \$0_minSpeed; +#X obj 127 285 s \$0_minSpeed; +#X obj 310 414 r \$0_deltaSpeed; +#X obj 504 335 s \$0_deltaSpeed; +#X obj 310 437 outlet; +#X obj 212 104 r \$0_swLen; +#X obj 127 216 /; +#X floatatom 81 243 5 0 0 0 - - -; +#X obj 227 127 r \$0_armLen; +#X obj 212 194 +; +#X obj 227 149 t f b; +#X floatatom 212 216 5 0 0 0 - - -; +#X obj 99 143 r \$0_armLen; +#X obj 217 11 s \$0_sourceTot; +#X obj 519 274 r \$0_sourceTot; +#X obj 127 261 *; +#X floatatom 85 285 5 0 0 0 - - -; +#X obj 519 186 r \$0_minSpeed; +#X obj 504 253 -; +#X obj 504 163 r \$0_tipSpeed; +#X obj 504 296 /; +#X obj 519 207 t f b; +#X floatatom 521 315 5 0 0 0 - - -; +#X obj 546 230 delay 9; +#X text 244 198 Length of blade and arm; +#X obj 99 165 t f b; +#X obj 126 189 delay 9; +#X obj 254 173 delay 6; +#X text -49 216 Ratio of arm to total length; +#X text 69 308 Speed of blade at the hilt; +#X text 387 247 Difference between; +#X text 369 259 speed at tip and hilt; +#X text 459 357 Difference in speed for each source; +#X text 459 369 based on a linear scale; +#X text 417 16 as well as the difference in speed of each source; +#X text 431 2 Patch that calculates the minimum speed; +#X connect 0 0 4 0; +#X connect 1 0 5 0; +#X connect 2 0 22 0; +#X connect 3 0 6 0; +#X connect 7 0 24 1; +#X connect 9 0 8 0; +#X connect 11 0 13 0; +#X connect 14 0 18 0; +#X connect 15 0 16 0; +#X connect 15 0 24 0; +#X connect 17 0 19 0; +#X connect 18 0 20 0; +#X connect 18 0 15 1; +#X connect 19 0 18 1; +#X connect 19 1 36 0; +#X connect 21 0 34 0; +#X connect 23 0 29 1; +#X connect 24 0 10 0; +#X connect 24 0 25 0; +#X connect 26 0 30 0; +#X connect 27 0 29 0; +#X connect 28 0 27 0; +#X connect 29 0 31 0; +#X connect 29 0 12 0; +#X connect 30 0 27 1; +#X connect 30 1 32 0; +#X connect 32 0 27 0; +#X connect 34 0 15 0; +#X connect 34 1 35 0; +#X connect 35 0 15 0; +#X connect 36 0 18 0; +#X restore 524 130 pd speedCalc; +#X floatatom 433 154 8 0 0 0 - - -; +#X floatatom 678 152 8 0 0 0 - - -; +#X msg 4 -235 1; +#X msg 3 -104 100; +#X msg 2 -169 0.59; +#X obj 524 35 r bladeLen; +#X obj 547 58 r armLength; +#X obj 570 82 r NoOfSources; +#X obj 593 107 r topSpeed; +#X obj 4 -212 s bladeLen; +#X obj 2 -148 s armLength; +#X obj 3 -81 s NoOfSources; +#X obj 68 79 s topSpeed; +#X obj 16 53 hsl 100 20 0 100 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 2970 1; +#X floatatom 13 79 8 0 0 0 - - -; +#X text 37 -236 Blade Length; +#X text 36 -170 Arm Length; +#X text 31 -104 Number of Sources; +#X text 124 57 Top Speed; +#X obj 13 137 hsl 100 20 0 360 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 7700 1; +#X floatatom 10 169 8 0 0 0 - - -; +#X obj 65 168 s sweepAngle; +#X text 124 138 Sweep Angle; +#X obj 360 -23 r sweepAngle; +#X obj 267 -67 r bladeLen; +#X obj 313 -44 r armLength; +#X obj 498 154 s firstSpeed; +#X obj 593 153 s deltaSpeed; +#X floatatom 210 28 8 0 0 0 - - -; +#X floatatom 448 26 8 0 0 0 - - -; +#N canvas 833 342 426 335 thickCalc 0; +#X obj 173 139 r NoOfSources; +#X obj 23 16 inlet; +#X obj 26 64 inlet; +#X obj 26 86 s \$0_tipThick; +#X obj 158 115 -; +#X obj 158 164 /; +#X obj 158 187 outlet; +#X obj 23 39 s \$0_hiltThick; +#X floatatom 126 147 5 0 0 0 - - -; +#X obj 173 44 r \$0_tipThick; +#X obj 158 19 r \$0_hiltThick; +#X floatatom 94 189 8 0 0 0 - - -; +#X obj 173 72 t f b; +#X obj 200 95 delay 9; +#X text 58 237 Calculates the difference in thickness between sources +; +#X text 59 254 based on the blade tapering in a straight line; +#X connect 0 0 5 1; +#X connect 1 0 7 0; +#X connect 2 0 3 0; +#X connect 4 0 5 0; +#X connect 4 0 8 0; +#X connect 5 0 6 0; +#X connect 5 0 11 0; +#X connect 9 0 12 0; +#X connect 10 0 4 0; +#X connect 12 0 4 1; +#X connect 12 1 13 0; +#X connect 13 0 4 0; +#X restore 362 -133 pd thickCalc; +#X obj 362 -110 s deltaThick; +#X floatatom 307 -109 8 0 0 0 - - -; +#X obj 10 228 hsl 100 20 0 0.03 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 3135 1; +#X obj 9 313 hsl 100 20 0 0.01 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 3168 1; +#X floatatom 7 258 8 0 0 0 - - -; +#X obj 61 257 s hiltThick; +#X floatatom 6 341 8 0 0 0 - - -; +#X obj 64 340 s tipThick; +#X text 124 230 Hilt Thickness; +#X text 116 314 Tip Thickness; +#X obj 362 -178 r hiltThick; +#X obj 431 -156 r tipThick; +#X obj 204 -190 bng 50 250 50 0 empty empty empty 17 7 0 10 -4034 -1 +-1; +#X obj 204 -137 s GO; +#X obj 765 -103 tenSource; +#X obj 9 395 hsl 100 20 100 1 1 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 8410 1; +#X obj 5 480 hsl 100 20 -180 180 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 6600 1; +#X floatatom 6 421 8 0 0 0 - - -; +#X text 119 399 Distance to Observer; +#X floatatom 2 508 8 0 0 0 - - -; +#X text 127 474 Angle to Observer; +#X obj 799 -139 r distance; +#X obj 782 -160 r angle; +#X obj 765 -201 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 204 -236 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 +0 1; +#X obj 204 -217 metro 200; +#X obj 258 -241 hsl 100 20 300 50 0 0 empty empty empty -2 -8 0 10 +-262144 -1 -1 2000 1; +#X obj 144 -190 bng 50 250 50 0 empty empty empty 17 7 0 10 -257985 +-1 -1; +#X obj 144 -137 s setUp; +#X obj -40 27 r setUp; +#X obj -48 117 r setUp; +#X obj -44 205 r setUp; +#X obj -45 293 r setUp; +#X obj -46 374 r setUp; +#X obj -49 458 r setUp; +#X obj 765 -229 r setUp; +#X obj 65 422 s obsDistance; +#X obj 61 509 s obsAngle; +#N canvas 427 69 911 675 circumferCalc 0; +#X obj 266 13 inlet; +#X floatatom 365 172 5 0 0 0 - - -; +#X obj 80 13 inlet; +#X obj 170 13 inlet; +#X obj 247 146 +; +#X obj 316 172 / 360; +#X obj 247 171 * 3.14159; +#X obj 247 219 *; +#X obj 247 195 * 2; +#X obj 80 36 s \$0_bladeLen; +#X obj 170 36 s \$0_armLength; +#X obj 266 36 s \$0_sweepAngle; +#X obj 247 99 r \$0_bladeLen; +#X obj 262 123 r \$0_armLength; +#X obj 316 148 r \$0_sweepAngle; +#X floatatom 734 192 5 0 0 0 - - -; +#X obj 685 192 / 360; +#X floatatom 628 168 5 0 0 0 - - -; +#X obj 616 191 * 3.14159; +#X obj 616 239 *; +#X floatatom 560 267 8 0 0 0 - - -; +#X obj 616 215 * 2; +#X obj 616 143 r \$0_armLength; +#X obj 685 168 r \$0_sweepAngle; +#X obj 616 267 s \$0_minCirc; +#X obj 265 459 r \$0_minCirc; +#X obj 265 481 outlet; +#X obj 262 279 r \$0_minCirc; +#X floatatom 188 339 8 0 0 0 - - -; +#X obj 247 305 -; +#X obj 247 341 /; +#X obj 277 317 r NoOfSources; +#X floatatom 185 370 8 0 0 0 - - -; +#X obj 247 367 s \$0_deltaCirc; +#X obj 354 459 r \$0_deltaCirc; +#X obj 354 481 outlet; +#X obj 260 246 s maxCirc; +#X obj 191 172 s length; +#X text 122 176 Arc radius; +#X text 318 195 % of circle; +#X text 323 242 Circumference of arc of tip; +#X text 692 210 % of circle; +#X text 601 289 Circumference of arc of hilt; +#X floatatom 187 243 8 0 0 0 - - -; +#X text 199 390 Difference of circumference length for each source +; +#X text 199 405 based on linear spacing between sources; +#X connect 0 0 11 0; +#X connect 2 0 9 0; +#X connect 3 0 10 0; +#X connect 4 0 6 0; +#X connect 4 0 37 0; +#X connect 5 0 7 1; +#X connect 6 0 8 0; +#X connect 7 0 29 0; +#X connect 7 0 36 0; +#X connect 7 0 43 0; +#X connect 8 0 7 0; +#X connect 12 0 4 0; +#X connect 13 0 4 1; +#X connect 14 0 5 0; +#X connect 14 0 1 0; +#X connect 16 0 19 1; +#X connect 18 0 21 0; +#X connect 19 0 20 0; +#X connect 19 0 24 0; +#X connect 21 0 19 0; +#X connect 22 0 18 0; +#X connect 22 0 17 0; +#X connect 23 0 16 0; +#X connect 23 0 15 0; +#X connect 25 0 26 0; +#X connect 27 0 29 1; +#X connect 29 0 28 0; +#X connect 29 0 30 0; +#X connect 30 0 32 0; +#X connect 30 0 33 0; +#X connect 31 0 30 1; +#X connect 34 0 35 0; +#X restore 267 1 pd circumferCalc; +#X obj 267 27 s circumMin; +#X obj 360 26 s deltaCircum; +#N canvas 361 106 954 607 angleCalc 0; +#X obj -142 102 * 0.75; +#X obj 231 187 * 0.25; +#X obj -142 142 /; +#X msg -157 248 1 \$1; +#X obj -157 225 f; +#X obj -157 274 line 0; +#X obj -171 193 r GO; +#X msg -113 248 0; +#X obj -142 166 * 1000; +#X obj 169 334 line 0; +#X obj 169 207 delay \$1; +#X obj 142 155 f; +#X obj 142 112 r GO; +#X obj 142 181 t f b; +#X obj 169 283 i; +#X msg 169 305 1 \$1; +#X msg 214 305 0; +#X obj 231 229 /; +#X obj 231 251 * 1000; +#X obj -157 352 *; +#X obj -128 297 r sweepAngle; +#X obj -154 405 hsl 100 25 0 360 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 5775 1; +#X obj -128 319 * -0.75; +#X obj -157 376 +; +#X obj -128 343 * -1; +#X obj -127 191 s \$0_thisDe; +#X obj 157 134 r \$0_thisDe; +#X obj 169 372 *; +#X obj 219 332 r sweepAngle; +#X obj 172 396 hsl 100 25 -360 360 0 0 empty empty empty -2 -8 0 10 +-262144 -1 -1 3987 1; +#X obj 214 283 r GO; +#X obj -142 78 r maxCirc; +#X obj 231 165 r maxCirc; +#X obj -127 121 r topSpeed; +#X obj 246 208 r topSpeed; +#X obj -35 535 s currentAngle; +#X obj -35 489 +; +#X floatatom -35 514 8 0 0 0 - - -; +#X obj -20 464 t f b; +#X obj 474 202 delay \$1; +#X obj 476 144 f; +#X obj 476 118 r GO; +#X obj 476 170 t f b; +#X obj 512 50 r maxCirc; +#X obj 527 72 r topSpeed; +#X obj 512 96 /; +#X obj 512 118 * 1000; +#X obj 474 224 s end; +#X obj -113 227 r end; +#X obj -20 431 r end; +#X obj 219 355 * -0.25; +#X text -206 42 0.75 represents the ratio of swing that; +#X text 106 71 0.25 represents the ratio of swing that; +#X text 106 85 the sword is decelerating; +#X text -115 146 Time taken for acceleration; +#X text -52 188 Send as a delay; +#X text 186 113 Recieve as a delay; +#X text -226 173 Start swing; +#X text -72 227 Reset angle; +#X text -72 239 once swing complete; +#X text -73 323 Start angle is; +#X text -73 335 3/4 of total angle; +#X text 452 243 Send bang message at the; +#X text 453 255 end of the swing to reset; +#X text 285 249 Time for last; +#X text 287 260 1/4 of swing; +#X text 245 294 Set to 0 at start; +#X text -206 56 the sword is before 0 degrees; +#X text -92 565 Output of complete swing \, split into 75% before 0 +degrees and 25% past 0 degrees; +#X text 276 354 Once delay from start to 0 degrees complete; +#X text 276 366 count down from 0 to finish the total swing angle; +#X text 98 9 Patch that calculates the angle between 0 degrees for +the full length of the swing; +#X connect 0 0 2 0; +#X connect 1 0 17 0; +#X connect 2 0 8 0; +#X connect 3 0 5 0; +#X connect 4 0 3 0; +#X connect 5 0 19 0; +#X connect 6 0 4 0; +#X connect 7 0 5 0; +#X connect 8 0 4 1; +#X connect 8 0 25 0; +#X connect 9 0 27 0; +#X connect 10 0 14 0; +#X connect 11 0 13 0; +#X connect 12 0 11 0; +#X connect 13 0 10 1; +#X connect 13 1 10 0; +#X connect 14 0 15 0; +#X connect 15 0 9 0; +#X connect 16 0 9 0; +#X connect 17 0 18 0; +#X connect 18 0 14 1; +#X connect 19 0 23 0; +#X connect 20 0 22 0; +#X connect 21 0 36 0; +#X connect 22 0 24 0; +#X connect 22 0 19 1; +#X connect 23 0 21 0; +#X connect 24 0 23 1; +#X connect 26 0 11 1; +#X connect 27 0 29 0; +#X connect 28 0 50 0; +#X connect 29 0 38 0; +#X connect 30 0 16 0; +#X connect 31 0 0 0; +#X connect 32 0 1 0; +#X connect 33 0 2 1; +#X connect 34 0 17 1; +#X connect 36 0 37 0; +#X connect 37 0 35 0; +#X connect 38 0 36 1; +#X connect 38 1 36 0; +#X connect 39 0 47 0; +#X connect 40 0 42 0; +#X connect 41 0 40 0; +#X connect 42 0 39 1; +#X connect 42 1 39 0; +#X connect 43 0 45 0; +#X connect 44 0 45 1; +#X connect 45 0 46 0; +#X connect 46 0 40 1; +#X connect 48 0 7 0; +#X connect 49 0 38 0; +#X connect 50 0 27 1; +#X restore 421 -230 pd angleCalc; +#X obj 533 -185 hsl 100 25 0 127 0 0 empty empty empty -2 -8 0 10 -262144 +-1 -1 9354 1; +#X msg 765 -182 10; +#X obj 4 -259 loadbang; +#X obj 2 -190 loadbang; +#X obj 3 -126 loadbang; +#X obj 816 -123 r elev; +#X msg 5 -32 0; +#X obj 5 -10 s elev; +#X text 124 486 (Azimuth); +#X obj 934 -127 r distance; +#X obj 917 -148 r angle; +#X obj 900 -189 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 900 -217 r setUp; +#X obj 951 -111 r elev; +#X msg 900 -170 9; +#X obj 5 -55 loadbang; +#X obj 427 535 s thisTS; +#X obj 446 514 s thisSA; +#X obj 466 492 s thisHT; +#X obj 485 469 s thisTT; +#X obj 505 448 s thisOD; +#X obj 524 428 s thisOA; +#X obj 544 406 s thisG; +#X obj 13 27 r thisTS; +#X obj 10 116 r thisSA; +#X obj 7 205 r thisHT; +#X obj 6 293 r thisTT; +#X obj 6 374 r thisOD; +#X obj 3 459 r thisOA; +#X obj 478 -205 r thisG; +#X obj 427 382 unpack f f f f f f f; +#X obj -47 -55 r setUp; +#X obj -50 -124 r setUp; +#X obj -47 -192 r setUp; +#X obj -48 -257 r setUp; +#X text 341 -92 Calculate thicknes delta; +#X text 269 45 Circumference calculations; +#X text 530 175 Speed calculations; +#X text 364 382 Presets; +#X obj 798 26 r distance; +#X obj 781 5 r angle; +#X obj 764 -36 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 764 -64 r setUp; +#X obj 815 42 r elev; +#X obj 927 35 r distance; +#X obj 910 14 r angle; +#X obj 893 -27 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 893 -55 r setUp; +#X obj 944 51 r elev; +#X obj 795 177 r distance; +#X obj 778 156 r angle; +#X obj 761 115 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 761 87 r setUp; +#X obj 812 193 r elev; +#X msg 761 134 6; +#X msg 893 -8 7; +#X msg 764 -17 8; +#X obj 929 184 r distance; +#X obj 912 163 r angle; +#X obj 895 122 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 895 94 r setUp; +#X obj 946 200 r elev; +#X msg 895 141 5; +#X msg 436 277 20 160 0.01 0.004 2 0 127; +#X msg 427 254 43 215 0.0085 0.0025 4 90 40; +#X msg 446 300 30 280 0.0095 0.0032 2 60 120; +#X text 696 263 Currently the noise sources are not connected but still +getting a zipping type sound. It seems to get worse with sources lower +down the blade - this needs looked into; +#X obj 427 225 loadbang; +#X obj 144 -242 loadbang; +#X obj 144 -218 delay 13; +#X obj 900 -91 tenSource; +#X obj 764 62 tenSource; +#X obj 893 71 tenSource; +#X obj 761 213 tenSource; +#X obj 895 220 tenSource; +#X obj 379 307 t b; +#X obj 359 330 s setUp; +#X connect 3 0 5 0; +#X connect 4 0 0 0; +#X connect 4 1 1 0; +#X connect 5 0 80 0; +#X connect 6 0 7 0; +#X connect 6 0 33 0; +#X connect 6 1 8 0; +#X connect 6 1 34 0; +#X connect 9 0 16 0; +#X connect 10 0 18 0; +#X connect 11 0 17 0; +#X connect 12 0 6 0; +#X connect 13 0 6 1; +#X connect 14 0 6 2; +#X connect 15 0 6 3; +#X connect 20 0 19 0; +#X connect 20 0 21 0; +#X connect 26 0 27 0; +#X connect 26 0 28 0; +#X connect 30 0 76 2; +#X connect 31 0 76 0; +#X connect 32 0 76 1; +#X connect 37 0 38 0; +#X connect 37 0 39 0; +#X connect 40 0 42 0; +#X connect 40 0 43 0; +#X connect 41 0 44 0; +#X connect 41 0 45 0; +#X connect 48 0 37 0; +#X connect 49 0 37 1; +#X connect 50 0 51 0; +#X connect 53 0 55 0; +#X connect 53 0 74 0; +#X connect 54 0 57 0; +#X connect 54 0 75 0; +#X connect 59 0 52 2; +#X connect 60 0 52 1; +#X connect 61 0 81 0; +#X connect 62 0 63 0; +#X connect 63 0 50 0; +#X connect 64 0 63 1; +#X connect 65 0 66 0; +#X connect 67 0 20 0; +#X connect 68 0 26 0; +#X connect 69 0 40 0; +#X connect 70 0 41 0; +#X connect 71 0 53 0; +#X connect 72 0 54 0; +#X connect 73 0 61 0; +#X connect 76 0 35 0; +#X connect 76 0 77 0; +#X connect 76 1 36 0; +#X connect 76 1 78 0; +#X connect 80 0 4 0; +#X connect 81 0 52 0; +#X connect 82 0 9 0; +#X connect 83 0 11 0; +#X connect 84 0 10 0; +#X connect 85 0 52 3; +#X connect 86 0 87 0; +#X connect 89 0 150 2; +#X connect 90 0 150 1; +#X connect 91 0 94 0; +#X connect 92 0 91 0; +#X connect 93 0 150 3; +#X connect 94 0 150 0; +#X connect 95 0 86 0; +#X connect 103 0 20 0; +#X connect 104 0 26 0; +#X connect 105 0 40 0; +#X connect 106 0 41 0; +#X connect 107 0 53 0; +#X connect 108 0 54 0; +#X connect 109 0 80 0; +#X connect 110 0 96 0; +#X connect 110 1 97 0; +#X connect 110 2 98 0; +#X connect 110 3 99 0; +#X connect 110 4 100 0; +#X connect 110 5 101 0; +#X connect 110 6 102 0; +#X connect 111 0 86 0; +#X connect 112 0 10 0; +#X connect 113 0 11 0; +#X connect 114 0 9 0; +#X connect 119 0 151 2; +#X connect 120 0 151 1; +#X connect 121 0 136 0; +#X connect 122 0 121 0; +#X connect 123 0 151 3; +#X connect 124 0 152 2; +#X connect 125 0 152 1; +#X connect 126 0 135 0; +#X connect 127 0 126 0; +#X connect 128 0 152 3; +#X connect 129 0 153 2; +#X connect 130 0 153 1; +#X connect 131 0 134 0; +#X connect 132 0 131 0; +#X connect 133 0 153 3; +#X connect 134 0 153 0; +#X connect 135 0 152 0; +#X connect 136 0 151 0; +#X connect 137 0 154 2; +#X connect 138 0 154 1; +#X connect 139 0 142 0; +#X connect 140 0 139 0; +#X connect 141 0 154 3; +#X connect 142 0 154 0; +#X connect 143 0 110 0; +#X connect 143 0 155 0; +#X connect 144 0 110 0; +#X connect 144 0 155 0; +#X connect 145 0 110 0; +#X connect 145 0 155 0; +#X connect 147 0 144 0; +#X connect 148 0 149 0; +#X connect 149 0 65 0; +#X connect 155 0 156 0;