max v2; #N vpatcher 172 56 1098 776; #P origin 0 5; #P window setfont "Sans Serif" 9.; #P window linecount 1; #P message 481 614 34 196617 store; #P user fpic 15 117 140 87 percolate.jpg 0 0 0 0. 0 0 0; #P message 20 402 142 196617 note 12 0.9 0. 20 80 0.3 500; #P toggle 20 362 15 0; #P message 20 384 58 196617 oneshot \$1; #P comment 474 506 400 196617 ¥ impolitely clears the internal sample buffer; #P message 331 506 31 196617 clear; #P comment 474 488 400 196617 ¥ post the values of user controlled variables to the MAX window; #P message 331 488 31 196617 state; #P toggle 257 99 15 0; #P message 228 99 28 196617 open; #P hidden message 257 138 14 196617 1; #N sfplay~ 1 40320 0 ; #P newobj 228 117 42 196617 sfplay~; #N vpreset 13; #X append 1 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 100. \; 24 557 301 flonum float 5. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 1 2 50. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 95 10. \; 38 621 160 gain~ list 95 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 1 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 300. \; 82 197 333 number int 0 \;; #X append 1 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 2 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 100. \; 24 557 301 flonum float 5. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 2 2 100. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 97 10. \; 38 621 160 gain~ list 97 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 2 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 1000. \; 82 197 333 number int 0 \;; #X append 2 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 3 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 3 2 50. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 92 10. \; 38 621 160 gain~ list 92 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 3 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 100. \; 82 197 333 number int 0 \;; #X append 3 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 4 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 4 2 50. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 92 10. \; 38 621 160 gain~ list 92 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 4 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 1000. \; 82 197 333 number int 0 \;; #X append 4 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 5 2 22 557 81 flonum float 100. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 5 2 50. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 102 10. \; 38 621 160 gain~ list 102 10. \; 45 23 333 number int 1 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 5 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 300. \; 82 197 333 number int 0 \;; #X append 5 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 6 2 22 557 81 flonum float 100. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 100. \; 27 557 246 flonum float; #X append 6 2 150. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 102 10. \; 38 621 160 gain~ list 102 10. \; 45 23 333 number int 1 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 6 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 1000. \; 82 197 333 number int 0 \;; #X append 6 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 7 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 20. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 50. \; 27 557 246 flonum float; #X append 7 2 300. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 83 10. \; 38 621 160 gain~ list 83 10. \; 45 23 333 number int 20 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 7 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 1000. \; 82 197 333 number int 0 \;; #X append 7 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 8 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 300. \; 24 557 301 flonum float 80. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 50. \; 27 557 246 flonum float; #X append 8 2 300. \; 28 557 356 flonum float 0.78 \; 34 621 137 gain~ list 83 10. \; 38 621 160 gain~ list 83 10. \; 45 23 333 number int 20 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 8 2 gain~ list 0 10. \; 59 23 203 umenu int 1 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 1000. \; 82 197 333 number int 0 \;; #X append 8 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \;; #X append 9 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 404. \; 24 557 301 flonum float 0.780001 \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 9 2 70. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 101 10. \; 38 621 160 gain~ list 101 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 9 2 gain~ list 0 10. \; 59 23 203 umenu int 2 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 3000. \; 82 197 333 number int 1 \;; #X append 9 2 85 309 333 flonum float 0.19 \; 86 260 333 toggle int 1 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \; 98 99 257 toggle int 1 \;; #X append 10 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 119. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 10 2 70. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 101 10. \; 38 621 160 gain~ list 101 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 10 2 gain~ list 0 10. \; 59 23 203 umenu int 2 \; 63 67 333 number int 100 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 3000. \; 82 197 333 number int -1 \;; #X append 10 2 85 309 333 flonum float 0.139999 \; 86 260 333 toggle int 0 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \; 98 99 257 toggle int 1 \;; #X append 11 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 200. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 11 2 0. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 101 10. \; 38 621 160 gain~ list 101 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 11 2 gain~ list 0 10. \; 59 23 203 umenu int 2 \; 63 67 333 number int 100 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 3000. \; 82 197 333 number int 1 \;; #X append 11 2 85 309 333 flonum float 0.14 \; 86 260 333 toggle int 0 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0.57 \; 98 99 257 toggle int 1 \;; #X append 12 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 425. \; 24 557 301 flonum float 1. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 100. \; 27 557 246 flonum float; #X append 12 2 0. \; 28 557 356 flonum float 0. \; 34 621 137 gain~ list 101 10. \; 38 621 160 gain~ list 101 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 1 \; 54 621 75; #X append 12 2 gain~ list 0 10. \; 59 23 203 umenu int 2 \; 63 67 333 number int 100 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 3000. \; 82 197 333 number int 1 \;; #X append 12 2 85 309 333 flonum float 0.02 \; 86 260 333 toggle int 0 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \; 98 99 257 toggle int 1 \;; #X append 13 2 22 557 81 flonum float 0. \; 23 557 191 flonum float 10. \; 24 557 301 flonum float 0. \; 25 557 411 flonum float 1. \; 26 557 136 flonum float 0. \; 27 557 246 flonum float; #X append 13 2 0. \; 28 557 356 flonum float 1. \; 34 621 137 gain~ list 108 10. \; 38 621 160 gain~ list 108 10. \; 45 23 333 number int 10 \; 49 48 172 toggle int 0 \; 54 621 75; #X append 13 2 gain~ list 0 10. \; 59 23 203 umenu int 2 \; 63 67 333 number int 50 \; 66 107 333 toggle int 1 \; 68 150 333 flonum float 100. \; 82 197 333 number int 0 \;; #X append 13 2 85 309 333 flonum float -1. \; 86 260 333 toggle int 0 \; 90 354 333 flonum float 1. \; 92 373 333 flonum float 0. \; 98 99 257 toggle int 1 \; 104 362 20 toggle int; #X append 13 2 0 \;; #P preset 483 642 48 53; #P window linecount 2; #P comment 472 355 402 196617 ¥ set the baseline gain for grains (1 by default) \, and set a randomization range around that baseline (0 by default); #P flonum 333 373 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P window linecount 1; #P message 369 373 65 196617 rand_gain \$1; #P flonum 333 354 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 369 354 41 196617 gain \$1; #P window linecount 4; #P comment 472 299 400 196617 ¥ set the playback position within the buffer (between 0 and 1). -1 = randomized position (which is the default). it is possible to get some interesting stretching effects by scrubbing through this with "record" on \, and some good transposition effects with "record" off; #P window linecount 1; #P comment 472 272 400 196617 ¥ turn recording on and off. turning off freezes the buffer. on (1) by default; #P toggle 333 260 15 0; #P flonum 333 309 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 333 327 58 196617 position \$1; #P message 331 277 53 196617 record \$1; #P number 333 197 35 9 -1 1 3 3 0 0 0 221 221 221 222 222 222 0 0 0; #P hidden message 754 656 14 196617 1; #P hidden newex 755 633 45 196617 loadbang; #P hidden newex 275 225 45 196617 loadbang; #P window linecount 2; #P comment 472 238 400 196617 ¥ sets the minimum allowable grainsize. useful when randomizing with the "grain size variation" input; #P window linecount 1; #P message 333 238 51 196617 minsize 5; #P window linecount 2; #P comment 472 205 400 196617 ¥ allows grains to play backwards and forwards (0) \, just forwards (1) \, or just backwards (-1). (0) by default.; #P window linecount 1; #P message 333 216 92 196617 ambidirectional \$1; #P message 387 41 71 196617 maxvoices 30; #P message 332 397 40 196617 smooth; #P message 332 414 50 196617 tempered; #P message 332 467 342 196617 scale 0 -2 2 -4 4 -6 6 -8 8 -10 10 -12 12 -14 14 -16 16 -18 18 -20 20; #P message 332 449 205 196617 scale 0 4 4 4 7 7 11 11 14 18 -12 -12 -12; #P message 332 431 102 196617 scale 0 4 7 -2 12 15; #P flonum 333 150 56 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 333 171 93 196617 delaylength_ms \$1; #P toggle 333 107 15 0; #P message 333 125 51 196617 power \$1; #P comment 330 9 118 196617 send some messages....; #P number 333 67 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P user meter~ 97 621 110 679 100 0 168 0 104 104 104 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3; #P user meter~ 125 621 138 679 100 0 168 0 104 104 104 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3; #P user meter~ 182 621 195 679 100 0 168 0 104 104 104 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3; #P user umenu 203 23 58 196647 1 64 39 1; #X add none; #X add sequence; #X add soundfile; #X add adc input; #P message 192 177 20 196617 20; #P newex 172 196 30 196617 line~; #P newex 172 156 27 196617 * 2.; #P comment 124 605 76 196617 'munged' signal.; #P user gain~ 75 621 23 36 158 0 1.071519 7.94321 10.; #P hidden newex 148 21 45 196617 loadbang; #P user meter~ 194 381 274 394 100 0 168 0 104 104 104 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3; #P newex 172 135 29 196617 mtof; #N coll ; #T flags 1 0; #T 0 45; #T 1 45; #T 2 57; #T 3 57; #T 4 45; #T 5 57; #T 6 57; #T 7 47; #T 8 55; #T 9 47; #T 10 59; #T 11 60; #T 12 60; #T 13 57; #T 14 57; #T 15 57; #P newobj 172 90 40 196617 coll; #P toggle 172 48 15 0; #P newex 172 68 74 196617 tempo 60 1 16; #P newex 172 223 59 196617 cycle~ 200; #P newex 268 176 29 196617 adc~; #P number 333 23 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 333 41 52 196617 voices \$1; #P window linecount 2; #P comment 356 530 53 196617 grain pitch variation; #P window linecount 1; #P comment 301 530 53 196617 grain pitch; #P window linecount 2; #P comment 246 530 53 196617 grain size variation; #P comment 136 530 53 196617 grain rate variation; #P window linecount 1; #P newex 178 352 60 196617 selector~ 3; #P user gain~ 160 621 23 36 158 0 1.071519 7.94321 10.; #P window linecount 3; #P comment 17 245 108 196617 ¥ by dan trueman \, music dept. princeton university; #P window linecount 1; #P message 43 649 27 196617 stop; #P message 5 633 65 196617 startwindow; #P user gain~ 137 621 23 36 158 0 1.071519 7.94321 10.; #P newex 99 688 33 196617 dac~; #P comment 5 619 72 196617 ¥ start audio; #P window setfont "Sans Serif" 14.; #P comment 17 3 76 196622 munger~; #P window setfont "Sans Serif" 9.; #P comment 17 24 117 196617 stereo granulator...; #P message 333 85 65 196617 ramptime \$1; #P flonum 356 557 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 246 557 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 136 557 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 411 557 35 9 0. 1. 3 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 301 557 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 191 557 40 9 0. 20000. 3 3 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 81 557 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 25 576 399 196617 munger~ 3000; #B color 2; #P window linecount 2; #P comment 81 530 53 196617 grain separation; #P window linecount 1; #P comment 191 530 52 196617 grain size; #P window linecount 2; #P comment 411 530 38 196617 stereo spread; #P window linecount 1; #P newex 172 111 30 196617 sel 0; #P comment 66 605 55 196617 dry signal.; #P comment 192 48 100 196617 ¥ play sequence...; #P comment 214 157 100 196617 ... or plug right in.; #P comment 129 509 117 196617 <-- values are in ms -->; #P comment 196 9 76 196617 choose an input; #P comment 177 491 100 196617 PRIMARY CONTROLS; #P window linecount 4; #P comment 472 12 396 196617 ¥ the "voices" message tells the munger how many grains to allow simultaneously (10 by default). the more \, the more expensive. you can smoothly sweep this parameter. "maxvoices" sets an upper limit to this \, and will have some impact on performance if set really high (20 by default). munger is hardwired for total max of 100 voices.; #P window linecount 2; #P comment 472 71 397 196617 ¥ "ramptime" sets the length (in ms) of the ramping envelope on each grain. if the grain is smaller than the ramptime \, the ramptime will be scaled to half the grain size.; #P window linecount 1; #P comment 472 107 398 196617 ¥ turn the munger on and off \, to save CPU. (1) by default.; #P window linecount 4; #P comment 472 150 400 196617 ¥ constrain how far back in time the munger looks for grains. the smaller this is \, the smaller the largest grain can be. the munger's argument sets the maximum delay length possible (and the default value for delaylength). this is a super cool parameter to mess with.; #P window linecount 3; #P comment 472 405 402 196617 ¥ apply pitch sieves to the grains. control how deeply into these sieves to go with the "grain pitch variation" input (below). floats work too. set to "smooth" (no sieve) by default.; #P window linecount 6; #P comment 271 608 181 196617 ¥ optional argument sets the maximum delay time (in ms) and allocates memory \, so be careful with large values. (3000ms by default). this also contrains the maximum grain size \, to 1/3rd the maximum delay time.; #P window linecount 8; #P user com 452 530 412 196617 322; #K set 0 42272 28015 29556 27769 8307 25964 26144 25976 28780 24942 24948 28530 31022 8291 28526 29810 28524 8296 28535 8301 30051 26656 29541 28769 29281 29801 28526 8308 26725 8295 29281 26990 29472 29544 28533 27748 8296 24950 25888 24942 25632 26735 30496 28021 25448 8308 28448 29281 28260 28525 27769 8310 24946 31008 29800 25888 29541 28769 29281 29801 28526 11808 29545 28009 27745 29292 31008 30569 29800 8295 29281 26990 8307 27002 25902 8308 29281 28275 28783 29541 8289 27756 8303 30068 26479 26990 26400 26482 24937 28275 8311 26996 26656 29800 25888 8807 29281 26990 8304 26996; #K set 100 25448 8736 28021 27764 26992 27753 25970 11808 30305 29305 8308 26725 8295 29281 26990 8304 26996 25448 11296 25961 29800 25970 8306 24942 25711 28012 31008 28530 8308 26738 28533 26472 8226 28777 29795 26656 29545 25974 25971 8736 10355 25972 8311 26996 26656 8819 25441 27749 8736 28005 29555 24935 25971 10528 30067 26990 26400 29800 25888 8807 29281 26990 8304 26996 25448 8310 24946 26977 29801 28526 8736 26990 28789 29728 10345 26144 31087 29984 30067 25888 24864 8819 25441 27749 8736 28005 29555 24935 25900 8308 26725 8226 26482 24937 28192 28777 29795 26656 30305 29289; #K set 200 24948 26991 28194 8304 24946 24941 25972 25970 8311 26988 27680 25455 28276 29295 27680 26735 30496 26209 29216 26990 29807 8313 28533 29216 29539 24940 25888 29800 25888 28021 28263 25970 8311 26988 27680 27759 28523 8294 28530 8302 28532 25971 15136 29810 31008 26482 24932 30049 27756 31008 26990 25458 25953 29545 28263 8308 26729 29472 30305 27765 25888 24942 25632 27753 29556 25966 8289 29472 28271 29797 29472 24944 28773 24946 10542 8294 26990 24940 27769 11296 29552 29285 24932 8308 26725 8295 29281 26990 29472 28533 29728 24931 29295 29555 8308 26725 8307 29797 29285 28448; #K set 300 26217 25964 25632 10288 8297 29472 25445 28276 25970 11296 12576 26995 8307 28786 25953 25632 25455 28016 27749 29797 27769 10542; #K end; #P window linecount 3; #P user com 531 643 335 196617 46; #K set 0 29810 31008 29551 28005 8304 29285 29541 29811 3341 10356 26725 8300 24947 29728 29295 30496 26995 8304 24946 29801 25461 27745 29292 31008 25455 28524 8311 26996 26656 29551 30062 25702 26988 25971 11296 28518 8310 28521 25445 29472 26223 29216 25976 24941 28780 25897; #K end; #P window linecount 1; #P comment 20 419 260 196617 transp \, gain \, pan \, attack \, decay \, sustain level \, release; #P window linecount 2; #P comment 20 336 143 196617 turn off continuous grains \, and play them one-at-a-time; #P window linecount 4; #P comment 17 51 146 196617 ¥ munger takes a signal input and granulates it \, allowing for different transposition and granular sampling effects.; #P connect 104 0 103 0; #P fasten 39 0 21 0 183 446 30 446; #P hidden fasten 101 0 21 0 336 595 30 595; #P hidden fasten 77 0 21 0 338 446 30 446; #P hidden fasten 74 0 21 0 392 405 30 405; #P hidden fasten 72 0 21 0 337 402 30 402; #P hidden fasten 73 0 21 0 337 405 30 405; #P hidden fasten 71 0 21 0 337 296 30 296; #P hidden fasten 70 0 21 0 337 315 30 315; #P hidden fasten 69 0 21 0 337 296 30 296; #P hidden fasten 67 0 21 0 338 296 30 296; #P hidden fasten 65 0 21 0 338 296 30 296; #P hidden fasten 29 0 21 0 338 296 30 296; #P hidden fasten 44 0 21 0 338 296 30 296; #P hidden fasten 75 0 21 0 338 447 30 447; #P hidden fasten 84 0 21 0 31 342; #P hidden fasten 83 0 21 0 31 293; #P hidden fasten 89 0 21 0 31 369; #P hidden fasten 91 0 21 0 31 388; #P hidden connect 99 0 21 0; #P hidden connect 103 0 21 0; #P hidden connect 105 0 21 0; #P hidden fasten 39 0 54 0 183 376 80 376; #P connect 22 0 21 1; #P hidden connect 54 0 62 0; #P hidden connect 34 0 33 0; #P hidden fasten 54 0 33 0 80 681 104 681; #P fasten 35 0 33 0 10 684 104 684; #P fasten 36 0 33 0 48 684 104 684; #P hidden connect 38 0 33 1; #P hidden fasten 54 0 33 1 80 681 127 681; #P hidden connect 34 0 61 0; #P connect 26 0 21 2; #P hidden connect 21 0 34 0; #P hidden fasten 21 1 38 0 419 615 165 615; #P hidden connect 34 1 38 0; #P hidden fasten 53 0 49 0 153 42 177 42; #P connect 49 0 48 0; #P connect 48 0 50 0; #P connect 50 0 17 0; #P fasten 17 1 51 0 197 131 177 131; #P connect 51 0 56 0; #P connect 56 0 57 0; #P connect 57 0 47 0; #P hidden fasten 59 0 39 0 208 251 183 251; #P hidden connect 38 0 60 0; #P connect 23 0 21 3; #P fasten 56 0 58 0 177 175 197 175; #P connect 58 0 57 1; #P fasten 47 0 39 1 177 342 199 342; #P fasten 39 0 52 0 183 375 199 375; #P fasten 95 0 39 2 233 342 215 342; #P fasten 46 1 39 3 292 342 231 342; #P fasten 46 0 39 3 273 342 231 342; #P connect 98 0 95 0; #P connect 97 0 95 0; #P hidden connect 96 0 95 0; #P connect 27 0 21 4; #P hidden connect 95 1 96 0; #P connect 24 0 21 5; #P connect 86 0 83 0; #P hidden connect 79 0 69 0; #P hidden connect 45 0 44 0; #P hidden connect 63 0 29 0; #P hidden connect 66 0 65 0; #P connect 68 0 67 0; #P connect 82 0 75 0; #P hidden connect 79 0 77 0; #P connect 85 0 84 0; #P connect 28 0 21 6; #P hidden connect 90 0 89 0; #P hidden connect 92 0 91 0; #P connect 25 0 21 7; #P hidden connect 81 0 94 0; #P hidden connect 80 0 81 0; #P pop;