20235
((3) 0 () 27 ((q lib "2htdp/image.rkt") (q lib "2htdp/universe.rkt") (q lib "2htdp/planetcute.rkt") (q lib "htdp/image.rkt") (q lib "htdp/gui.rkt") (q lib "htdp/dir.rkt") (q 10471 . 6) (q 37160 . 8) (q 42179 . 3) (q lib "htdp/big-draw.rkt") (q lib "2htdp/batch-io.rkt") (q lib "htdp/arrow.rkt") (q lib "htdp/arrow-gui.rkt") (q 4312 . 7) (q lib "htdp/matrix.rkt") (q lib "htdp/guess.rkt") (q lib "htdp/world.rkt") (q 126 . 6) (q lib "htdp/guess-gui.rkt") (q lib "htdp/lkup-gui.rkt") (q 10307 . 6) (q lib "teachpack/2htdp/image.rkt") (q lib "htdp/docs.rkt") (q 36520 . 7) (q lib "htdp/convert.rkt") (q lib "htdp/hangman.rkt") (q lib "htdp/graphing.rkt")) () (h ! (equal) ((c def c (c (? . 0) q make-pen)) c (? . 7)) ((c def c (c (? . 2) q roof-east)) q (46025 . 2)) ((c def c (c (? . 3) q image->alpha-color-list)) q (4627 . 3)) ((c def c (c (? . 0) q overlay)) q (30070 . 5)) ((c form c (c (? . 1) q name)) q (42420 . 4)) ((c def c (c (? . 4) q make-button)) q (11139 . 4)) ((c def c (c (? . 1) q stop-with)) c (? . 8)) ((c def c (c (? . 9) q on-key-event)) q (8768 . 3)) ((c def c (c (? . 2) q door-tall-open)) q (45993 . 2)) ((c form c (c (? . 1) q on-receive)) q (42755 . 4)) ((c def c (c (? . 19) q connect)) q (12084 . 3)) ((c def c (c (? . 0) q flip-horizontal)) q (34760 . 3)) ((c def c (c (? . 3) q image-inside?)) q (2440 . 4)) ((c def c (c (? . 5) q struct:file)) c (? . 6)) ((q def ((lib "htdp/hangman-play.rkt") go)) q (9454 . 3)) ((c def c (c (? . 1) q iworld1)) q (43040 . 2)) ((c def c (c (? . 1) q launch-many-worlds/proc)) q (44766 . 4)) ((c def c (c (? . 10) q write-file)) q (15174 . 4)) ((c form c (c (? . 1) q left)) q (41335 . 4)) ((c def c (c (? . 0) q pen-style?)) q (37397 . 3)) ((c def c (c (? . 12) q control)) q (11671 . 2)) ((c def c (c (? . 0) q overlay/offset)) q (30350 . 6)) ((c def c (c (? . 2) q shadow-south-west)) q (46494 . 2)) ((c def c (c (? . 4) q create-window)) q (10898 . 3)) ((c def c (c (? . 0) q overlay/pinhole)) q (37955 . 5)) ((c def c (c (? . 11) q control)) q (9849 . 7)) ((c def c (c (? . 0) q triangle/ssa)) q (22599 . 21)) ((c def c (c (? . 2) q gem-orange)) q (45618 . 2)) ((c def c (c (? . 0) q text/font)) q (17598 . 18)) ((c def c (c (? . 5) q file-content)) c (? . 6)) ((c def c (c (? . 15) q guess-with-gui-3)) q (6811 . 3)) ((c def c (c (? . 4) q hide-window)) q (11085 . 3)) ((c def c (c (? . 14) q matrix-cols)) q (12616 . 3)) ((c form c (c (? . 1) q on-key)) q (40549 . 4)) ((c def c (c (? . 22) q atom?)) q (10070 . 3)) ((c def c (c (? . 0) q image?)) q (36359 . 3)) ((c def c (c (? . 3) q color-list->image)) q (4105 . 7)) ((c def c (c (? . 2) q roof-south-west)) q (46179 . 2)) ((c def c (c (? . 0) q pen?)) c (? . 7)) ((c def c (c (? . 2) q shadow-east)) q (46296 . 2)) ((c def c (c (? . 3) q shrink-tr)) q (2736 . 5)) ((c def c (c (? . 0) q underlay/align/offset)) q (31368 . 13)) ((c def c (c (? . 3) q alpha-color-alpha)) c (? . 13)) ((c def c (c (? . 16) q big-bang)) q (5191 . 12)) ((c def c (c (? . 3) q color?)) c (? . 17)) ((c def c (c (? . 0) q bitmap/file)) q (35300 . 3)) ((c def c (c (? . 21) q struct:stop-with)) c (? . 8)) ((c def c (c (? . 9) q get-key-event)) q (8634 . 2)) ((c def c (c (? . 10) q read-lines)) q (14140 . 3)) ((c def c (c (? . 11) q control-up-down)) q (9679 . 6)) ((c def c (c (? . 3) q circle)) q (609 . 5)) ((c def c (c (? . 12) q connect)) q (11769 . 6)) ((c def c (c (? . 0) q flip-vertical)) q (34828 . 3)) ((c def c (c (? . 3) q scene+line)) q (3836 . 8)) ((c def c (c (? . 1) q make-mail)) q (43358 . 4)) ((c def c (c (? . 2) q chest-lid)) q (45510 . 2)) ((c def c (c (? . 3) q struct:alpha-color)) c (? . 13)) ((c def c (c (? . 9) q start)) q (7215 . 4)) ((c def c (c (? . 5) q struct:dir)) c (? . 20)) ((c def c (c (? . 9) q clear-circle)) q (8024 . 5)) ((c def c (c (? . 2) q yellow-star)) q (45820 . 2)) ((c def c (c (? . 0) q pen-width)) c (? . 7)) ((c def c (c (? . 18) q view)) q (12253 . 3)) ((c def c (c (? . 0) q scene+curve)) q (33863 . 21)) ((q def ((lib "htdp/elevator.rkt") run)) q (11879 . 3)) ((c def c (c (? . 3) q image-height)) q (1618 . 3)) ((c def c (c (? . 9) q end-of-time)) q (8949 . 2)) ((c def c (c (? . 0) q clear-pinhole)) q (37889 . 3)) ((c def c (c (? . 14) q matrix-render)) q (13658 . 3)) ((c def c (c (? . 0) q mode?)) q (36411 . 3)) ((c def c (c (? . 0) q ellipse)) q (16058 . 11)) ((c def c (c (? . 15) q guess-with-gui)) q (6709 . 3)) ((c def c (c (? . 0) q angle?)) q (36931 . 3)) ((c def c (c (? . 10) q read-words-and-numbers/line)) q (14505 . 3)) ((c def c (c (? . 10) q xexpr-as-string)) q (15528 . 3)) ((c def c (c (? . 9) q clear-solid-line)) q (8367 . 5)) ((c def c (c (? . 0) q image-baseline)) q (36261 . 3)) ((c def c (c (? . 16) q on-mouse-event)) q (5842 . 3)) ((c def c (c (? . 2) q stone-block-tall)) q (45299 . 2)) ((c def c (c (? . 0) q x-place?)) q (36877 . 3)) ((c def c (c (? . 0) q triangle/saa)) q (24926 . 21)) ((c def c (c (? . 0) q underlay/offset)) q (31246 . 6)) ((c form c (c (? . 1) q shift)) q (41573 . 4)) ((c def c (c (? . 1) q bundle?)) q (43118 . 3)) ((c def c (c (? . 9) q clear-all)) q (8558 . 2)) ((c def c (c (? . 0) q pen-cap?)) q (37453 . 3)) ((c def c (c (? . 0) q image-width)) q (36070 . 3)) ((c def c (c (? . 3) q alpha-color?)) c (? . 13)) ((c def c (c (? . 3) q image->color-list)) q (4032 . 3)) ((c def c (c (? . 2) q roof-south-east)) q (46146 . 2)) ((c def c (c (? . 2) q heart)) q (45646 . 2)) ((c def c (c (? . 14) q make-matrix)) q (12815 . 5)) ((c def c (c (? . 0) q center-pinhole)) q (37562 . 3)) ((c def c (c (? . 3) q image?)) q (0 . 3)) ((c def c (c (? . 3) q image-color?)) q (370 . 3)) ((c def c (c (? . 4) q make-message)) q (11257 . 3)) ((c def c (c (? . 5) q file)) c (? . 6)) ((c def c (c (? . 2) q door-tall-closed)) q (45959 . 2)) ((c def c (c (? . 2) q window-tall)) q (46267 . 2)) ((c def c (c (? . 1) q run-movie)) q (38956 . 4)) ((c def c (c (? . 3) q star)) q (1005 . 7)) ((c def c (c (? . 0) q bitmap/url)) q (35240 . 3)) ((c def c (c (? . 3) q text)) q (1451 . 5)) ((c def c (c (? . 3) q alpha-color)) c (? . 13)) ((c def c (c (? . 0) q underlay/align)) q (31068 . 7)) ((c def c (c (? . 0) q beside)) q (31868 . 5)) ((c def c (c (? . 3) q color)) c (? . 17)) ((c def c (c (? . 14) q matrix-set)) q (13343 . 6)) ((c def c (c (? . 2) q gem-blue)) q (45565 . 2)) ((c def c (c (? . 1) q package?)) q (42542 . 3)) ((c def c (c (? . 10) q xexpr?)) q (15477 . 3)) ((c def c (c (? . 16) q key-event?)) q (5619 . 3)) ((c def c (c (? . 2) q selector)) q (45712 . 2)) ((c def c (c (? . 24) q convert-repl)) q (6495 . 3)) ((c def c (c (? . 0) q place-image)) q (32678 . 6)) ((c def c (c (? . 18) q control)) q (12183 . 3)) ((c def c (c (? . 3) q rectangle)) q (426 . 6)) ((c def c (c (? . 3) q overlay)) q (2174 . 5)) ((c def c (c (? . 0) q square)) q (25679 . 9)) ((c def c (c (? . 9) q clear-solid-string)) q (8477 . 4)) ((q def ((lib "htdp/show-queen.rkt") show-queen)) q (12411 . 3)) ((c def c (c (? . 3) q struct:color)) c (? . 17)) ((c def c (c (? . 3) q empty-scene)) q (3311 . 4)) ((c def c (c (? . 9) q big-bang)) q (8693 . 4)) ((c form c (c (? . 1) q record?)) q (42309 . 4)) ((c def c (c (? . 0) q save-svg-image)) q (38461 . 7)) ((c def c (c (? . 9) q stop)) q (7407 . 2)) ((c def c (c (? . 14) q matrix?)) q (12496 . 3)) ((c def c (c (? . 0) q pinhole-y)) q (37813 . 3)) ((c def c (c (? . 2) q shadow-west)) q (46559 . 2)) ((c def c (c (? . 5) q create-dir)) q (10635 . 3)) ((c def c (c (? . 2) q character-horn-girl)) q (45011 . 2)) ((c def c (c (? . 2) q roof-north)) q (46118 . 2)) ((c def c (c (? . 0) q scale/xy)) q (34593 . 5)) ((c def c (c (? . 2) q rock)) q (45690 . 2)) ((c def c (c (? . 3) q color-blue)) c (? . 17)) ((c def c (c (? . 3) q move-pinhole)) q (1887 . 5)) ((c def c (c (? . 0) q scale)) q (34486 . 4)) ((c def c (c (? . 0) q side-count?)) q (36983 . 3)) ((c form c (c (? . 10) q simulate-file)) q (15664 . 2)) ((c def c (c (? . 0) q pen-style)) c (? . 7)) ((c def c (c (? . 0) q place-images)) q (33172 . 5)) ((c def c (c (? . 2) q shadow-south)) q (46529 . 2)) ((c def c (c (? . 1) q mouse-event?)) q (41653 . 3)) ((c def c (c (? . 1) q iworld-name)) q (42982 . 3)) ((c def c (c (? . 0) q triangle/aas)) q (23420 . 21)) ((c def c (c (? . 18) q connect)) q (12324 . 3)) ((c def c (c (? . 10) q read-words)) q (14260 . 3)) ((c def c (c (? . 0) q triangle/ass)) q (20957 . 21)) ((c form c (c (? . 1) q on-pad)) q (40875 . 4)) ((c def c (c (? . 1) q make-package)) q (42596 . 4)) ((c def c (c (? . 2) q character-pink-girl)) q (45048 . 2)) ((c def c (c (? . 14) q build-matrix)) q (12937 . 7)) ((c def c (c (? . 19) q view)) q (12013 . 3)) ((c def c (c (? . 5) q dir-files)) c (? . 20)) ((c def c (c (? . 2) q ramp-north)) q (45876 . 2)) ((c def c (c (? . 2) q key)) q (45669 . 2)) ((c form c (c (? . 0) q bitmap)) q (35161 . 5)) ((c def c (c (? . 1) q iworld3)) q (43092 . 2)) ((c def c (c (? . 4) q text-contents)) q (11460 . 3)) ((c form c (c (? . 1) q on-disconnect)) q (44402 . 4)) ((c def c (c (? . 3) q place-image)) q (3425 . 6)) ((c form c (c (? . 1) q universe)) q (43445 . 12)) ((c def c (c (? . 14) q matrix-ref)) q (13160 . 5)) ((c def c (c (? . 3) q image=?)) q (52 . 4)) ((c def c (c (? . 10) q read-plain-xexpr/web)) q (15352 . 3)) ((c def c (c (? . 2) q ramp-west)) q (45932 . 2)) ((c def c (c (? . 0) q scene+line)) q (33654 . 8)) ((c def c (c (? . 0) q frame)) q (35103 . 3)) ((c def c (c (? . 0) q triangle)) q (18283 . 11)) ((c def c (c (? . 0) q empty-scene)) q (32354 . 8)) ((c def c (c (? . 10) q read-plain-xexpr)) q (15059 . 3)) ((c def c (c (? . 1) q mail?)) q (43307 . 3)) ((c def c (c (? . 0) q struct:pen)) c (? . 7)) ((c def c (c (? . 0) q regular-polygon)) q (29065 . 17)) ((c def c (c (? . 2) q character-boy)) q (44944 . 2)) ((q def ((lib "htdp/master.rkt") master)) q (7047 . 3)) ((c def c (c (? . 0) q step-count?)) q (37040 . 3)) ((c def c (c (? . 21) q stop-with-w)) c (? . 8)) ((c def c (c (? . 16) q run-movie)) q (4907 . 4)) ((c def c (c (? . 10) q read-csv-file/rows)) q (14788 . 4)) ((c def c (c (? . 0) q color?)) c (? . 23)) ((c def c (c (? . 2) q stone-block)) q (45333 . 2)) ((c def c (c (? . 1) q key=?)) q (40469 . 4)) ((c def c (c (? . 26) q graph-line)) q (10794 . 4)) ((c def c (c (? . 2) q ramp-east)) q (45849 . 2)) ((c def c (c (? . 0) q place-image/align)) q (32808 . 13)) ((c def c (c (? . 3) q nw:rectangle)) q (3547 . 9)) ((c def c (c (? . 0) q line)) q (16508 . 5)) ((c def c (c (? . 0) q color-list->bitmap)) q (35444 . 5)) ((c def c (c (? . 4) q make-text)) q (11399 . 3)) ((c def c (c (? . 2) q chest-closed)) q (45480 . 2)) ((c def c (c (? . 2) q roof-west)) q (46240 . 2)) ((c def c (c (? . 9) q draw-solid-rect)) q (7632 . 6)) ((c def c (c (? . 10) q read-xexpr/web)) q (15292 . 3)) ((c def c (c (? . 10) q read-file)) q (13907 . 3)) ((c def c (c (? . 3) q ellipse)) q (733 . 6)) ((c def c (c (? . 16) q on-redraw)) q (5967 . 3)) ((c def c (c (? . 1) q LOCALHOST)) q (42673 . 2)) ((c def c (c (? . 1) q pad=?)) q (40795 . 4)) ((c def c (c (? . 19) q control)) q (11943 . 3)) ((c def c (c (? . 0) q underlay)) q (30964 . 5)) ((c def c (c (? . 4) q draw-message)) q (11321 . 4)) ((c def c (c (? . 3) q add-line)) q (2010 . 8)) ((c def c (c (? . 16) q run-simulation)) q (5008 . 6)) ((c def c (c (? . 3) q alpha-color-blue)) c (? . 13)) ((c def c (c (? . 16) q on-key-event)) q (5753 . 3)) ((c def c (c (? . 2) q grass-block)) q (45241 . 2)) ((c def c (c (? . 22) q annotation?)) q (10121 . 3)) ((c def c (c (? . 3) q shrink)) q (3090 . 7)) ((c def c (c (? . 0) q pen-join)) c (? . 7)) ((c def c (c (? . 2) q ramp-south)) q (45904 . 2)) ((c def c (c (? . 9) q draw-solid-line)) q (7774 . 5)) ((c def c (c (? . 9) q sleep-for-a-while)) q (7963 . 3)) ((c def c (c (? . 0) q triangle/sss)) q (20068 . 21)) ((c def c (c (? . 0) q overlay/align/offset)) q (30471 . 13)) ((c form c (c (? . 1) q on-msg)) q (43919 . 4)) ((c def c (c (? . 0) q color-red)) c (? . 23)) ((c def c (c (? . 1) q animate)) q (38745 . 3)) ((c def c (c (? . 3) q triangle)) q (914 . 5)) ((c def c (c (? . 0) q overlay/xy)) q (30847 . 6)) ((c def c (c (? . 9) q draw-circle)) q (7434 . 5)) ((c def c (c (? . 4) q show-window)) q (11031 . 3)) ((c def c (c (? . 3) q pinhole-x)) q (1677 . 3)) ((c def c (c (? . 10) q read-words/line)) q (14380 . 3)) ((c def c (c (? . 0) q pen-cap)) c (? . 7)) ((c form c (c (? . 1) q on-new)) q (43835 . 4)) ((c def c (c (? . 25) q hangman)) q (8988 . 5)) ((c def c (c (? . 3) q alpha-color-list->image)) q (4716 . 7)) ((c def c (c (? . 3) q alpha-color-red)) c (? . 13)) ((c def c (c (? . 2) q gem-green)) q (45591 . 2)) ((c def c (c (? . 0) q rhombus)) q (26588 . 14)) ((c def c (c (? . 0) q beside/align)) q (31970 . 6)) ((c def c (c (? . 0) q crop)) q (34894 . 7)) ((c def c (c (? . 0) q star-polygon)) q (27440 . 21)) ((c def c (c (? . 0) q underlay/pinhole)) q (38066 . 5)) ((c def c (c (? . 0) q star)) q (27086 . 9)) ((c def c (c (? . 5) q file?)) c (? . 6)) ((c def c (c (? . 16) q stop-when)) q (6045 . 3)) ((c def c (c (? . 1) q run-simulation)) q (38853 . 3)) ((c def c (c (? . 2) q water-block)) q (45423 . 2)) ((c def c (c (? . 0) q color-alpha)) c (? . 23)) ((c form c (c (? . 1) q state)) q (42358 . 4)) ((c form c (c (? . 1) q to-draw)) q (39748 . 4)) ((c def c (c (? . 2) q character-princess-girl)) q (45085 . 2)) ((c def c (c (? . 3) q regular-polygon)) q (1210 . 7)) ((c def c (c (? . 2) q roof-north-east)) q (46052 . 2)) ((c def c (c (? . 0) q make-color)) c (? . 23)) ((c def c (c (? . 0) q color)) c (? . 23)) ((c def c (c (? . 24) q convert-file)) q (6578 . 5)) ((c def c (c (? . 0) q pinhole-x)) q (37737 . 3)) ((c def c (c (? . 0) q put-pinhole)) q (37629 . 5)) ((c def c (c (? . 0) q pen-color)) c (? . 7)) ((c form c (c (? . 1) q check-with)) q (42233 . 4)) ((c def c (c (? . 2) q roof-north-west)) q (46085 . 2)) ((c def c (c (? . 22) q end-annotation)) q (10178 . 3)) ((c def c (c (? . 5) q file-size)) c (? . 6)) ((c def c (c (? . 0) q struct:color)) c (? . 23)) ((c def c (c (? . 0) q rectangle)) q (26039 . 14)) ((c def c (c (? . 2) q shadow-side-west)) q (46425 . 2)) ((c def c (c (? . 2) q wall-block-tall)) q (45362 . 2)) ((c form c (c (? . 1) q to-string)) q (44493 . 4)) ((c def c (c (? . 0) q above/align)) q (32213 . 6)) ((c form c (c (? . 1) q stop-when)) q (41955 . 4)) ((c def c (c (? . 2) q speech-bubble)) q (45153 . 2)) ((q def ((lib "htdp/master-play.rkt") go)) q (7163 . 3)) ((c def c (c (? . 1) q sexp?)) q (42491 . 3)) ((c def c (c (? . 25) q hangman-list)) q (9194 . 6)) ((c def c (c (? . 0) q polygon)) q (29722 . 9)) ((c def c (c (? . 10) q url-html-neighbors)) q (15589 . 3)) ((c def c (c (? . 0) q pen-join?)) q (37507 . 3)) ((c def c (c (? . 2) q plain-block)) q (45270 . 2)) ((c def c (c (? . 9) q start/cartesian-plane)) q (7303 . 4)) ((c def c (c (? . 0) q image-height)) q (36165 . 3)) ((c def c (c (? . 3) q shrink-bl)) q (2854 . 5)) ((c def c (c (? . 0) q color-green)) c (? . 23)) ((c form c (c (? . 1) q space)) q (41493 . 4)) ((c form c (c (? . 1) q right)) q (41413 . 4)) ((c form c (c (? . 1) q pad-handler)) q (40965 . 9)) ((c def c (c (? . 3) q shrink-tl)) q (2618 . 5)) ((c def c (c (? . 4) q choice-index)) q (11602 . 3)) ((c def c (c (? . 5) q make-dir)) c (? . 20)) ((c def c (c (? . 0) q rotate)) q (34399 . 4)) ((c def c (c (? . 4) q make-choice)) q (11521 . 3)) ((c def c (c (? . 10) q read-xexpr)) q (14950 . 3)) ((c def c (c (? . 5) q dir-dirs)) c (? . 20)) ((c def c (c (? . 26) q graph-fun)) q (10695 . 4)) ((c def c (c (? . 0) q triangle/asa)) q (24173 . 21)) ((c def c (c (? . 3) q pinhole-y)) q (1733 . 3)) ((c def c (c (? . 1) q iworld?)) q (42852 . 3)) ((c def c (c (? . 2) q brown-block)) q (45184 . 2)) ((c def c (c (? . 14) q matrix->rectangle)) q (12749 . 3)) ((c def c (c (? . 21) q stop-with?)) c (? . 8)) ((c def c (c (? . 3) q put-pinhole)) q (1789 . 5)) ((c def c (c (? . 10) q read-1strings)) q (14016 . 3)) ((c form c (c (? . 1) q on-mouse)) q (41795 . 6)) ((c def c (c (? . 9) q on-tick-event)) q (8867 . 3)) ((c def c (c (? . 9) q clear-solid-disk)) q (8122 . 5)) ((c def c (c (? . 3) q overlay/xy)) q (2287 . 6)) ((c def c (c (? . 0) q underlay/xy)) q (31750 . 6)) ((c def c (c (? . 2) q enemy-bug)) q (45126 . 2)) ((c def c (c (? . 3) q image-width)) q (1560 . 3)) ((c def c (c (? . 0) q image-color?)) q (36462 . 3)) ((c def c (c (? . 0) q text)) q (17441 . 5)) ((c form c (c (? . 1) q down)) q (41257 . 4)) ((c def c (c (? . 0) q right-triangle)) q (18702 . 17)) ((c def c (c (? . 2) q wall-block)) q (45395 . 2)) ((c def c (c (? . 3) q find-image)) q (2532 . 4)) ((c def c (c (? . 11) q control-left-right)) q (9506 . 6)) ((c def c (c (? . 2) q roof-south)) q (46212 . 2)) ((c def c (c (? . 0) q pen)) c (? . 7)) ((c def c (c (? . 3) q line)) q (1361 . 5)) ((c def c (c (? . 1) q mouse=?)) q (41709 . 4)) ((c def c (c (? . 9) q draw-solid-disk)) q (7531 . 5)) ((c def c (c (? . 0) q isosceles-triangle)) q (19407 . 17)) ((c def c (c (? . 0) q image->color-list)) q (35364 . 3)) ((c def c (c (? . 3) q alpha-color-green)) c (? . 13)) ((c def c (c (? . 16) q on-tick-event)) q (5545 . 3)) ((c def c (c (? . 2) q chest-open)) q (45537 . 2)) ((c def c (c (? . 5) q dir)) c (? . 20)) ((c def c (c (? . 14) q matrix-where?)) q (13547 . 4)) ((c def c (c (? . 1) q make-bundle)) q (43171 . 5)) ((c def c (c (? . 0) q color-blue)) c (? . 23)) ((c def c (c (? . 5) q dir-name)) c (? . 20)) ((c def c (c (? . 22) q write-file)) q (10245 . 3)) ((c def c (c (? . 9) q draw-solid-string)) q (7883 . 4)) ((c def c (c (? . 2) q shadow-north)) q (46395 . 2)) ((c def c (c (? . 0) q above)) q (32112 . 5)) ((c def c (c (? . 0) q real-valued-posn?)) q (37097 . 3)) ((c def c (c (? . 0) q radial-star)) q (28211 . 21)) ((c def c (c (? . 9) q wait-for-mouse-click)) q (8590 . 2)) ((c def c (c (? . 2) q tree-ugly)) q (45793 . 2)) ((c def c (c (? . 3) q scene?)) q (3259 . 3)) ((c def c (c (? . 5) q file-name)) c (? . 6)) ((c def c (c (? . 10) q url-exists?)) q (15418 . 3)) ((c def c (c (? . 5) q dir?)) c (? . 20)) ((c def c (c (? . 3) q color-green)) c (? . 17)) ((c def c (c (? . 3) q color-red)) c (? . 17)) ((c def c (c (? . 15) q guess-with-gui-list)) q (6930 . 3)) ((c def c (c (? . 0) q overlay/align)) q (30173 . 7)) ((c def c (c (? . 1) q iworld=?)) q (42905 . 4)) ((c def c (c (? . 2) q wood-block)) q (45452 . 2)) ((c form c (c (? . 1) q big-bang)) q (39057 . 20)) ((c form c (c (? . 1) q up)) q (41183 . 4)) ((c def c (c (? . 3) q make-color)) c (? . 17)) ((c def c (c (? . 24) q convert-gui)) q (6413 . 3)) ((c form c (c (? . 1) q launch-many-worlds)) q (44721 . 2)) ((c def c (c (? . 5) q make-file)) c (? . 6)) ((c def c (c (? . 10) q read-csv-file)) q (14657 . 3)) ((c def c (c (? . 0) q save-image)) q (38178 . 7)) ((c def c (c (? . 2) q character-cat-girl)) q (44975 . 2)) ((c def c (c (? . 2) q shadow-north-east)) q (46325 . 2)) ((c def c (c (? . 14) q matrix-rows)) q (12549 . 3)) ((c def c (c (? . 1) q pad-event?)) q (40741 . 3)) ((c def c (c (? . 14) q rectangle->matrix)) q (12683 . 3)) ((c def c (c (? . 2) q dirt-block)) q (45213 . 2)) ((c def c (c (? . 0) q add-curve)) q (16848 . 21)) ((c def c (c (? . 12) q view)) q (11704 . 3)) ((c def c (c (? . 2) q tree-tall)) q (45766 . 2)) ((c def c (c (? . 0) q place-images/align)) q (33314 . 11)) ((c def c (c (? . 2) q tree-short)) q (45738 . 2)) ((c form c (c (? . 1) q register)) q (42701 . 4)) ((c def c (c (? . 2) q shadow-south-east)) q (46459 . 2)) ((c def c (c (? . 3) q shrink-br)) q (2972 . 5)) ((c def c (c (? . 3) q make-alpha-color)) c (? . 13)) ((c def c (c (? . 0) q empty-image)) q (18254 . 2)) ((c def c (c (? . 1) q iworld2)) q (43066 . 2)) ((c def c (c (? . 3) q List-of-color)) q (4002 . 2)) ((c form c (c (? . 1) q on-release)) q (40639 . 4)) ((c form c (c (? . 1) q on-tick)) q (40002 . 4)) ((c def c (c (? . 14) q matrix-minor)) q (13720 . 5)) ((c def c (c (? . 1) q key-event?)) q (40415 . 3)) ((c def c (c (? . 0) q triangle/sas)) q (21778 . 21)) ((c def c (c (? . 0) q circle)) q (15706 . 9)) ((c def c (c (? . 16) q key=?)) q (5673 . 4)) ((c def c (c (? . 2) q shadow-north-west)) q (46360 . 2)) ((c def c (c (? . 0) q y-place?)) q (36823 . 3)) ((c def c (c (? . 0) q freeze)) q (35647 . 13)) ((c def c (c (? . 4) q window?)) q (10978 . 3)) ((c def c (c (? . 9) q clear-solid-rect)) q (8224 . 6)) ((c def c (c (? . 0) q add-line)) q (16641 . 8))))
procedure
(image? x) -> boolean?
  x : any/c
procedure
(image=? x y) -> boolean?
  x : image?
  y : image?
struct
(struct color (red green blue)
        #:extra-constructor-name make-color)
  red : (and/c natural-number/c (<=/c 255))
  green : (and/c natural-number/c (<=/c 255))
  blue : (and/c natural-number/c (<=/c 255))
procedure
(image-color? x) -> boolean?
  x : any
procedure
(rectangle w h m c) -> image?
  w : (and/c number? (or/c zero? positive?))
  h : (and/c number? (or/c zero? positive?))
  m : Mode
  c : Color
procedure
(circle r m c) -> image?
  r : (and/c number? (or/c zero? positive?))
  m : Mode
  c : Color
procedure
(ellipse w h m c) -> image?
  w : (and/c number? (or/c zero? positive?))
  h : (and/c number? (or/c zero? positive?))
  m : Mode
  c : Color
procedure
(triangle s m c) -> image?
  s : number?
  m : Mode
  c : Color
procedure
(star n outer inner m c) -> image?
  n : (and/c number? (>=/c 2))
  outer : (and/c number? (>=/c 1))
  inner : (and/c number? (>=/c 1))
  m : Mode
  c : Color
procedure
(regular-polygon s r m c [angle]) -> image?
  s : side
  r : number?
  m : Mode
  c : Color
  angle : real? = 0
procedure
(line x y c) -> image?
  x : number?
  y : number?
  c : Color
procedure
(text s f c) -> Image
  s : string?
  f : (and/c number? positive?)
  c : Color
procedure
(image-width i) -> integer?
  i : image?
procedure
(image-height i) -> integer?
  i : image?
procedure
(pinhole-x i) -> integer?
  i : image?
procedure
(pinhole-y i) -> integer?
  i : image?
procedure
(put-pinhole i x y) -> image?
  i : image?
  x : number?
  y : number?
procedure
(move-pinhole i delta-x delta-y) -> image?
  i : image?
  delta-x : number?
  delta-y : number?
procedure
(add-line i x1 y1 x2 y2 c) -> image?
  i : image?
  x1 : number?
  y1 : number?
  x2 : number?
  y2 : number?
  c : Color
procedure
(overlay img img2 img* ...) -> image?
  img : image?
  img2 : image?
  img* : image?
procedure
(overlay/xy img delta-x delta-y other) -> image?
  img : image?
  delta-x : number?
  delta-y : number?
  other : image?
procedure
(image-inside? img other) -> boolean?
  img : image?
  other : image?
procedure
(find-image img other) -> posn?
  img : image?
  other : image?
procedure
(shrink-tl img width height) -> image?
  img : image?
  width : number?
  height : number?
procedure
(shrink-tr img width height) -> image?
  img : image?
  width : number?
  height : number?
procedure
(shrink-bl img width height) -> image?
  img : image?
  width : number?
  height : number?
procedure
(shrink-br img width height) -> image?
  img : image?
  width : number?
  height : number?
procedure
(shrink img left above right below) -> image?
  img : image?
  left : number?
  above : number?
  right : number?
  below : number?
procedure
(scene? x) -> boolean?
  x : any/c
procedure
(empty-scene width height) -> scene?
  width : natural-number/c
  height : natural-number/c
procedure
(place-image img x y s) -> scene?
  img : image?
  x : number?
  y : number?
  s : scene?
procedure
(nw:rectangle width                
              height               
              solid-or-outline     
              c)               -> image?
  width : natural-number/c
  height : natural-number/c
  solid-or-outline : Mode
  c : Color
procedure
(scene+line s x0 y0 x1 y1 c) -> scene?
  s : scene?
  x0 : number?
  y0 : number?
  x1 : number?
  y1 : number?
  c : Color
value
List-of-color : list?
procedure
(image->color-list img) -> List-of-color
  img : image?
procedure
(color-list->image l width height x y) -> image?
  l : List-of-color
  width : natural-number/c
  height : natural-number/c
  x : natural-number/c
  y : natural-number/c
struct
(struct alpha-color (alpha red green blue)
        #:extra-constructor-name make-alpha-color)
  alpha : (and/c natural-number/c (<=/c 255))
  red : (and/c natural-number/c (<=/c 255))
  green : (and/c natural-number/c (<=/c 255))
  blue : (and/c natural-number/c (<=/c 255))
procedure
(image->alpha-color-list img) -> (list-of alpha-color?)
  img : image?
procedure
(alpha-color-list->image l width height x y) -> image?
  l : (list-of alpha-color?)
  width : integer?
  height : integer?
  x : integer?
  y : integer?
procedure
(run-movie r m) -> true
  r : (and/c real? positive?)
  m : [Listof image?]
procedure
(run-simulation w h r create-image) -> true
  w : natural-number/c
  h : natural-number/c
  r : number?
  create-image : (-> natural-number/c scene)
procedure
(big-bang width height r world0) -> true
  width : natural-number/c
  height : natural-number/c
  r : number?
  world0 : World
(big-bang width height r world0 animated-gif?) -> true
  width : natural-number/c
  height : natural-number/c
  r : number?
  world0 : World
  animated-gif? : boolean?
procedure
(on-tick-event tock) -> true
  tock : (-> World World)
procedure
(key-event? x) -> boolean?
  x : any
procedure
(key=? x y) -> boolean?
  x : key-event?
  y : key-event?
procedure
(on-key-event change) -> true
  change : (-> World key-event? World)
procedure
(on-mouse-event clack) -> true
  clack : (-> World natural-number/c natural-number/c MouseEvent World)
procedure
(on-redraw to-scene) -> true
  to-scene : (-> World Scene)
procedure
(stop-when last-world?) -> true
  last-world? : (-> World boolean?)

given statedesired state
’locked    ’locked
’closed    ’closed
’open      ’closed

given stategiven keyeventdesired state
’locked    #\u           ’closed
’closed    #\l           ’locked
’closed    #\space       ’open
’open      —             ’open
procedure
(convert-gui convert) -> true
  convert : (-> number? number?)
procedure
(convert-repl convert) -> true
  convert : (-> number? number?)
procedure
(convert-file in convert out) -> true
  in : string?
  convert : (-> number? number?)
  out : string?
procedure
(guess-with-gui check-guess) -> true
  check-guess : (-> number? number? symbol?)
procedure
(guess-with-gui-3 check-guess) -> true
  check-guess : (-> digit? digit? digit? number? symbol?)
procedure
(guess-with-gui-list check-guess) -> true
  check-guess : (-> (list-of digit?) number? symbol?)
procedure
(master check-guess) -> symbol?
  check-guess : (-> symbol? symbol? symbol? symbol? boolean?)
procedure
(go name) -> true
  name : symbol?
procedure
(start width height) -> true
  width : number?
  height : number?
procedure
(start/cartesian-plane width height) -> true
  width : number?
  height : number?
procedure
(stop) -> true
procedure
(draw-circle p r c) -> true
  p : posn?
  r : number?
  c : DrawColor
procedure
(draw-solid-disk p r c) -> true
  p : posn?
  r : number?
  c : DrawColor
procedure
(draw-solid-rect ul width height c) -> true
  ul : posn?
  width : number?
  height : number?
  c : DrawColor
procedure
(draw-solid-line strt end c) -> true
  strt : posn?
  end : posn?
  c : DrawColor
procedure
(draw-solid-string p s) -> true
  p : posn?
  s : string?
procedure
(sleep-for-a-while s) -> true
  s : number?
procedure
(clear-circle p r c) -> true
  p : posn?
  r : number?
  c : DrawColor
procedure
(clear-solid-disk p r c) -> true
  p : posn?
  r : number?
  c : DrawColor
procedure
(clear-solid-rect ul width height c) -> true
  ul : posn?
  width : number?
  height : number?
  c : DrawColor
procedure
(clear-solid-line strt end c) -> true
  strt : posn?
  end : posn?
  c : DrawColor
procedure
(clear-solid-string p s) -> true
  p : posn?
  s : string?
procedure
(clear-all) -> true
procedure
(wait-for-mouse-click) -> posn?
procedure
(get-key-event) -> (or/c false DrawKeyEvent)
procedure
(big-bang n w) -> true
  n : number?
  w : DrawWorld
procedure
(on-key-event change) -> true
  change : (-> DrawKeyEvent DrawWorld DrawWorld)
procedure
(on-tick-event tock) -> true
  tock : (-> DrawWorld DrawWorld)
procedure
(end-of-time) -> DrawWorld
procedure
(hangman make-word reveal draw-next-part) -> true
  make-word : (-> symbol? symbol? symbol? word?)
  reveal : (-> word? word? word?)
  draw-next-part : (-> symbol? true)
procedure
(hangman-list reveal-for-list     
              draw-next-part) -> true
  reveal-for-list : (-> symbol? (list-of symbol?) (list-of symbol?)
                        (list-of symbol?))
  draw-next-part : (-> symbol? true)
procedure
(go name) -> true
  name : symbol?
procedure
(control-left-right shape n move draw) -> true
  shape : Shape
  n : number?
  move : (-> number? Shape Shape)
  draw : (-> Shape true)
procedure
(control-up-down shape n move draw) -> true
  shape : Shape
  n : number?
  move : (-> number? Shape Shape)
  draw : (-> Shape true)
procedure
(control shape n move-lr move-ud draw) -> true
  shape : Shape
  n : number?
  move-lr : (-> number? Shape Shape)
  move-ud : (-> number? Shape Shape)
  draw : (-> Shape true)
procedure
(atom? x) -> boolean?
  x : any/c
procedure
(annotation? x) -> boolean?
  x : any/c
procedure
(end-annotation x) -> Annotation
  x : Annotation
procedure
(write-file l) -> true
  l : (list-of atom)
struct
(struct dir (name dirs files)
        #:extra-constructor-name make-dir)
  name : symbol?
  dirs : (listof dir?)
  files : (listof file?)
struct
(struct file (name size content)
        #:extra-constructor-name make-file)
  name : symbol?
  size : integer?
  content : (listof char?)
procedure
(create-dir path) -> dir?
  path : symbol?
procedure
(graph-fun f color) -> true
  f : (-> number?  number?)
  color : symbol?
procedure
(graph-line line color) -> true
  line : (-> number? number?)
  color : symbol?
procedure
(create-window g) -> Window
  g : (listof (listof GUI-ITEM))
procedure
(window? x) -> boolean?
  x : any/c
procedure
(show-window w) -> true
  w : Window
procedure
(hide-window w) -> true
  w : window
procedure
(make-button label callback) -> GUI-ITEM
  label : string>
  callback : (-> event%  boolean)
procedure
(make-message msg) -> GUI-ITEM
  msg : string?
procedure
(draw-message g m) -> true
  g : GUI-ITEM
  m : string?
procedure
(make-text txt) -> GUI-ITEM
  txt : string?
procedure
(text-contents g) -> string?
  g : GUI-ITEM
procedure
(make-choice choices) -> GUI-ITEM
  choices : (listof string?)
procedure
(choice-index g) -> natural-number/c
  g : GUI-ITEM
procedure
(control) -> symbol?
procedure
(view s) -> true
  s : (or/c string? symbol?)
procedure
(connect l r u d) -> true
  l : modelT
  r : modelT
  u : modelT
  d : modelT
procedure
(run NextFloor) -> any/c
  NextFloor : number?
procedure
(control index) -> symbol?
  index : natural-number?
procedure
(view msg) -> true/c
  msg : (or/c string? symbol?)
procedure
(connect event-handler) -> true/c
  event-handler : (-> button% event% true/c)
procedure
(control index) -> symbol?
  index : natural-number?
procedure
(view msg) -> true/c
  msg : (or/c string? symbol?)
procedure
(connect handler) -> true/c
  handler : (-> button% event% true/c)
procedure
(show-queen board) -> true
  board : (list-of (list-of boolean?))
procedure
(matrix? o) -> boolean?
  o : any/c
procedure
(matrix-rows m) -> natural-number/c
  m : matrix?
procedure
(matrix-cols m) -> natural-number/c
  m : matrix?
procedure
(rectangle->matrix r) -> matrix?
  r : Rectangle
procedure
(matrix->rectangle m) -> Rectangle
  m : matrix?
procedure
(make-matrix n m l) -> matrix?
  n : natural-number/c
  m : natural-number/c
  l : (Listof X)
procedure
(build-matrix n m f) -> matrix?
  n : natural-number/c
  m : natural-number/c
  f : (-> (and/c natural-number/c (</c m))
          (and/c natural-number/c (</c n))
          any/c)
procedure
(matrix-ref m i j) -> any/c
  m : matrix?
  i : (and/c natural-number/c (</c (matrix-rows m)))
  j : (and/c natural-number/c (</c (matrix-rows m)))
procedure
(matrix-set m i j x) -> matrix?
  m : matrix?
  i : (and/c natural-number/c (</c (matrix-rows m)))
  j : (and/c natural-number/c (</c (matrix-rows m)))
  x : any/c
procedure
(matrix-where? m pred?) -> (listof posn?)
  m : matrix?
  pred? : (-> any/c boolean?)
procedure
(matrix-render m) -> Rectangle
  m : matrix?
procedure
(matrix-minor m i j) -> matrix?
  m : matrix?
  i : (and/c natural-number/c (</c (matrix-rows m)))
  j : (and/c natural-number/c (</c (matrix-rows m)))
procedure
(read-file f) -> string?
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-1strings f) -> (listof 1string?)
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-lines f) -> (listof string?)
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-words f) -> (listof string?)
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-words/line f) -> (listof string?)
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-words-and-numbers/line f) -> (listof (or number? string?))
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-csv-file f) -> (listof (listof any/c))
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-csv-file/rows f s) -> (listof X?)
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
  s : (-> (listof any/c) X?)
procedure
(read-xexpr f) -> xexpr?
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(read-plain-xexpr f) -> xexpr?
  f : (or/c 'standard-in 'stdin (and/c string? file-exists?))
procedure
(write-file f cntnt) -> string?
  f : (or/c 'standard-out 'stdout string?)
  cntnt : string?
procedure
(read-xexpr/web u) -> xexpr?
  u : string?
procedure
(read-plain-xexpr/web u) -> xexpr?
  u : string?
procedure
(url-exists? u) -> boolean?
  u : string?
procedure
(xexpr? u) -> boolean?
  u : any?
procedure
(xexpr-as-string x) -> string?
  x : xexpr?
procedure
(url-html-neighbors u) -> (listof string?)
  u : string?
syntax
(simulate-file process str ...)
procedure
(circle radius mode color) -> image?
  radius : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(circle radius outline-mode pen-or-color) -> image?
  radius : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(ellipse width height mode color) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(ellipse width height mode pen-or-color) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  mode : (or/c 'outline "outline")
  pen-or-color : (or/c image-color? pen?)
procedure
(line x1 y1 pen-or-color) -> image?
  x1 : real?
  y1 : real?
  pen-or-color : (or/c pen? image-color?)
procedure
(add-line image x1 y1 x2 y2 pen-or-color) -> image?
  image : image?
  x1 : real?
  y1 : real?
  x2 : real?
  y2 : real?
  pen-or-color : (or/c pen? image-color?)
procedure
(add-curve image             
           x1                
           y1                
           angle1            
           pull1             
           x2                
           y2                
           angle2            
           pull2             
           pen-or-color) -> image?
  image : image?
  x1 : real?
  y1 : real?
  angle1 : angle?
  pull1 : real?
  x2 : real?
  y2 : real?
  angle2 : angle?
  pull2 : real?
  pen-or-color : (or/c pen? image-color?)
procedure
(text string font-size color) -> image?
  string : string?
  font-size : (and/c integer? (<=/c 1 255))
  color : image-color?
procedure
(text/font string          
           font-size       
           color           
           face            
           family          
           style           
           weight          
           underline?) -> image?
  string : string?
  font-size : (and/c integer? (<=/c 1 255))
  color : image-color?
  face : (or/c string? #f)
  family : (or/c 'default 'decorative 'roman 'script
                 'swiss 'modern 'symbol 'system)
  style : (or/c 'normal 'italic 'slant)
  weight : (or/c 'normal 'bold 'light)
  underline? : any/c
value
empty-image : image?
procedure
(triangle side-length mode color) -> image?
  side-length : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(triangle side-length       
          outline-mode      
          pen-or-color) -> image?
  side-length : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(right-triangle side-length1     
                side-length2     
                mode             
                color)       -> image?
  side-length1 : (and/c real? (not/c negative?))
  side-length2 : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(right-triangle side-length1      
                side-length2      
                outline-mode      
                pen-or-color) -> image?
  side-length1 : (and/c real? (not/c negative?))
  side-length2 : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(isosceles-triangle side-length     
                    angle           
                    mode            
                    color)      -> image?
  side-length : (and/c real? (not/c negative?))
  angle : angle?
  mode : mode?
  color : image-color?
(isosceles-triangle side-length       
                    angle             
                    outline-mode      
                    pen-or-color) -> image?
  side-length : (and/c real? (not/c negative?))
  angle : angle?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/sss side-length-a     
              side-length-b     
              side-length-c     
              mode              
              color)        -> image?
  side-length-a : (and/c real? (not/c negative?))
  side-length-b : (and/c real? (not/c negative?))
  side-length-c : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(triangle/sss side-length-a     
              side-length-b     
              side-length-c     
              outline-mode      
              pen-or-color) -> image?
  side-length-a : (and/c real? (not/c negative?))
  side-length-b : (and/c real? (not/c negative?))
  side-length-c : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/ass angle-a           
              side-length-b     
              side-length-c     
              mode              
              color)        -> image?
  angle-a : angle?
  side-length-b : (and/c real? (not/c negative?))
  side-length-c : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(triangle/ass angle-a           
              side-length-b     
              side-length-c     
              outline-mode      
              pen-or-color) -> image?
  angle-a : angle?
  side-length-b : (and/c real? (not/c negative?))
  side-length-c : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/sas side-length-a     
              angle-b           
              side-length-c     
              mode              
              color)        -> image?
  side-length-a : (and/c real? (not/c negative?))
  angle-b : angle?
  side-length-c : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(triangle/sas side-length-a     
              angle-b           
              side-length-c     
              outline-mode      
              pen-or-color) -> image?
  side-length-a : (and/c real? (not/c negative?))
  angle-b : angle?
  side-length-c : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/ssa side-length-a     
              side-length-b     
              angle-c           
              mode              
              color)        -> image?
  side-length-a : (and/c real? (not/c negative?))
  side-length-b : (and/c real? (not/c negative?))
  angle-c : angle?
  mode : mode?
  color : image-color?
(triangle/ssa side-length-a     
              side-length-b     
              angle-c           
              outline-mode      
              pen-or-color) -> image?
  side-length-a : (and/c real? (not/c negative?))
  side-length-b : (and/c real? (not/c negative?))
  angle-c : angle?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/aas angle-a           
              angle-b           
              side-length-c     
              mode              
              color)        -> image?
  angle-a : angle?
  angle-b : angle?
  side-length-c : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(triangle/aas angle-a           
              angle-b           
              side-length-c     
              outline-mode      
              pen-or-color) -> image?
  angle-a : angle?
  angle-b : angle?
  side-length-c : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/asa angle-a           
              side-length-b     
              angle-c           
              mode              
              color)        -> image?
  angle-a : angle?
  side-length-b : (and/c real? (not/c negative?))
  angle-c : angle?
  mode : mode?
  color : image-color?
(triangle/asa angle-a           
              side-length-b     
              angle-c           
              outline-mode      
              pen-or-color) -> image?
  angle-a : angle?
  side-length-b : (and/c real? (not/c negative?))
  angle-c : angle?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(triangle/saa side-length-a     
              angle-b           
              angle-c           
              mode              
              color)        -> image?
  side-length-a : (and/c real? (not/c negative?))
  angle-b : angle?
  angle-c : angle?
  mode : mode?
  color : image-color?
(triangle/saa side-length-a     
              angle-b           
              angle-c           
              outline-mode      
              pen-or-color) -> image?
  side-length-a : (and/c real? (not/c negative?))
  angle-b : angle?
  angle-c : angle?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(square side-len mode color) -> image?
  side-len : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(square side-len outline-mode pen-or-color) -> image?
  side-len : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(rectangle width height mode color) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(rectangle width             
           height            
           outline-mode      
           pen-or-color) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(rhombus side-length angle mode color) -> image?
  side-length : (and/c real? (not/c negative?))
  angle : angle?
  mode : mode?
  color : image-color?
(rhombus side-length       
         angle             
         outline-mode      
         pen-or-color) -> image?
  side-length : (and/c real? (not/c negative?))
  angle : angle?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(star side-length mode color) -> image?
  side-length : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(star side-length outline-mode color) -> image?
  side-length : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  color : (or/c pen? image-color?)
procedure
(star-polygon side-length     
              side-count      
              step-count      
              mode            
              color)      -> image?
  side-length : (and/c real? (not/c negative?))
  side-count : side-count?
  step-count : step-count?
  mode : mode?
  color : image-color?
(star-polygon side-length       
              side-count        
              step-count        
              outline-mode      
              pen-or-color) -> image?
  side-length : (and/c real? (not/c negative?))
  side-count : side-count?
  step-count : step-count?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(radial-star point-count      
             inner-radius     
             outer-radius     
             mode             
             color)       -> image?
  point-count : (and/c integer? (>=/c 2))
  inner-radius : (and/c real? (not/c negative?))
  outer-radius : (and/c real? (not/c negative?))
  mode : mode?
  color : image-color?
(radial-star point-count       
             inner-radius      
             outer-radius      
             outline-mode      
             pen-or-color) -> image?
  point-count : (and/c integer? (>=/c 2))
  inner-radius : (and/c real? (not/c negative?))
  outer-radius : (and/c real? (not/c negative?))
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(regular-polygon side-length     
                 side-count      
                 mode            
                 color)      -> image?
  side-length : (and/c real? (not/c negative?))
  side-count : side-count?
  mode : mode?
  color : image-color?
(regular-polygon side-length       
                 side-count        
                 outline-mode      
                 pen-or-color) -> image?
  side-length : (and/c real? (not/c negative?))
  side-count : side-count?
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(polygon vertices mode color) -> image?
  vertices : (listof real-valued-posn?)
  mode : mode?
  color : image-color?
(polygon vertices outline-mode pen-or-color) -> image?
  vertices : (listof real-valued-posn?)
  outline-mode : (or/c 'outline "outline")
  pen-or-color : (or/c pen? image-color?)
procedure
(overlay i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(overlay/align x-place y-place i1 i2 is ...) -> image?
  x-place : x-place?
  y-place : y-place?
  i1 : image?
  i2 : image?
  is : image?
procedure
(overlay/offset i1 x y i2) -> image?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(overlay/align/offset x-place     
                      y-place     
                      i1          
                      x           
                      y           
                      i2)     -> image?
  x-place : x-place?
  y-place : y-place?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(overlay/xy i1 x y i2) -> image?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(underlay i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(underlay/align x-place y-place i1 i2 is ...) -> image?
  x-place : x-place?
  y-place : y-place?
  i1 : image?
  i2 : image?
  is : image?
procedure
(underlay/offset i1 x y i2) -> image?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(underlay/align/offset x-place     
                       y-place     
                       i1          
                       x           
                       y           
                       i2)     -> image?
  x-place : x-place?
  y-place : y-place?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(underlay/xy i1 x y i2) -> image?
  i1 : image?
  x : real?
  y : real?
  i2 : image?
procedure
(beside i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(beside/align y-place i1 i2 is ...) -> image?
  y-place : y-place?
  i1 : image?
  i2 : image?
  is : image?
procedure
(above i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(above/align x-place i1 i2 is ...) -> image?
  x-place : x-place?
  i1 : image?
  i2 : image?
  is : image?
procedure
(empty-scene width height) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
(empty-scene width height color) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  color : image-color?
procedure
(place-image image x y scene) -> image?
  image : image?
  x : real?
  y : real?
  scene : image?
procedure
(place-image/align image       
                   x           
                   y           
                   x-place     
                   y-place     
                   scene)  -> image?
  image : image?
  x : real?
  y : real?
  x-place : x-place?
  y-place : y-place?
  scene : image?
procedure
(place-images images posns scene) -> image?
  images : (listof image?)
  posns : (listof posn?)
  scene : image?
procedure
(place-images/align images      
                    posns       
                    x-place     
                    y-place     
                    scene)  -> image?
  images : (listof image?)
  posns : (listof posn?)
  x-place : x-place?
  y-place : y-place?
  scene : image?
procedure
(scene+line scene x1 y1 x2 y2 pen-or-color) -> image?
  scene : image?
  x1 : real?
  y1 : real?
  x2 : real?
  y2 : real?
  pen-or-color : (or/c pen? image-color?)
procedure
(scene+curve scene      
             x1         
             y1         
             angle1     
             pull1      
             x2         
             y2         
             angle2     
             pull2      
             color) -> image?
  scene : image?
  x1 : real?
  y1 : real?
  angle1 : angle?
  pull1 : real?
  x2 : real?
  y2 : real?
  angle2 : angle?
  pull2 : real?
  color : (or/c pen? image-color?)
procedure
(rotate angle image) -> image?
  angle : angle?
  image : image?
procedure
(scale factor image) -> image?
  factor : (and/c real? positive?)
  image : image?
procedure
(scale/xy x-factor y-factor image) -> image?
  x-factor : (and/c real? positive?)
  y-factor : (and/c real? positive?)
  image : image?
procedure
(flip-horizontal image) -> image?
  image : image?
procedure
(flip-vertical image) -> image?
  image : image?
procedure
(crop x y width height image) -> image?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  image : image?
procedure
(frame image) -> image?
  image : image?
syntax
(bitmap bitmap-spec)
 
bitmap-spec = rel-string
            | id
procedure
(bitmap/url url) -> image?
  url : string?
procedure
(bitmap/file ps) -> image?
  ps : path-string?
procedure
(image->color-list image) -> (listof color?)
  image : image?
procedure
(color-list->bitmap colors width height) -> image?
  colors : (listof image-color?)
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
procedure
(freeze image) -> image?
  image : image?
(freeze width height image) -> image?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  image : image?
(freeze x y width height image) -> image?
  x : real?
  y : real?
  width : (and/c real? (not/c negative?))
  height : (and/c real? (not/c negative?))
  image : image?
procedure
(image-width i) -> (and/c integer? (not/c negative?) exact?)
  i : image?
procedure
(image-height i) -> (and/c integer? (not/c negative?) exact?)
  i : image?
procedure
(image-baseline i) -> (and/c integer? (not/c negative?) exact?)
  i : image?
procedure
(image? x) -> boolean?
  x : any/c
procedure
(mode? x) -> boolean?
  x : any/c
procedure
(image-color? x) -> boolean?
  x : any/c
struct
(struct color (red green blue alpha)
        #:extra-constructor-name make-color)
  red : (and/c natural-number/c (<=/c 255))
  green : (and/c natural-number/c (<=/c 255))
  blue : (and/c natural-number/c (<=/c 255))
  alpha : (and/c natural-number/c (<=/c 255))
procedure
(y-place? x) -> boolean?
  x : any/c
procedure
(x-place? x) -> boolean?
  x : any/c
procedure
(angle? x) -> boolean?
  x : any/c
procedure
(side-count? x) -> boolean?
  x : any/c
procedure
(step-count? x) -> boolean?
  x : any/c
procedure
(real-valued-posn? x) -> boolean?
  x : any/c
struct
(struct pen (color width style cap join)
        #:extra-constructor-name make-pen)
  color : image-color?
  width : (and/c real? (<=/c 0 255))
  style : pen-style?
  cap : pen-cap?
  join : pen-join?
procedure
(pen-style? x) -> boolean?
  x : any/c
procedure
(pen-cap? x) -> boolean?
  x : any/c
procedure
(pen-join? x) -> boolean?
  x : any/c
procedure
(center-pinhole image) -> image?
  image : image?
procedure
(put-pinhole x y image) -> image?
  x : integer?
  y : integer?
  image : image?
procedure
(pinhole-x image) -> (or/c integer? #f)
  image : image?
procedure
(pinhole-y image) -> (or/c integer? #f)
  image : image?
procedure
(clear-pinhole image) -> image?
  image : image?
procedure
(overlay/pinhole i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(underlay/pinhole i1 i2 is ...) -> image?
  i1 : image?
  i2 : image?
  is : image?
procedure
(save-image image filename [width height]) -> boolean?
  image : image?
  filename : path-string?
  width : (and/c real? (not/c negative?)) = (image-width image)
  height : (and/c real? (not/c negative?))
         = (image-height image)
procedure
(save-svg-image image filename [width height]) -> void?
  image : image?
  filename : path-string?
  width : (and/c real? (not/c negative?)) = (image-width image)
  height : (and/c real? (not/c negative?))
         = (image-height image)
procedure
(animate create-image) -> natural-number/c
  create-image : (-> natural-number/c scene?)
procedure
(run-simulation create-image) -> true
  create-image : (-> natural-number/c scene?)
procedure
(run-movie r m) -> true
  r : (and/c real? positive?)
  m : [Listof image?]
syntax
(big-bang state-expr clause ...)
 
clause = (on-tick tick-expr)
       | (on-tick tick-expr rate-expr)
       | (on-tick tick-expr rate-expr limit-expr)
       | (on-key key-expr)
       | (on-pad pad-expr)
       | (on-release release-expr)
       | (on-mouse mouse-expr)
       | (to-draw draw-expr)
       | (to-draw draw-expr width-expr height-expr)
       | (stop-when stop-expr)
       | (stop-when stop-expr last-scene-expr)
       | (check-with world?-expr)
       | (record? r-expr)
       | (state boolean-expr)
       | (on-receive rec-expr)
       | (register IP-expr)
       | (name name-expr)
syntax
(to-draw render-expr)
 
  render-expr : (-> WorldState scene?)
syntax
(to-draw render-expr width-expr height-expr)
 
  render-expr : (-> WorldState scene?)
  width-expr : natural-number/c
  height-expr : natural-number/c
syntax
(on-tick tick-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(on-tick tick-expr rate-expr)
 
  tick-expr : (-> WorldState HandlerResult)
  rate-expr : (and/c real? positive?)
syntax
(on-tick tick-expr rate-expr limit-expr)
 
  tick-expr : (-> WorldState HandlerResult)
  rate-expr : (and/c real? positive?)
  limit-expr : (and/c integer? positive?)
procedure
(key-event? x) -> boolean?
  x : any
procedure
(key=? x y) -> boolean?
  x : key-event?
  y : key-event?
syntax
(on-key key-expr)
 
  key-expr : (-> WorldState key-event? HandlerResult)
syntax
(on-release release-expr)
 
  release-expr : (-> WorldState key-event? HandlerResult)
procedure
(pad-event? x) -> boolean?
  x : any
procedure
(pad=? x y) -> boolean?
  x : pad-event?
  y : pad-event?
syntax
(on-pad pad-expr)
 
  pad-expr : (-> WorldState pad-event? HandlerResult)
syntax
(pad-handler clause ...)
 
clause = (up up-expr)
       | (down down-expr)
       | (left left-expr)
       | (right right-expr)
       | (space space-expr)
       | (shift shift-expr)
syntax
(up up-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(down down-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(left left-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(right right-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(space space-expr)
 
  tick-expr : (-> WorldState HandlerResult)
syntax
(shift shift-expr)
 
  tick-expr : (-> WorldState HandlerResult)
procedure
(mouse-event? x) -> boolean?
  x : any
procedure
(mouse=? x y) -> boolean?
  x : mouse-event?
  y : mouse-event?
syntax
(on-mouse mouse-expr)
 
  mouse-expr : (-> WorldState
                   integer? integer? MouseEvent
                   HandlerResult)
syntax
(stop-when last-world?)
 
  last-world? : (-> WorldState boolean?)
syntax
(stop-when last-world? last-picture)
 
  last-world? : (-> WorldState boolean?)
  last-picture : (-> WorldState scene?)
struct
(struct stop-with (w))
  w : HandlerResult
syntax
(check-with world-expr?)
 
  world-expr? : (-> Any boolean?)
syntax
(record? r-expr)
 
  r-expr : any/c
syntax
(state boolean-expr)
 
  boolean-expr : boolean?
syntax
(name name-expr)
 
  name-expr : (or/c symbol? string?)
procedure
(sexp? x) -> boolean?
  x : any/c
procedure
(package? x) -> boolean?
  x : any/c
procedure
(make-package w m) -> package?
  w : any/c
  m : sexp?
value
LOCALHOST : string?
syntax
(register ip-expr)
 
  ip-expr : string?
syntax
(on-receive receive-expr)
 
  receive-expr : (-> WorldState sexp? HandlerResult)
procedure
(iworld? x) -> boolean?
  x : any/c
procedure
(iworld=? u v) -> boolean?
  u : iworld?
  v : iworld?
procedure
(iworld-name w) -> string?
  w : iworld?
value
iworld1 : iworld?
value
iworld2 : iworld?
value
iworld3 : iworld?
procedure
(bundle? x) -> boolean?
  x : any/c
procedure
(make-bundle state mails low) -> bundle?
  state : any/c
  mails : (listof mail?)
  low : (listof iworld?)
procedure
(mail? x) -> boolean?
  x : any/c
procedure
(make-mail to content) -> mail?
  to : iworld?
  content : sexp?
syntax
(universe state-expr clause ...)
 
clause = (on-new new-expr)
       | (on-msg msg-expr)
       | (on-tick tick-expr)
       | (on-tick tick-expr rate-expr)
       | (on-tick tick-expr rate-expr limit-expr)
       | (on-disconnect dis-expr)
       | (state boolean-expr)
       | (to-string render-expr)
       | (check-with universe?-expr)
syntax
(on-new new-expr)
 
  new-expr : (-> UniverseState iworld? bundle?)
syntax
(on-msg msg-expr)
 
  msg-expr : (-> UniverseState iworld? sexp? bundle?)
syntax
(on-tick tick-expr)
 
  tick-expr : (-> UniverseState bundle?)
syntax
(on-tick tick-expr rate-expr)
 
  tick-expr : (-> UniverseState bundle?)
  rate-expr : (and/c real? positive?)
syntax
(on-tick tick-expr rate-expr)
 
  tick-expr : (-> UniverseState bundle?)
  rate-expr : (and/c real? positive?)
  limit-expr : (and/c integer? positive?)
syntax
(on-disconnect dis-expr)
 
  dis-expr : (-> UniverseState iworld? bundle?)
syntax
(to-string render-expr)
 
  render-expr : (-> UniverseState string?)
syntax
(check-with universe?-expr)
 
  universe?-expr : (-> Any boolean?)
syntax
(state boolean-expr)
 
  boolean-expr : boolean?
syntax
(launch-many-worlds expression ...)
procedure
(launch-many-worlds/proc thunk-that-runs-a-world     
                         ...)                    -> any ...
  thunk-that-runs-a-world : (-> any/c)
value
character-boy : image?
value
character-cat-girl : image?
value
character-horn-girl : image?
value
character-pink-girl : image?
value
character-princess-girl : image?
value
enemy-bug : image?
value
speech-bubble : image?
value
brown-block : image?
value
dirt-block : image?
value
grass-block : image?
value
plain-block : image?
value
stone-block-tall : image?
value
stone-block : image?
value
wall-block-tall : image?
value
wall-block : image?
value
water-block : image?
value
wood-block : image?
value
chest-closed : image?
value
chest-lid : image?
value
chest-open : image?
value
gem-blue : image?
value
gem-green : image?
value
gem-orange : image?
value
heart : image?
value
key : image?
value
rock : image?
value
selector : image?
value
tree-short : image?
value
tree-tall : image?
value
tree-ugly : image?
value
yellow-star : image?
value
ramp-east : image?
value
ramp-north : image?
value
ramp-south : image?
value
ramp-west : image?
value
door-tall-closed : image?
value
door-tall-open : image?
value
roof-east : image?
value
roof-north-east : image?
value
roof-north-west : image?
value
roof-north : image?
value
roof-south-east : image?
value
roof-south-west : image?
value
roof-south : image?
value
roof-west : image?
value
window-tall : image?
value
shadow-east : image?
value
shadow-north-east : image?
value
shadow-north-west : image?
value
shadow-north : image?
value
shadow-side-west : image?
value
shadow-south-east : image?
value
shadow-south-west : image?
value
shadow-south : image?
value
shadow-west : image?

World Style           Universe Style
  (require htdp/world)  (require 2htdp/universe)
                        (require htdp/image)

World Style           Universe Style
  (require htdp/world)  (require 2htdp/universe)
                        (require htdp/image)

World Style                        Universe Style
  ; Number -> Scene                  ; Number -> Scene
  (define (create-UFO-scene height)  (define (create-UFO-scene height)
    (htdp:place-image                  (htdp:place-image
      UFO                                UFO
      50 height                          50 height
      (htdp:empty-scene 100 100)))       (htdp:empty-scene 100 100)))

World Style               Universe Style
  ; Scene                   ; Scene
  (define UFO               (define UFO
    (htdp:overlay             (htdp:overlay
      (htdp:circle              (htdp:circle
       10 'solid 'red)           10 "solid" "red")
      (htdp:rectangle           (htdp:rectangle
       40 4 'solid 'red)))       40 4 "solid" "red")))

World Style                        Universe Style
  (htdp:big-bang 100 100 (/1 28) 0)  (2htdp:big-bang
  (htdp:on-tick-event add1)            0
  (htdp:on-redraw create-UFO-scene)    (on-tick add1)
                                       (on-draw create-UFO-scene))

World Style                      Universe Style
  (define (change w a-key-event)   (define (change w a-key-event)
    (cond                            (cond
      [(key=? a-key-event 'left)       [(key=? a-key-event "left")
       (world-go w -DELTA)]             (world-go w -DELTA)]
      [(key=? a-key-event 'right)      [(key=? a-key-event "right")
       (world-go w +DELTA)]             (world-go w +DELTA)]
      [(char? a-key-event)             [(= (string-length a-key-event) 1)
       w]                               w]
      [(key=? a-key-event 'up)         [(key=? a-key-event "up")
       (world-go w -DELTA)]             (world-go w -DELTA)]
      [(key=? a-key-event 'down)       [(key=? a-key-event "down")
       (world-go w +DELTA)]             (world-go w +DELTA)]
      [else                            [else
       w]))                             w]))

World Style           Universe Style
  (require htdp/image)  (require 2htdp/image)

World Style           Universe Style
  (require htdp/world)  (require 2htdp/universe)
                        (require 2htdp/image)

World Style               Universe Style
  (htdp:overlay             (2htdp:underlay
   (htdp:rectangle           (2htdp:rectangle
    10 20 "solid" "red")      10 20 "solid" "red")
   (htdp:rectangle           (2htdp:rectangle
    20 10 "solid" "blue"))    20 10 "solid" "blue"))

World Style                              Universe Style
  (htdp:overlay                            (2htdp:underlay/align
   (htdp:put-pinhole                        "left"
    (htdp:rectangle 10 20 "solid" "red")    "top"
    0 0)                                    (2htdp:rectangle
   (htdp:put-pinhole                         10 20 "solid" "red")
    (htdp:rectangle 20 10 "solid" "blue")   (2htdp:rectangle
    0 0))                                    20 10 "solid" "blue"))

World Style                Universe Style
  (htdp:rectangle            (2htdp:rectangle
   11 11 "outline" "black")   10 10 "outline" "black")
