#N canvas 517 121 515 653 12; #X text 66 243 physical modeling for pure data using a collection of physical ojects.; #X obj 8 250 pmpd; #N canvas 0 0 623 384 read 0; #X text 123 207 cyrille.henry@la-kitchen.fr; #X text 412 312 ch20031213; #X text 30 25 The aim of this collection of objects is to create physical behavior with pure data. It's not audio synthesis. But it can be used for the creation of parameters that can be used for driving an audio or video synthesis.; #X text 30 101 Most of the examples use GEM \, to allow visualization of the "physical" geometry \, but you don't need it to use this collection. ; #X text 30 161 any comments \, criticism \, suggestions \, help would be highly apreciated :; #X text 28 240 informations can be find :; #X text 122 263 http://drpichon.free.fr/pmpd/; #X restore 69 296 pd read me first; #N canvas 0 0 663 567 basics 0; #X text 34 30 Object in this collection can be mass \, link and interactor \, in 1D \, 2D or 3D.; #X text 47 69 Masses (mass \, mass2D \, mass3D) are ponctual. They've got a weight \, and know their position. They can move when they receive a force \, acording to physical rules.; #X text 47 126 Link (link \, link2D \, link3D) are the basic interaction beetween 2 masses. It is a visco-elastic link. The link object receive the position of 2 masses \, compute the force beetween the 2 masses and output a force for each mass.; #X text 47 202 Interactors are a kind of link \, but influence a group of masses at once. They can be used for global interaction. We will look further into it later.; #X text 32 272 This collection of objects can be interconnected for the creation of "physical" structures. Such structures can then move \, and distord themselves \, according to forces applied to them.; #X text 29 350 The resulting movements are very natural \, due to the physical equations used to define the objects.; #X text 30 418 all objects can be created using pmpd.name \, instead of name in order to avoid name conflict between libraries.; #X text 29 466 ex :; #X text 219 466 are the same objects.; #X obj 183 466 lia; #X obj 65 466 pmpd.link; #X obj 145 466 link; #X restore 69 324 pd basics; #N canvas 434 60 645 737 global_description 0; #X obj 34 169 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 34 268 print; #X obj 34 217 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X text 57 165 1; #X text 58 216 2; #X text 36 452 Here is the basic connection beetween 2 masses :; #X obj 40 591 lia; #X text 36 529 You can also create things like this :; #X text 32 23 For patching simplification \, objects in this collection only have "cold" inlets. The computation speed depends on an external metronome. This metronome should bang alternatively all links in the model and then masses of the model.; #X text 33 103 mass and link have a name corresponding to their class name. They will receive everything sent to this name.; #X text 159 236 clicking on bang 1 or 2 is equivalent; #X text 32 304 As you sould send a bang alternatively to links and masses \, you sould give diferent names to the links group and masses group.; #X text 36 361 Masses output their position when you bang them. This position depends on the forces applied to the mass.; #X text 36 401 Links output a force according to the position of the masses when you bang them. This force sould be applied to the same mass.; #X text 40 626 The masse1 will never receive forces \, so it will never move. It is useful for creating a structure attached to a fixed point. ; #X obj 40 558 mass masse1; #X obj 76 591 mass masse2; #X obj 110 489 masse; #X obj 156 489 lia; #X obj 195 489 masse; #X obj 34 188 s foo1; #X obj 34 237 masse2D foo1; #X connect 0 0 20 0; #X connect 2 0 21 0; #X connect 6 1 16 0; #X connect 15 0 6 0; #X connect 16 0 6 1; #X connect 17 0 18 0; #X connect 18 0 17 0; #X connect 18 1 19 0; #X connect 19 0 18 1; #X connect 21 0 1 0; #X restore 69 353 pd global_description; #N canvas 0 0 762 661 test 0; #X msg 108 98 1; #X msg 74 98 0; #X msg 41 98 -1; #X msg 141 98 2; #X obj 15 16 loadbang; #X floatatom 41 169 5 0 0 0 - - -; #X msg 106 390 1; #X msg 72 390 0; #X msg 39 390 -1; #X msg 139 390 2; #X floatatom 39 461 5 0 0 0 - - -; #X floatatom 37 325 5 0 0 0 - - -; #X msg 106 508 1; #X msg 72 508 0; #X msg 39 508 -1; #X msg 139 508 2; #X floatatom 39 579 5 0 0 0 - - -; #X text 247 61 A force to a masse make it to move at a constant speed. You can accelerate it or decelerate it using message box. a nul force as no effect.; #X floatatom 172 267 5 0 0 0 - - -; #X msg 104 264 1; #X msg 70 264 0; #X msg 37 264 -1; #X msg 137 264 2; #X text 247 405 Viscosity link : the force is proportinal to the deformation speed of the link; #X text 249 265 Rigidity link : the force is proportional to the elongation of the link. (the right inlet is not used \, so the like take is defauld value : 0.) Lengh of the link is null.; #X text 238 529 Visco-elasic link : the effect is the somme of the 2 previus link.; #X obj 15 69 s foo2; #X obj 41 142 mass foo2 10 0 0; #X obj 37 298 link foo2 0 0.1 0; #X obj 39 434 link foo2 0 0 0.1; #X obj 39 552 link foo2 0 0.1 0.1; #X obj 15 43 metro 300; #X connect 0 0 27 0; #X connect 1 0 27 0; #X connect 2 0 27 0; #X connect 3 0 27 0; #X connect 4 0 31 0; #X connect 6 0 29 0; #X connect 7 0 29 0; #X connect 8 0 29 0; #X connect 9 0 29 0; #X connect 12 0 30 0; #X connect 13 0 30 0; #X connect 14 0 30 0; #X connect 15 0 30 0; #X connect 18 0 28 0; #X connect 19 0 28 0; #X connect 20 0 28 0; #X connect 21 0 28 0; #X connect 22 0 28 0; #X connect 27 0 5 0; #X connect 28 0 11 0; #X connect 29 0 10 0; #X connect 30 0 16 0; #X connect 31 0 26 0; #X restore 71 474 pd test; #N canvas 394 231 879 595 simple_exemple 0; #X obj 356 237 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 0; #X obj 74 98 hradio 15 1 0 5 empty empty empty 0 -6 0 8 -262144 -1 -1 0; #N canvas 477 25 445 299 preset 0; #X msg 36 193 setK 0.05 \, setD 0 \, setD2 30; #X msg 55 166 setK 1 \, setD 0 \, setD2 30; #X msg 75 138 setK 1 \, setD 0 \, setD2 200; #X obj 36 16 inlet; #X obj 115 254 outlet; #X msg 95 108 setK 300 \, setD 300 \, setD2 5; #X obj 36 43 sel 2 1 0 3 4; #X msg 115 78 setK 3000 \, setD 1000 \, setD2 5000; #X connect 0 0 4 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 6 0; #X connect 5 0 4 0; #X connect 6 0 0 0; #X connect 6 1 1 0; #X connect 6 2 2 0; #X connect 6 3 5 0; #X connect 6 4 7 0; #X connect 7 0 4 0; #X restore 74 119 pd preset; #X obj 336 237 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 0; #X text 80 415 the masse is link to the cursor with diferents kinf of liaison (see the preset); #X text 71 18 comportement of a single masse link to a fixed point with a visco elastic link.; #X text 173 95 <- diferents comportement of the link; #N canvas 0 0 268 186 stuff 0; #X obj 13 20 loadbang; #X obj 48 97 s \$0-lia; #X obj 13 72 t b b; #X obj 13 123 s \$0-masse; #X obj 13 45 metro 5; #X obj 89 20 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 124 92 reset; #X msg 89 66 resetL \, resetF; #X obj 89 40 t b b; #X connect 0 0 4 0; #X connect 2 0 3 0; #X connect 2 1 1 0; #X connect 4 0 2 0; #X connect 5 0 8 0; #X connect 6 0 3 0; #X connect 7 0 1 0; #X connect 8 0 7 0; #X connect 8 1 6 0; #X restore 75 65 pd stuff; #X text 98 346 click or move the slider ->; #X text 396 346 look at the mouvement of the masse (the right slider) ; #X text 80 481 surch system can be usefull for replacing the line object of pd when more natural evolution is neaded...; #X obj 169 167 lia \$0-lia 0 1 0 200; #X obj 356 167 masse \$0-masse 10000 0; #X connect 1 0 2 0; #X connect 2 0 11 0; #X connect 3 0 11 0; #X connect 11 1 12 0; #X connect 12 0 0 0; #X connect 12 0 11 1; #X restore 71 501 pd simple_exemple; #X text 95 389 look at mass and link help file :; #X obj 96 407 mass; #X obj 96 437 link; #N canvas 108 97 450 541 list 0; #X obj 190 135 iAmbient2D; #X obj 305 137 iAmbient3D; #X obj 190 166 iCircle2D; #X obj 306 257 iCylinder3D; #X obj 305 227 iCircle3D; #X obj 190 196 iLine2D; #X obj 305 197 iPlane3D; #X obj 190 225 iSeg2D; #X obj 305 168 iSphere3D; #X obj 192 75 lia2D; #X obj 306 75 lia3D; #X obj 79 76 lia; #X obj 79 48 mass; #X obj 192 48 mass2D; #X obj 306 48 mass3D; #X text 78 25 1D; #X text 191 27 2D; #X text 304 28 3D; #X text 21 46 basic; #X text 19 136 interactors; #X text 24 328 test; #X obj 192 327 tLia2D; #X obj 307 327 tLia3D; #X obj 192 389 tCircle2D; #X obj 192 419 tLine2D; #X obj 192 448 tSeg2D; #X obj 305 480 tCylinder3D; #X obj 306 420 tPlane3D; #X obj 306 450 tCircle3D; #X obj 306 390 tSphere3D; #X obj 192 358 tSquare2D; #X obj 307 359 tCube3D; #X restore 71 531 pd list of pmpd's object; #X obj 10 200 cnv 15 15 15 Ma1 M1 empty 2 10 192 14 -1 -66577 0; #X obj 24 185 cnv 15 15 15 Ma3 M3 empty 2 10 192 14 -1 -66577 0; #X obj 39 172 cnv 15 15 15 Ma5 M5 empty 2 10 192 14 -1 -66577 0; #X obj 79 200 cnv 15 15 15 Ma9 M9 empty 2 10 192 14 -1 -66577 0; #X obj 183 200 cnv 15 15 15 empty M29 empty 2 10 64 14 -1 -66577 0 ; #X obj 120 200 cnv 15 15 15 Ma2 M2 empty 2 10 192 14 -1 -66577 0; #X obj 119 160 cnv 15 15 15 Ma4 M4 empty 2 10 192 14 -1 -66577 0; #X obj 100 170 cnv 15 15 15 Ma6 M6 empty 2 10 192 14 -1 -66577 0; #X obj 80 160 cnv 15 15 15 Ma8 M8 empty 2 10 192 14 -1 -66577 0; #X obj 120 180 cnv 15 15 15 Ma11 M11 empty 2 10 192 14 -1 -66577 0 ; #X obj 79 180 cnv 15 15 15 Ma12 M12 empty 2 10 192 14 -1 -66577 0; #X obj 184 172 cnv 15 15 15 Ma14 M14 empty 2 10 192 14 -1 -66577 0 ; #X obj 198 187 cnv 15 15 15 Ma13 M13 empty 2 10 192 14 -1 -66577 0 ; #X obj 169 185 cnv 15 15 15 Ma15 M15 empty 2 10 192 14 -1 -66577 0 ; #X obj 239 180 cnv 15 15 15 empty M30 empty 2 10 64 14 -1 -66577 0 ; #X obj 260 160 cnv 15 15 15 Ma20 M20 empty 2 10 192 14 -1 -66577 0 ; #X obj 259 180 cnv 15 15 15 Ma17 M17 empty 2 10 192 14 -1 -66577 0 ; #X obj 239 200 cnv 15 15 15 Ma19 M19 empty 2 10 192 14 -1 -66577 0 ; #X obj 259 200 cnv 15 15 15 Ma18 M18 empty 2 10 192 14 -1 -66577 0 ; #N canvas 0 0 470 320 pmpd 0; #X obj 7 196 s masse; #X obj 32 168 s link; #X msg 143 132 reset; #X obj 7 70 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 7 88 metro 50; #N canvas 154 59 1126 757 structure 0; #N canvas 0 0 478 328 masse1 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M1 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 10 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 14 253 pd masse1; #N canvas 0 0 470 320 masse3 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M3 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 10 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 23 143 pd masse3; #N canvas 0 0 474 324 masse5 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M5 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 10 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 26 58 pd masse5; #N canvas 0 0 472 322 masse7 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M7 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 30 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 324 62 pd masse7; #X obj 132 -19 r G; #X obj 17 215 link2D link 10 0.8; #X obj 20 180 link2D link 10 0.8 0 0.1; #X obj 163 213 link2D link 12 0.8; #X obj 18 96 link2D link 10 0.8 0 0.1; #N canvas 0 0 494 344 masse2 0; #X obj 79 57 inlet; #X obj 100 154 outlet; #X msg 79 110 \; M2 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 120 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 486 317 pd masse2; #N canvas 0 0 486 336 masse4 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M4 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 120 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 503 33 pd masse4; #N canvas 0 0 484 334 masse6 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M6 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 100 20 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 640 109 pd masse6; #N canvas 0 0 482 332 masse8 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 80 110 \; M8 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 80 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 767 36 pd masse8; #N canvas 0 0 484 334 masse9 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M9 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 80 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 722 335 pd masse9; #N canvas 0 0 484 334 masse11 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M11 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 120 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 490 216 pd masse11; #N canvas 0 0 484 334 masse12 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M12 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 80 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 821 226 pd masse12; #X obj 497 -9 r G; #X msg 499 9 force2D 0 0.1; #X obj 486 266 link2D link 12 0.3 0.1; #X obj 691 281 link2D link 12 0.3 0.1; #X obj 676 192 link2D link 12 0.3; #X obj 665 154 link2D link 12 0.3; #X obj 531 185 link2D link 12 0.3; #X obj 509 157 link2D link 12 0.3; #X obj 469 131 link2D link 12 0.3 0.1; #X obj 737 109 link2D link 12 0.3 0.1; #X obj 592 45 link2D link 12 0.3; #X obj 570 315 link2D link 12 0.3; #X msg 132 7 force2D 0 0.3; #X obj 636 214 link2D link 12 0.3; #N canvas 0 0 488 338 masse1 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M16 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 170 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 18 610 pd masse1; #N canvas 0 0 476 326 masse3 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M15 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 170 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 27 500 pd masse3; #N canvas 0 0 482 332 masse5 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M14 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 170 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 30 415 pd masse5; #N canvas 0 0 480 330 masse7 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 109 \; M13 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 190 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 363 409 pd masse7; #X obj 46 316 r G; #X obj 21 572 link2D link 10 0.8; #X obj 24 537 link2D link 10 0.8 0 0.1; #X obj 160 570 link2D link 12 0.8; #X obj 29 458 link2D link 10 0.8 0 0.1; #X msg 46 342 force2D 0 0.3; #N canvas 0 0 500 350 masse1 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 98 115 \; M20 pos \$1 \$2 \;; #X obj 79 83 mass2D masse 1 260 10 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 533 628 pd masse1; #N canvas 0 0 482 332 masse3 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M17 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 260 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 542 518 pd masse3; #N canvas 0 0 484 334 masse5 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 110 \; M18 pos \$1 \$2 \;; #X obj 78 84 mass2D masse 1 260 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 545 433 pd masse5; #N canvas 217 191 484 334 masse7 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 109 \; M19 pos \$1 \$2 \;; #X obj 79 84 mass2D masse 1 240 50 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 856 420 pd masse7; #X obj 561 376 r G; #X obj 536 590 link2D link 10 0.8; #X obj 539 555 link2D link 10 0.8 0 0.1; #X obj 675 588 link2D link 12 0.8; #X obj 544 476 link2D link 10 0.8 0 0.1; #X msg 561 402 force2D 0 0.3; #X obj 669 75 link2D link 12 0.5 0.1; #X obj 494 242 link2D link 12 0.5; #X obj 665 237 link2D link 12 0.5; #X obj 485 74 link2D link 12 0.5 0.1; #N canvas 0 0 476 326 masse8 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X obj 79 84 mass2D masse 1 30 30 0 1000 0 200; #X msg 103 110 \; M28 pos \$1 \$2 \;; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 2 0 1 0; #X restore 347 153 pd masse8; #X obj 251 101 link2D link 10 0.8 0 0.1; #X obj 139 47 link2D link 10 0.8; #X obj 143 73 link2D link 14 0.6; #X obj 146 126 link2D link 14 0.6; #X obj 160 154 link2D link 10 0.8; #X obj 148 410 link2D link 10 0.8; #X obj 144 433 link2D link 14 0.6; #X obj 141 504 link2D link 10 0.8; #X obj 144 480 link2D link 14 0.6; #N canvas 0 0 484 334 masse7 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X msg 79 109 \; M29 pos \$1 \$2 \;; #X obj 79 86 mass2D masse 1 190 30 0 1000 0 200; #X connect 0 0 3 0; #X connect 3 0 2 0; #X connect 3 0 1 0; #X restore 341 492 pd masse7; #X obj 251 453 link2D link 10 0.8 0 0.1; #N canvas 217 191 486 336 masse7 0; #X obj 79 57 inlet; #X obj 79 195 outlet; #X obj 79 84 mass2D masse 1 240 30 0 1000 0 200; #X msg 77 109 \; M30 pos \$1 \$2 \;; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 2 0 1 0; #X restore 840 522 pd masse7; #X obj 690 430 link2D link 10 0.8; #X obj 678 519 link2D link 10 0.8; #X obj 683 493 link2D link 14 0.6; #X obj 689 451 link2D link 14 0.6; #X obj 740 471 link2D link 10 0.8 0 0.1; #X connect 0 0 5 1; #X connect 0 0 6 1; #X connect 0 0 7 0; #X connect 1 0 6 0; #X connect 1 0 8 1; #X connect 1 0 57 0; #X connect 1 0 59 0; #X connect 2 0 5 0; #X connect 2 0 8 0; #X connect 2 0 56 0; #X connect 2 0 58 0; #X connect 3 0 7 1; #X connect 3 0 55 0; #X connect 3 0 56 1; #X connect 3 0 57 1; #X connect 4 0 28 0; #X connect 5 0 2 0; #X connect 5 1 0 0; #X connect 6 0 1 0; #X connect 6 1 0 0; #X connect 7 0 0 0; #X connect 7 1 3 0; #X connect 8 0 2 0; #X connect 8 1 1 0; #X connect 9 0 18 1; #X connect 9 0 23 0; #X connect 9 0 27 0; #X connect 9 0 51 0; #X connect 10 0 20 0; #X connect 10 0 21 0; #X connect 10 0 24 1; #X connect 10 0 26 0; #X connect 10 0 53 0; #X connect 11 0 50 0; #X connect 11 0 51 1; #X connect 11 0 52 0; #X connect 11 0 53 1; #X connect 12 0 22 1; #X connect 12 0 23 1; #X connect 12 0 25 1; #X connect 12 0 26 1; #X connect 12 0 50 1; #X connect 13 0 19 0; #X connect 13 0 21 1; #X connect 13 0 27 1; #X connect 13 0 52 1; #X connect 14 0 18 0; #X connect 14 0 22 0; #X connect 14 0 24 0; #X connect 14 0 29 0; #X connect 15 0 19 1; #X connect 15 0 20 1; #X connect 15 0 25 0; #X connect 15 0 29 1; #X connect 16 0 17 0; #X connect 17 0 14 0; #X connect 17 0 10 0; #X connect 17 0 12 0; #X connect 17 0 9 0; #X connect 17 0 13 0; #X connect 17 0 11 0; #X connect 17 0 15 0; #X connect 18 0 14 0; #X connect 18 1 9 0; #X connect 19 0 13 0; #X connect 19 1 15 0; #X connect 20 0 10 0; #X connect 20 1 15 0; #X connect 21 0 10 0; #X connect 21 1 13 0; #X connect 22 0 14 0; #X connect 22 1 12 0; #X connect 23 0 9 0; #X connect 23 1 12 0; #X connect 24 0 14 0; #X connect 24 1 10 0; #X connect 25 0 15 0; #X connect 25 1 12 0; #X connect 26 0 10 0; #X connect 26 1 12 0; #X connect 27 0 9 0; #X connect 27 1 13 0; #X connect 28 0 2 0; #X connect 28 0 1 0; #X connect 28 0 0 0; #X connect 28 0 3 0; #X connect 28 0 54 0; #X connect 29 0 14 0; #X connect 29 1 15 0; #X connect 30 0 35 1; #X connect 30 0 36 1; #X connect 30 0 37 0; #X connect 31 0 36 0; #X connect 31 0 38 1; #X connect 31 0 61 0; #X connect 31 0 62 0; #X connect 32 0 35 0; #X connect 32 0 38 0; #X connect 32 0 60 0; #X connect 32 0 63 0; #X connect 33 0 37 1; #X connect 33 0 60 1; #X connect 33 0 61 1; #X connect 33 0 65 0; #X connect 34 0 39 0; #X connect 35 0 32 0; #X connect 35 1 30 0; #X connect 36 0 31 0; #X connect 36 1 30 0; #X connect 37 0 30 0; #X connect 37 1 33 0; #X connect 38 0 32 0; #X connect 38 1 31 0; #X connect 39 0 32 0; #X connect 39 0 31 0; #X connect 39 0 30 0; #X connect 39 0 33 0; #X connect 39 0 64 0; #X connect 40 0 45 1; #X connect 40 0 46 1; #X connect 40 0 47 0; #X connect 41 0 46 0; #X connect 41 0 48 1; #X connect 41 0 68 0; #X connect 41 0 70 0; #X connect 42 0 45 0; #X connect 42 0 48 0; #X connect 42 0 67 0; #X connect 42 0 69 0; #X connect 43 0 47 1; #X connect 43 0 67 1; #X connect 43 0 70 1; #X connect 43 0 71 0; #X connect 44 0 49 0; #X connect 45 0 42 0; #X connect 45 1 40 0; #X connect 46 0 41 0; #X connect 46 1 40 0; #X connect 47 0 40 0; #X connect 47 1 43 0; #X connect 48 0 42 0; #X connect 48 1 41 0; #X connect 49 0 42 0; #X connect 49 0 41 0; #X connect 49 0 40 0; #X connect 49 0 43 0; #X connect 49 0 66 0; #X connect 50 0 11 0; #X connect 50 1 12 0; #X connect 51 0 9 0; #X connect 51 1 11 0; #X connect 52 0 11 0; #X connect 52 1 13 0; #X connect 53 0 10 0; #X connect 53 1 11 0; #X connect 54 0 55 1; #X connect 54 0 58 1; #X connect 54 0 59 1; #X connect 55 0 3 0; #X connect 55 1 54 0; #X connect 56 0 2 0; #X connect 56 1 3 0; #X connect 57 0 1 0; #X connect 57 1 3 0; #X connect 58 0 2 0; #X connect 58 1 54 0; #X connect 59 0 1 0; #X connect 59 1 54 0; #X connect 60 0 32 0; #X connect 60 1 33 0; #X connect 61 0 31 0; #X connect 61 1 33 0; #X connect 62 0 31 0; #X connect 62 1 64 0; #X connect 63 0 32 0; #X connect 63 1 64 0; #X connect 64 0 62 1; #X connect 64 0 63 1; #X connect 64 0 65 1; #X connect 65 0 33 0; #X connect 65 1 64 0; #X connect 66 0 68 1; #X connect 66 0 69 1; #X connect 66 0 71 1; #X connect 67 0 42 0; #X connect 67 1 43 0; #X connect 68 0 41 0; #X connect 68 1 66 0; #X connect 69 0 42 0; #X connect 69 1 66 0; #X connect 70 0 41 0; #X connect 70 1 43 0; #X connect 71 0 43 0; #X connect 71 1 66 0; #X restore 121 193 pd structure; #X msg 118 157 resetL \, resetF; #X obj 7 112 t b b; #X obj 42 135 s G; #X obj 118 110 t b b; #X obj 116 66 inlet; #X obj 62 24 loadbang; #X obj 30 66 delay 3000; #X connect 2 0 0 0; #X connect 3 0 4 0; #X connect 4 0 7 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 7 1 1 0; #X connect 7 1 8 0; #X connect 9 0 6 0; #X connect 9 1 2 0; #X connect 10 0 9 0; #X connect 11 0 9 0; #X connect 11 0 12 0; #X connect 12 0 4 0; #X restore 9 597 pd pmpd; #X obj 9 575 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 1 216 cnv 10 500 10 empty empty empty 20 12 0 14 -99865 -66577 0; #X obj 53 187 cnv 15 15 15 Ma7 M7 empty 2 10 192 14 -1 -66577 0; #X obj 38 200 cnv 15 15 15 empty M28 empty 2 10 64 14 -1 -66577 0; #X obj 155 200 cnv 15 15 15 Ma16 M16 empty 2 10 192 14 -1 -66577 0 ; #X connect 31 0 30 0;