diff --git a/pd/doc/4.data.structures/pd-l2ork/sprite-game/game.pd b/pd/doc/4.data.structures/pd-l2ork/sprite-game/game.pd
index a9ce0c0f85e22288e5260b1847f6b056a10466fb..1c41575f01fd31df5f04354f0e3b96ed81f0a1ca 100644
--- a/pd/doc/4.data.structures/pd-l2ork/sprite-game/game.pd
+++ b/pd/doc/4.data.structures/pd-l2ork/sprite-game/game.pd
@@ -1,5 +1,5 @@
 #N struct foo;
-#N canvas 107 69 881 608 10;
+#N canvas 113 51 881 608 10;
 #X obj 731 39 pddplink http://remusprites.carbonmade.com/ -text Sprite
 by Bleed;
 #N canvas 480 111 853 605 (subpatch) 0;
@@ -367,13 +367,13 @@ z m -10.2 6.76 c -16.409 -1.07188 2.85868 -24.3778 6.81644 -7.79128
 #X msg 68 509 stroke-dasharray 5 6 \, fill yellow \, fill-opacity 0.5
 \, stroke darkgray;
 #X obj 367 401 loadbang;
-#X msg 411 245 fill black \, transform translate -130 100 scale 0.75
-\, fill-opacity 0.6 \, stroke-opacity 0.6;
 #X obj 411 224 loadbang;
 #X obj 606 168 loadbang;
 #X obj 259 324 r \$0-hit-object;
 #X msg 367 422 fill yellow \, transform translate 27 -7 scale 0.57
 \, stroke black;
+#X msg 411 245 fill black \, transform translate -130 100 scale 0.75
+\, fill-opacity 0.6 \, stroke-opacity 0.6 \, stroke black;
 #X connect 5 0 22 0;
 #X connect 8 0 23 0;
 #X connect 9 0 27 0;
@@ -417,14 +417,14 @@ z m -10.2 6.76 c -16.409 -1.07188 2.85868 -24.3778 6.81644 -7.79128
 #X connect 45 0 33 0;
 #X connect 45 0 34 0;
 #X connect 46 0 7 0;
-#X connect 47 0 52 0;
-#X connect 48 0 25 1;
-#X connect 49 0 48 0;
-#X connect 50 0 28 0;
-#X connect 51 0 17 0;
-#X connect 52 0 14 0;
+#X connect 47 0 51 0;
+#X connect 48 0 52 0;
+#X connect 49 0 28 0;
+#X connect 50 0 17 0;
+#X connect 51 0 14 0;
+#X connect 52 0 25 1;
 #X restore 734 138 group;
-#N canvas 150 76 1002 543 guts 0;
+#N canvas 333 68 1002 543 guts 0;
 #X obj 155 292 * 6;
 #X obj 181 254 + 1;
 #X obj 155 342 pack;
@@ -521,15 +521,14 @@ z m -10.2 6.76 c -16.409 -1.07188 2.85868 -24.3778 6.81644 -7.79128
 #X connect 6 0 7 0;
 #X connect 7 0 0 0;
 #X restore 549 348 pd s;
-#X msg 653 290 forwardmess \$1 bang;
-#X obj 653 311 t a b;
-#X msg 681 336 name;
-#X obj 653 390 s;
+#X msg 641 356 forwardmess \$1 bang;
+#X obj 641 377 t a b;
+#X msg 668 402 name;
+#X obj 641 456 s;
 #X obj 35 481 outlet;
 #X obj 155 391 outlet;
-#X obj 681 357 canvasinfo 1;
+#X obj 668 423 canvasinfo 1;
 #X obj 472 398 t a;
-#X obj 620 255 sel -1;
 #X obj 480 207 s \$0-flashlight;
 #X msg 480 185 0;
 #X floatatom 320 304 5 0 0 0 Bullets: - -, f 5;
@@ -1068,10 +1067,10 @@ connect 14 0 13 0 \, connect 15 0 17 1 \, connect 16 0 17 1 \, connect
 #N canvas 553 178 608 363 gate 0;
 #X obj 134 25 inlet;
 #X obj 254 58 b;
-#X obj 134 276 send game-canvas;
-#X obj 254 100 send bullets;
+#X obj 134 296 send game-canvas;
+#X obj 254 120 send bullets;
 #X obj 254 79 f 7;
-#X msg 134 132 obj 202 195 bng 58 250 50 0 empty empty empty 17 7 0
+#X msg 134 152 obj 202 195 bng 58 250 50 0 empty empty empty 17 7 0
 10 -262144 -1 -1 \, obj 202 290 float 42 \, obj 202 411 spigot \, obj
 235 335 tgl 44 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 \, obj
 202 432 select 42 \, obj 202 453 s the_answer \, text 276 408 <- This
@@ -1080,8 +1079,8 @@ a number that isn't a '0'. \, connect 4 0 5 0 \, connect 5 0 6 0 \,
 connect 6 0 8 0 \, connect 7 0 6 1 \, connect 8 0 9 0 \, text 200 20
 Level 5: Heaven's Gate \, text 200 20 ______________________;
 #X obj 353 56 b;
-#X obj 352 98 send music;
-#X obj 352 76 list append verse siren-fade-single pluck-fade simple-snare
+#X obj 352 118 send music;
+#X obj 352 76 list append verse siren-fade-single pluck-fade-long simple-snare
 ;
 #X connect 0 0 5 0;
 #X connect 0 0 1 0;
@@ -1461,12 +1460,13 @@ shooting the final [s the_answer] object;
 #X obj 159 521 outlet;
 #X obj 38 41 select n e s w;
 #X obj 136 386 objectinfo 3;
-#X msg 136 363 class \$1;
 #X obj 136 407 select send;
 #X obj 199 432 b;
-#X obj 199 490 f;
-#X obj 96 321 trigger anything anything;
-#X msg 243 346 \$1;
+#X obj 96 321 trigger bang anything anything;
+#X msg 113 349 class;
+#X msg 193 352 list \$1;
+#X msg 273 352 list \$1;
+#X obj 199 490 list;
 #X connect 0 0 22 0;
 #X connect 1 0 3 0;
 #X connect 2 0 3 0;
@@ -1485,7 +1485,7 @@ shooting the final [s the_answer] object;
 #X connect 12 0 3 0;
 #X connect 13 0 14 0;
 #X connect 13 0 17 0;
-#X connect 13 1 28 0;
+#X connect 13 1 26 0;
 #X connect 14 0 20 0;
 #X connect 15 0 20 0;
 #X connect 16 0 3 0;
@@ -1495,17 +1495,18 @@ shooting the final [s the_answer] object;
 #X connect 22 1 12 0;
 #X connect 22 2 1 0;
 #X connect 22 3 2 0;
-#X connect 23 0 25 0;
-#X connect 24 0 23 0;
-#X connect 25 1 26 0;
+#X connect 23 0 24 0;
+#X connect 24 1 25 0;
+#X connect 25 0 15 0;
+#X connect 25 0 30 0;
 #X connect 26 0 27 0;
-#X connect 26 0 15 0;
-#X connect 27 0 21 0;
-#X connect 28 0 24 0;
-#X connect 28 1 29 0;
-#X connect 29 0 27 1;
+#X connect 26 1 28 0;
+#X connect 26 2 29 0;
+#X connect 27 0 23 0;
+#X connect 28 0 23 1;
+#X connect 29 0 30 1;
+#X connect 30 0 21 0;
 #X restore 675 203 pd check_for_object;
-#X obj 620 234 float;
 #X obj 471 274 symbol;
 #X obj 471 305 select n e s w;
 #X obj 36 83 t a a;
@@ -1779,14 +1780,14 @@ shooting the final [s the_answer] object;
 #X connect 12 0 9 1;
 #X connect 13 0 9 0;
 #X restore 263 81 pd sfx;
-#N canvas 220 49 982 608 sound 0;
-#X obj 269 167 f;
-#X obj 311 167 + 1;
-#X obj 269 91 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
+#N canvas 220 49 792 592 sound 0;
+#X obj 459 92 f;
+#X obj 501 92 + 1;
+#X obj 459 16 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
 1;
-#X obj 386 328 r the_answer;
-#X obj 286 328 catch~ \$0-busl;
-#X obj 508 328 catch~ \$0-busr;
+#X obj 196 253 r the_answer;
+#X obj 96 253 catch~ \$0-busl;
+#X obj 318 253 catch~ \$0-busr;
 #N canvas 1 19 659 666 guitar-arpeggios 0;
 #X obj 146 539 list;
 #X obj 58 491 t a b;
@@ -1802,7 +1803,7 @@ shooting the final [s the_answer] object;
 #X obj 58 265 route 0 1 2 3;
 #X obj 85 515 del 140;
 #X obj 58 611 rev1~;
-#N canvas 373 246 450 300 cut 1;
+#N canvas 373 246 450 300 cut 0;
 #X obj 102 10 inlet;
 #X obj 104 152 list split;
 #X msg 224 133 5;
@@ -1982,29 +1983,29 @@ shooting the final [s the_answer] object;
 #X connect 57 0 24 0;
 #X connect 58 0 53 0;
 #X connect 59 0 9 0;
-#X restore 795 246 pd guitar-arpeggios;
-#X msg 107 58 0;
-#X obj 107 79 send omni;
-#X obj 80 12 r music;
-#X obj 80 103 list-drip;
-#X obj 80 33 t a b;
-#X obj 80 124 t b a;
-#X obj 80 145 send;
-#X obj 316 97 loadbang;
-#X obj 386 439 line~;
-#X obj 286 473 *~;
-#X obj 493 473 *~;
-#X obj 451 371 r music;
-#X obj 451 392 b;
-#X obj 386 349 b;
-#X msg 451 413 1 1000;
-#X obj 386 371 del 3625;
-#X msg 386 413 0 75;
-#X obj 286 572 dac~;
+#X restore 525 191 pd guitar-arpeggios;
+#X msg 124 58 0;
+#X obj 124 79 send omni;
+#X obj 97 12 r music;
+#X obj 97 103 list-drip;
+#X obj 97 33 t a b;
+#X obj 97 124 t b a;
+#X obj 97 145 send;
+#X obj 506 22 loadbang;
+#X obj 196 364 line~;
+#X obj 96 398 *~;
+#X obj 303 398 *~;
+#X obj 261 296 r music;
+#X obj 261 317 b;
+#X obj 196 274 b;
+#X msg 261 338 1 1000;
+#X obj 196 296 del 3625;
+#X msg 196 338 0 75;
+#X obj 96 497 dac~;
 #N canvas 244 22 703 657 pluck1 0;
 #X msg 77 402 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$1 \$1
 ;
-#X msg 77 463 \$3;
+#X msg 77 463 \$2;
 #X msg 359 402 set \, adddollar \$1;
 #X obj 77 514 mtof;
 #X obj 158 92 mod 64;
@@ -2160,7 +2161,7 @@ shooting the final [s the_answer] object;
 #X connect 51 2 50 0;
 #X connect 52 0 6 1;
 #X connect 53 0 16 0;
-#X restore 670 246 pd pluck1;
+#X restore 478 254 pd pluck1;
 #N canvas 522 86 703 619 pluck2 0;
 #X msg 317 333 set \, adddollar \$1;
 #X obj 241 75 mod 64;
@@ -2169,7 +2170,7 @@ shooting the final [s the_answer] object;
 #X obj 142 123 + 1;
 #X msg 53 333 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$1 \$1
 ;
-#X msg 53 384 \$3;
+#X msg 53 384 \$2;
 #X obj 53 426 mtof;
 #X obj 54 256 route 0 1 2 3;
 #X obj 53 405 + 24;
@@ -2309,14 +2310,14 @@ shooting the final [s the_answer] object;
 #X connect 45 0 46 0;
 #X connect 46 0 3 1;
 #X connect 47 0 15 0;
-#X restore 732 246 pd pluck2;
-#X obj 181 16 r verse;
-#X obj 181 37 b;
-#X obj 181 58 f 0;
-#X obj 181 79 s section;
-#X obj 261 16 r chorus;
-#X obj 261 37 b;
-#X obj 261 58 f 1;
+#X restore 509 212 pd pluck2;
+#X obj 198 16 r verse;
+#X obj 198 37 b;
+#X obj 198 58 f 0;
+#X obj 198 79 s section;
+#X obj 278 16 r chorus;
+#X obj 278 37 b;
+#X obj 278 58 f 1;
 #N canvas 0 24 597 402 simple-snare 0;
 #X obj 204 17 inlet;
 #X obj 204 38 mod 16;
@@ -2356,10 +2357,10 @@ shooting the final [s the_answer] object;
 #X connect 17 0 16 0;
 #X connect 18 0 8 0;
 #X connect 18 0 9 0;
-#X restore 923 246 pd simple-snare;
+#X restore 541 170 pd simple-snare;
 #N canvas 115 68 1190 634 baseline 0;
 #X obj 326 343 phasor~;
-#X msg 326 186 \$5;
+#X msg 326 186 \$3;
 #X obj 326 227 mtof;
 #X obj 326 279 line~;
 #X obj 1065 87 + 1;
@@ -2427,8 +2428,8 @@ shooting the final [s the_answer] object;
 #X obj 78 -5 mod 7;
 #X obj 546 118 t a;
 #X obj 325 -146 trigger anything anything;
-#X msg 326 150 \$1 0 0 \$1 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2
-\$2;
+#X msg 326 150 \$1 0 0 \$1 0 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2 0
+;
 #X msg 545 3 adddollar 1 \, add2 0 0 \, adddollar 1 \, add2 0 0 0 \,
 adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, add2 0;
@@ -2530,9 +2531,9 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 71 0 67 0;
 #X connect 72 0 10 0;
 #X connect 72 0 11 0;
-#X restore 469 285 pd baseline;
+#X restore 543 401 pd baseline;
 #N canvas 1 37 682 683 siren 0;
-#X msg 269 204 \$2;
+#X msg 269 204 \$1;
 #X obj 269 235 mtof;
 #X obj 269 287 line~;
 #X obj 479 152 + 1;
@@ -2550,7 +2551,7 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X obj 350 -2 f;
 #X msg 269 173 \$1 \$2 \$2 \$2;
 #X obj 269 -87 trigger anything anything;
-#X msg 789 274 \$2;
+#X msg 789 274 \$1;
 #X obj 789 298 mtof;
 #X obj 789 346 line~;
 #X obj 969 182 + 1;
@@ -2598,7 +2599,7 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 0.010101 0.01;
 #N canvas 0 0 450 300 (subpatch) 0;
 #X array \$0-othersaw 32771 float 2 black black;
-#X coords 0 1 32770 -1 200 140 1;
+#X coords 0 1 32771 -1 200 140 1;
 #X restore 915 115 graph;
 #X msg 460 403 normalize 1;
 #X obj 577 93 t b a b;
@@ -2700,10 +2701,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 54 0 51 0;
 #X connect 55 0 56 0;
 #X connect 56 0 3 0;
-#X restore 713 285 pd siren;
+#X restore 599 314 pd siren;
 #N canvas 19 60 947 608 simple-bass 0;
 #X obj 195 273 phasor~;
-#X msg 195 166 \$5;
+#X msg 195 166 \$3;
 #X obj 195 197 mtof;
 #X obj 195 249 line~;
 #X msg 195 74 40 52;
@@ -2741,7 +2742,7 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X obj 60 279 change;
 #X msg 130 203 set -1;
 #X msg 66 257 set -1;
-#X msg 196 135 \$1 0 0 \$1 0 0 \$1 0 0 0 0 0 0 0 0 0;
+#X msg 196 135 \$1 0 0 \$1 0 0 0 0 0 0 0 0 0 0 0 0;
 #X obj 536 -54 sel 0 1;
 #X obj 472 -82 t a b;
 #X msg 499 -55 set;
@@ -2812,10 +2813,10 @@ adddollar 1 \, add2 0 0 0 0 0 0 0 0 0;
 #X connect 47 0 39 0;
 #X connect 48 0 11 0;
 #X connect 48 0 12 0;
-#X restore 76 285 pd simple-bass;
+#X restore 459 542 pd simple-bass;
 #N canvas 0 19 1366 684 stepwise-bass 0;
 #X obj 215 303 phasor~;
-#X msg 215 146 \$5;
+#X msg 215 146 \$3;
 #X obj 215 177 mtof;
 #X obj 215 229 line~;
 #X obj 565 13 + 1;
@@ -2877,8 +2878,8 @@ adddollar 1 \, add2 0 0 0 0 0 0 0 0 0;
 #X obj 392 318 osc~ 8;
 #X obj 378 218 * 32;
 #X obj 342 353 *~ 30;
-#X msg 216 115 \$1 0 0 \$1 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$3 \$3 \$3
-\$3;
+#X msg 216 115 \$1 0 0 \$1 0 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2 0
+;
 #X msg 710 -43 adddollar 1 \, add2 0 0 \, adddollar 1 \, add2 0 0 0
 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, add2 0;
@@ -3039,10 +3040,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 93 0 58 0;
 #X connect 94 0 10 0;
 #X connect 94 0 11 0;
-#X restore 167 285 pd stepwise-bass;
+#X restore 501 473 pd stepwise-bass;
 #N canvas 288 49 565 650 siren-to-bass 0;
 #X obj 200 380 phasor~;
-#X msg 75 179 \$2;
+#X msg 75 179 \$1;
 #X obj 200 264 mtof;
 #X obj 200 311 line~;
 #X msg 75 55 40 52;
@@ -3146,10 +3147,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 47 1 33 0;
 #X connect 48 0 11 0;
 #X connect 48 0 12 0;
-#X restore 539 285 pd siren-to-bass;
+#X restore 529 422 pd siren-to-bass;
 #N canvas 440 34 584 635 siren-fade 0;
 #X obj 192 372 phasor~;
-#X msg 95 246 \$2;
+#X msg 95 246 \$1;
 #X obj 192 300 mtof;
 #X obj 192 348 line~;
 #X msg 95 109 40 52;
@@ -3266,10 +3267,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 52 0 34 0;
 #X connect 53 0 33 1;
 #X connect 54 0 42 1;
-#X restore 713 335 pd siren-fade;
+#X restore 585 335 pd siren-fade;
 #N canvas 440 34 584 670 siren-fade-long 0;
 #X obj 192 372 phasor~;
-#X msg 95 246 \$2;
+#X msg 95 246 \$1;
 #X obj 192 300 mtof;
 #X obj 192 348 line~;
 #X msg 95 109 40 52;
@@ -3386,10 +3387,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 52 0 39 0;
 #X connect 53 0 33 1;
 #X connect 54 0 42 1;
-#X restore 803 335 pd siren-fade-long;
+#X restore 571 356 pd siren-fade-long;
 #N canvas 440 34 584 670 siren-fade-single 0;
 #X obj 192 372 phasor~;
-#X msg 95 246 \$2;
+#X msg 95 246 \$1;
 #X obj 192 300 mtof;
 #X obj 192 348 line~;
 #X msg 95 109 40 52;
@@ -3478,7 +3479,7 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 39 0 34 0;
 #X connect 40 0 15 0;
 #X connect 41 0 33 0;
-#X restore 803 375 pd siren-fade-single;
+#X restore 557 378 pd siren-fade-single;
 #N canvas 0 24 708 402 simple-snare-synco 0;
 #X obj 204 17 inlet;
 #X obj 204 38 mod 16;
@@ -3532,11 +3533,11 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 23 0 12 0;
 #X connect 24 0 8 0;
 #X connect 24 0 9 0;
-#X restore 923 206 pd simple-snare-synco;
+#X restore 694 170 pd simple-snare-synco;
 #N canvas 434 41 703 657 pluck-fade 0;
 #X msg 77 422 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$1 \$1
 ;
-#X msg 77 453 \$3;
+#X msg 77 453 \$2;
 #X msg 359 422 set \, adddollar \$1;
 #X obj 77 504 mtof;
 #X obj 158 112 mod 64;
@@ -3693,10 +3694,10 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 52 0 42 0;
 #X connect 53 0 38 0;
 #X connect 54 0 36 0;
-#X restore 642 175 pd pluck-fade;
+#X restore 493 233 pd pluck-fade;
 #N canvas 0 19 797 634 level8-bass 0;
 #X obj 326 343 phasor~;
-#X msg 326 186 \$5;
+#X msg 326 186 \$3;
 #X obj 326 227 mtof;
 #X obj 326 279 line~;
 #X obj 645 127 + 1;
@@ -3811,17 +3812,17 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 51 0 1 0;
 #X connect 52 0 10 0;
 #X connect 52 0 11 0;
-#X restore 469 305 pd level8-bass;
-#X obj 269 137 metro 140;
-#X obj 384 471 r \$0-master;
-#X obj 479 548 *~;
-#X obj 286 548 *~;
-#X obj 384 517 line~;
-#X msg 384 492 \$1 50;
-#X obj 286 494 *~ 0.5;
-#X obj 493 494 *~ 0.5;
+#X restore 515 446 pd level8-bass;
+#X obj 459 62 metro 140;
+#X obj 194 396 r \$0-master;
+#X obj 289 473 *~;
+#X obj 96 473 *~;
+#X obj 194 442 line~;
+#X msg 194 417 \$1 50;
+#X obj 96 419 *~ 0.5;
+#X obj 303 419 *~ 0.5;
 #N canvas 76 51 1221 608 stepwise-osc 0;
-#X msg 215 146 \$5;
+#X msg 215 146 \$3;
 #X obj 215 177 mtof;
 #X obj 215 229 line~;
 #X obj 565 13 + 1;
@@ -3882,8 +3883,8 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X obj 392 318 osc~ 8;
 #X obj 378 218 * 32;
 #X obj 342 353 *~ 30;
-#X msg 216 115 \$1 0 0 \$1 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$3 \$3 \$3
-\$3;
+#X msg 216 115 \$1 0 0 \$1 0 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2 0
+;
 #X msg 710 -43 adddollar 1 \, add2 0 0 \, adddollar 1 \, add2 0 0 0
 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, add2 0;
@@ -4067,7 +4068,7 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 103 0 96 0;
 #X connect 104 0 9 0;
 #X connect 104 0 10 0;
-#X restore 157 335 pd stepwise-osc;
+#X restore 473 520 pd stepwise-osc;
 #N canvas 0 24 597 402 shuffle 0;
 #X obj 204 17 inlet;
 #X obj 204 38 mod 16;
@@ -4106,9 +4107,9 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 15 4 4 0;
 #X connect 16 0 6 0;
 #X connect 16 0 7 0;
-#X restore 923 166 pd shuffle;
+#X restore 674 191 pd shuffle;
 #N canvas 76 51 1221 608 stepwise-fm 0;
-#X msg 215 146 \$5;
+#X msg 215 146 \$3;
 #X obj 215 177 mtof;
 #X obj 215 229 line~;
 #X obj 565 13 + 1;
@@ -4169,8 +4170,8 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X obj 392 318 osc~ 8;
 #X obj 378 218 * 32;
 #X obj 342 353 *~ 30;
-#X msg 216 115 \$1 0 0 \$1 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$3 \$3 \$3
-\$3;
+#X msg 216 115 \$1 0 0 \$1 0 0 0 \$2 \$2 \$2 \$2 \$2 \$2 \$2 \$2 0
+;
 #X msg 710 -43 adddollar 1 \, add2 0 0 \, adddollar 1 \, add2 0 0 0
 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, add2 0;
@@ -4377,11 +4378,11 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 97 0 93 0;
 #X connect 98 0 9 0;
 #X connect 98 0 10 0;
-#X restore 157 395 pd stepwise-fm;
+#X restore 487 497 pd stepwise-fm;
 #N canvas 434 41 755 657 pluck-fade-long 0;
 #X msg 77 422 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$2 \$1 0 \$1 \$1
 ;
-#X msg 77 453 \$3;
+#X msg 77 453 \$2;
 #X msg 359 422 set \, adddollar \$1;
 #X obj 77 504 mtof;
 #X obj 158 112 mod 64;
@@ -4536,27 +4537,14 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 51 0 38 0;
 #X connect 52 0 36 0;
 #X connect 53 0 35 0;
-#X restore 642 135 pd pluck-fade-long;
+#X restore 655 212 pd pluck-fade-long;
+#X obj 478 149 t a a a a a;
+#X obj 655 149 t a a a;
+#X obj 459 293 t a a a a a a a a a a a;
 #X connect 0 0 1 0;
-#X connect 0 0 25 0;
-#X connect 0 0 6 0;
-#X connect 0 0 26 0;
-#X connect 0 0 34 0;
-#X connect 0 0 39 0;
-#X connect 0 0 40 0;
-#X connect 0 0 37 0;
-#X connect 0 0 38 0;
-#X connect 0 0 41 0;
-#X connect 0 0 42 0;
-#X connect 0 0 43 0;
-#X connect 0 0 44 0;
-#X connect 0 0 35 0;
-#X connect 0 0 45 0;
-#X connect 0 0 36 0;
-#X connect 0 0 54 0;
-#X connect 0 0 56 0;
-#X connect 0 0 57 0;
-#X connect 0 0 55 0;
+#X connect 0 0 58 0;
+#X connect 0 0 59 0;
+#X connect 0 0 60 0;
 #X connect 1 0 0 1;
 #X connect 2 0 46 0;
 #X connect 3 0 20 0;
@@ -4595,6 +4583,25 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 51 0 50 0;
 #X connect 52 0 49 0;
 #X connect 53 0 48 1;
+#X connect 58 0 25 0;
+#X connect 58 1 44 0;
+#X connect 58 2 26 0;
+#X connect 58 3 6 0;
+#X connect 58 4 34 0;
+#X connect 59 0 57 0;
+#X connect 59 1 55 0;
+#X connect 59 2 43 0;
+#X connect 60 0 37 0;
+#X connect 60 1 54 0;
+#X connect 60 2 56 0;
+#X connect 60 3 38 0;
+#X connect 60 4 45 0;
+#X connect 60 5 39 0;
+#X connect 60 6 35 0;
+#X connect 60 7 42 0;
+#X connect 60 8 41 0;
+#X connect 60 9 40 0;
+#X connect 60 10 36 0;
 #X restore 263 53 pd sound;
 #X obj 385 284 b;
 #X msg 385 326 symbol bullet;
@@ -4603,11 +4610,16 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X obj 620 203 del 600;
 #X obj 271 325 hsl 91 15 0 1 0 0 \$0-master \$0-from-nowhere Volume
 29 8 0 10 -237503 -1 -1 0 1;
+#X obj 620 234 list;
+#X obj 620 255 route -1;
+#X msg 641 314 index;
+#X obj 641 335 objectinfo;
+#X obj 641 293 trigger bang anything;
 #X connect 0 0 2 0;
 #X connect 0 0 18 0;
 #X connect 1 0 3 0;
 #X connect 1 0 7 0;
-#X connect 1 0 43 1;
+#X connect 1 0 42 1;
 #X connect 2 0 4 0;
 #X connect 3 0 2 0;
 #X connect 3 1 15 0;
@@ -4615,28 +4627,28 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 5 0 14 0;
 #X connect 6 0 0 0;
 #X connect 6 0 7 0;
-#X connect 6 0 44 1;
+#X connect 6 0 43 1;
 #X connect 7 0 5 0;
-#X connect 8 0 77 0;
-#X connect 9 0 77 0;
-#X connect 10 0 78 0;
-#X connect 11 0 78 0;
-#X connect 12 0 43 0;
-#X connect 13 0 44 0;
+#X connect 8 0 75 0;
+#X connect 9 0 75 0;
+#X connect 10 0 76 0;
+#X connect 11 0 76 0;
+#X connect 12 0 42 0;
+#X connect 13 0 43 0;
 #X connect 14 0 31 0;
 #X connect 15 0 2 1;
 #X connect 15 0 19 0;
-#X connect 16 0 51 0;
-#X connect 20 0 67 0;
-#X connect 20 0 69 1;
-#X connect 21 0 37 0;
-#X connect 21 0 69 0;
-#X connect 21 0 89 0;
+#X connect 16 0 50 0;
+#X connect 20 0 66 0;
+#X connect 20 0 67 1;
+#X connect 21 0 36 0;
+#X connect 21 0 67 0;
+#X connect 21 0 87 0;
 #X connect 22 0 34 0;
 #X connect 23 0 34 0;
 #X connect 24 0 34 0;
 #X connect 25 0 21 0;
-#X connect 25 0 48 0;
+#X connect 25 0 47 0;
 #X connect 25 1 17 0;
 #X connect 26 0 34 0;
 #X connect 27 0 28 0;
@@ -4645,83 +4657,124 @@ adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar 2 \, adddollar
 #X connect 29 0 33 0;
 #X connect 33 0 30 1;
 #X connect 34 0 31 0;
-#X connect 35 1 27 0;
-#X connect 35 1 58 0;
-#X connect 37 0 36 0;
-#X connect 40 0 71 0;
-#X connect 41 0 44 0;
-#X connect 42 0 43 0;
-#X connect 43 0 1 0;
-#X connect 44 0 6 0;
-#X connect 45 0 46 0;
-#X connect 47 0 48 1;
-#X connect 47 0 50 0;
+#X connect 36 0 35 0;
+#X connect 39 0 69 0;
+#X connect 40 0 43 0;
+#X connect 41 0 42 0;
+#X connect 42 0 1 0;
+#X connect 43 0 6 0;
+#X connect 44 0 45 0;
+#X connect 46 0 47 1;
+#X connect 46 0 49 0;
+#X connect 47 0 48 0;
+#X connect 48 0 47 1;
 #X connect 48 0 49 0;
-#X connect 49 0 48 1;
-#X connect 49 0 50 0;
-#X connect 49 0 56 0;
-#X connect 50 0 38 0;
-#X connect 51 0 25 0;
-#X connect 52 0 51 1;
-#X connect 53 0 46 0;
-#X connect 54 0 55 0;
-#X connect 56 0 54 0;
-#X connect 57 0 61 0;
-#X connect 58 0 66 0;
-#X connect 58 1 57 1;
-#X connect 59 0 60 0;
-#X connect 60 0 57 2;
+#X connect 48 0 55 0;
+#X connect 49 0 37 0;
+#X connect 50 0 25 0;
+#X connect 51 0 50 1;
+#X connect 52 0 45 0;
+#X connect 53 0 54 0;
+#X connect 55 0 53 0;
+#X connect 56 0 60 0;
+#X connect 57 0 65 0;
+#X connect 57 1 56 1;
+#X connect 58 0 59 0;
+#X connect 60 0 61 0;
 #X connect 61 0 62 0;
 #X connect 62 0 63 0;
+#X connect 62 1 63 1;
 #X connect 63 0 64 0;
-#X connect 63 1 64 1;
-#X connect 64 0 65 0;
-#X connect 66 0 81 0;
-#X connect 67 0 68 1;
-#X connect 68 0 35 0;
-#X connect 69 0 70 0;
-#X connect 69 0 85 0;
-#X connect 70 0 23 0;
-#X connect 70 1 22 0;
-#X connect 70 2 26 0;
-#X connect 70 3 24 0;
-#X connect 71 0 75 0;
-#X connect 71 1 72 0;
-#X connect 71 1 76 0;
-#X connect 73 0 74 0;
-#X connect 74 0 5 1;
-#X connect 75 0 13 0;
-#X connect 75 1 13 0;
-#X connect 75 2 12 0;
-#X connect 75 3 12 0;
-#X connect 76 0 8 0;
-#X connect 76 1 9 0;
-#X connect 76 2 10 0;
-#X connect 76 3 11 0;
-#X connect 77 0 6 1;
-#X connect 78 0 1 1;
-#X connect 79 0 40 0;
-#X connect 81 0 57 0;
-#X connect 81 1 61 1;
-#X connect 85 0 88 0;
-#X connect 86 0 87 0;
-#X connect 88 0 86 0;
-#X connect 89 0 68 0;
+#X connect 65 0 79 0;
+#X connect 66 0 89 1;
+#X connect 67 0 68 0;
+#X connect 67 0 83 0;
+#X connect 68 0 23 0;
+#X connect 68 1 22 0;
+#X connect 68 2 26 0;
+#X connect 68 3 24 0;
+#X connect 69 0 73 0;
+#X connect 69 1 70 0;
+#X connect 69 1 74 0;
+#X connect 71 0 72 0;
+#X connect 72 0 5 1;
+#X connect 73 0 13 0;
+#X connect 73 1 13 0;
+#X connect 73 2 12 0;
+#X connect 73 3 12 0;
+#X connect 74 0 8 0;
+#X connect 74 1 9 0;
+#X connect 74 2 10 0;
+#X connect 74 3 11 0;
+#X connect 75 0 6 1;
+#X connect 76 0 1 1;
+#X connect 77 0 39 0;
+#X connect 79 0 56 0;
+#X connect 79 1 60 1;
+#X connect 83 0 86 0;
+#X connect 84 0 85 0;
+#X connect 86 0 84 0;
+#X connect 87 0 89 0;
+#X connect 89 0 90 0;
+#X connect 90 1 57 0;
+#X connect 90 1 93 0;
+#X connect 91 0 92 0;
+#X connect 92 0 27 0;
+#X connect 93 0 91 0;
+#X connect 93 1 92 1;
 #X coords 0 -1 1 1 115 61 1 262 284;
 #X restore 734 61 pd guts;
 #X obj 734 15 struct foo;
-#X obj 450 200 bng 61 250 50 0 empty empty empty 17 7 0 10 -262144
+#X obj 448 249 line;
+#X msg 448 144 0;
+#X obj 490 376 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X obj 403 431 spigot 0;
+#X msg 490 396 0;
+#X obj 448 354 moses 1;
+#X obj 153 118 bng 37 250 50 0 empty empty empty 17 7 0 10 -262144
 -1 -1;
-#X obj 450 370 float 42;
-#X obj 450 390 send the_answer;
-#X text 200 50 Use the arrow keys to move;
-#X text 200 80 Click 'f' to turn on the flashlight. When you hit an
-object that you can shoot you'll see an exclamation mark.;
-#X text 200 120 Click 'b' to shoot!;
-#X text 200 20 Level 1: Send the Answer;
-#X text 200 20 ________________________;
+#X obj 448 84 bng 42 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 448 291 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144
+-1 -1 0 1;
+#X msg 448 198 1 4242;
+#X msg 153 160 0;
+#X msg 153 202 1 2121;
+#X obj 153 243 line;
+#X obj 153 338 * 42;
+#X obj 153 264 vsl 15 64 0 1 0 0 empty empty empty 0 -9 0 10 -262144
+-1 -1 0 1;
+#X obj 153 359 select 42;
+#X obj 403 452 send the_answer;
+#X obj 448 171 trigger bang float;
+#X obj 153 181 trigger bang float;
+#X obj 153 390 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X text 200 20 Level 13: Line Dancing;
+#X text 200 20 ______________________;
 #X scalar foo \;;
 #X connect 2 0 1 0;
 #X connect 2 1 1 1;
-#X connect 4 0 5 0;
-#X connect 5 0 6 0;
+#X connect 4 0 12 0;
+#X connect 5 0 21 0;
+#X connect 6 0 8 0;
+#X connect 7 0 20 0;
+#X connect 8 0 7 1;
+#X connect 9 0 7 1;
+#X connect 9 1 6 0;
+#X connect 10 0 14 0;
+#X connect 11 0 5 0;
+#X connect 12 0 9 0;
+#X connect 13 0 4 0;
+#X connect 14 0 22 0;
+#X connect 15 0 16 0;
+#X connect 16 0 18 0;
+#X connect 17 0 19 0;
+#X connect 18 0 17 0;
+#X connect 19 0 7 0;
+#X connect 19 0 23 0;
+#X connect 21 0 13 0;
+#X connect 21 1 4 0;
+#X connect 22 0 15 0;
+#X connect 22 1 16 0;