(ex:import-libraries-for-run '(((rnrs base) 0)) '(&build~0~3309) 0) (define ex:make-variable-transformer #f) (define ex:identifier? #f) (define ex:bound-identifier=? #f) (define ex:free-identifier=? #f) (define ex:generate-temporaries #f) (define ex:datum->syntax #f) (define ex:syntax->datum #f) (define ex:environment #f) (define ex:environment-bindings #f) (define ex:eval #f) (define ex:syntax-violation #f) (define ex:expand-file #f) (define ex:repl #f) (define ex:expand-r5rs-file #f) (define ex:invalid-form #f) (define ex:register-macro! #f) (define ex:syntax-rename #f) (define ex:map-while #f) (define ex:dotted-length #f) (define ex:dotted-butlast #f) (define ex:dotted-last #f) (define ex:uncompress #f) (define ex:free=? #f) ((lambda (&*toplevel-env*~0~3761) ((lambda (&*usage-env*~0~3764) ((lambda (&*phase*~0~3767) ((lambda (&*color*~0~3770) ((lambda (&*macro-table*~0~3773) ((lambda (&*env-table*~0~3776) ((lambda (&*current-library*~0~3779) ((lambda (&*used*~0~3782) ((lambda (&*trace*~0~3785) ((lambda (&*syntax-reflected*~0~3788) ((lambda (&:identifier~0~3791) ((lambda (&make-identifier~0~3794) ((lambda (&make-library-language~0~3939 &library-language-names~0~3938 &source->syntax~0~3937 &toplevel-template~0~3936 &write-file~0~3935 &read-file~0~3934 &normalize~0~3933 &expand-r5rs-file~0~3932 &expand-file~0~3931 &expand-toplevel-sequence~0~3930 &reset-toplevel!~0~3929 &repl~0~3928 &invalid-form~0~3927 &check~0~3926 &compose~0~3925 &list->string~0~3924 &drop-tail~0~3923 &unionv~0~3922 &check-set?~0~3921 &map-while~0~3920 &dotted-last~0~3919 &dotted-butlast~0~3918 &dotted-length~0~3917 &dotted-map~0~3916 &dotted-memp~0~3915 &sexp-map~0~3914 &flatten~0~3913 &format-mapping~0~3912 &environment-bindings~0~3911 &r6rs-eval~0~3910 &environment~0~3909 &r6rs-environment-env~0~3908 &r6rs-environment-imported-libraries~0~3907 &make-r6rs-environment~0~3906 &eval-template~0~3905 &syntax-debug~0~3904 &syntax-violation~0~3903 &subversion-condition?~0~3902 &subversion-reference?~0~3901 &version-reference?~0~3900 &subversion?~0~3899 &version?~0~3898 &library-ref-helper~0~3897 &library-ref~0~3896 &scan-library-name~0~3895 &unify-imports~0~3894 &compose-levels~0~3893 &scan-levels~0~3892 &scan-import-spec~0~3891 &scan-imports~0~3890 &scan-export-set~0~3889 &scan-exports~0~3888 &import-libraries-for-expand~0~3887 ¤t-builds~0~3886 &env-import!~0~3885 &expand-library-or-program~0~3884 &expand-library~0~3883 &expand-program~0~3882 &check-used~0~3881 &merge-used-with-parent-frame!~0~3880 ®ister-use!~0~3879 &add-fresh-used-frame!~0~3878 &segment-tail~0~3877 &segment-depth~0~3876 &free-meta-variables~0~3875 &process-template~0~3874 &expand-syntax~0~3873 &process-clauses~0~3872 &expand-syntax-case~0~3871 &check-expression-body~0~3870 &check-valid-definition~0~3869 &check-toplevel~0~3868 &check-expression-sequence~0~3867 &parse-local-syntax~0~3866 &parse-definition~0~3865 &emit-body~0~3864 &scan-sequence~0~3863 &wrap-exp~0~3862 &wrap-env~0~3861 &make-wrap~0~3860 &formals?~0~3859 &expand-lambda~0~3858 &expand-or~0~3857 &expand-and~0~3856 &expand-local-syntax~0~3855 &expand-begin~0~3854 &expand-set!~0~3853 &expand-if~0~3852 &expand-quote~0~3851 &check-implicit-import-of-mutable~0~3850 &operator-binding~0~3849 &head-expand~0~3848 &expand~0~3847 &invoke-macro~0~3846 ®ister-macro!~0~3845 &binding->macro~0~3844 &make-user-macro~0~3843 &make-variable-transformer~0~3842 &make-transformer~0~3841 &make-expander~0~3840 ¯o-proc~0~3839 ¯o-type~0~3838 &make-macro~0~3837 &rename~0~3836 &generate-temporaries~0~3835 &syntax->datum~0~3834 &datum->syntax~0~3833 &syntax-rename~0~3832 &syntax-reflect~0~3831 &uncompress~0~3830 &compress~0~3829 &env-reify~0~3828 &env-reflect~0~3827 &duplicate?~0~3826 &env-lookup~0~3825 &env-extend!~0~3824 &env-extend~0~3823 &make-unit-env~0~3822 &make-null-env~0~3821 &check-binding-level~0~3820 &source-level~0~3819 &make-toplevel-mapping~0~3818 &make-local-mapping~0~3817 &binding~0~3816 &binding-mutable-set!~0~3815 &binding-library~0~3814 &binding-dimension~0~3813 &binding-mutable?~0~3812 &binding-levels~0~3811 &binding-name~0~3810 &binding-type~0~3809 &make-binding~0~3808 &generate-color~0~3807 &make-free-name~0~3806 &generate-guid~0~3805 &free=?~0~3804 &free-identifier=?~0~3803 &bound-identifier=?~0~3802 &id-library~0~3801 &id-maybe-library~0~3800 &id-displacement~0~3799 &id-transformer-envs~0~3798 &id-colors~0~3797 &id-name~0~3796 &identifier?~0~3795) (set! &identifier?~0~3795 (record-predicate &:identifier~0~3791)) (set! &id-name~0~3796 (record-accessor &:identifier~0~3791 0)) (set! &id-colors~0~3797 (record-accessor &:identifier~0~3791 1)) (set! &id-transformer-envs~0~3798 (record-accessor &:identifier~0~3791 2)) (set! &id-displacement~0~3799 (record-accessor &:identifier~0~3791 3)) (set! &id-maybe-library~0~3800 (record-accessor &:identifier~0~3791 4)) (set! &id-library~0~3801 (lambda (&id~0~11107) (let ((x (&id-maybe-library~0~3800 &id~0~11107))) (if x x &*current-library*~0~3779)))) (set! &bound-identifier=?~0~3802 (lambda (&x~0~11100 &y~0~11101) (&check~0~3926 &x~0~11100 &identifier?~0~3795 'bound-identifier=?) (&check~0~3926 &y~0~11101 &identifier?~0~3795 'bound-identifier=?) (if (eq? (&id-name~0~3796 &x~0~11100) (&id-name~0~3796 &y~0~11101)) (equal? (&id-colors~0~3797 &x~0~11100) (&id-colors~0~3797 &y~0~11101)) #f))) (set! &free-identifier=?~0~3803 (lambda (&x~0~11076 &y~0~11077) (&check~0~3926 &x~0~11076 &identifier?~0~3795 'free-identifier=?) (&check~0~3926 &y~0~11077 &identifier?~0~3795 'free-identifier=?) ((lambda (&bx~0~11080 &by~0~11081) ((lambda (&result~0~11084) (if &result~0~11084 (if &bx~0~11080 (begin (&check-binding-level~0~3820 &x~0~11076 &bx~0~11080) (&check-binding-level~0~3820 &y~0~11077 &by~0~11081)) #f) #f) (if &result~0~11084 (if (®ister-use!~0~3879 &x~0~11076 &bx~0~11080) (®ister-use!~0~3879 &y~0~11077 &by~0~11081) #f) #f) &result~0~11084) (if &bx~0~11080 (if &by~0~11081 (eq? (&binding-name~0~3810 &bx~0~11080) (&binding-name~0~3810 &by~0~11081)) #f) (if (not &by~0~11081) (eq? (&id-name~0~3796 &x~0~11076) (&id-name~0~3796 &y~0~11077)) #f)))) (&binding~0~3816 &x~0~11076) (&binding~0~3816 &y~0~11077)))) (set! &free=?~0~3804 (lambda (&x~0~11058 &symbol~0~11059) (if (&identifier?~0~3795 &x~0~11058) ((lambda (&bx~0~11064) ((lambda (&result~0~11067) (if &result~0~11067 (if &bx~0~11064 (&check-binding-level~0~3820 &x~0~11058 &bx~0~11064) #f) #f) (if &result~0~11067 (®ister-use!~0~3879 &x~0~11058 &bx~0~11064) #f) &result~0~11067) (if &bx~0~11064 (eq? (&binding-name~0~3810 &bx~0~11064) &symbol~0~11059) #f))) (&binding~0~3816 &x~0~11058)) #f))) (set! &generate-guid~0~3805 ((lambda (&token~0~11052 &ticks~0~11053) (lambda (&symbol~0~11055) (set! &ticks~0~11053 (+ &ticks~0~11053 1)) (string->symbol (string-append ex:guid-prefix (symbol->string &symbol~0~11055) "~" &token~0~11052 "~" (number->string &ticks~0~11053))))) (ex:unique-token) 0)) (set! &make-free-name~0~3806 (lambda (&symbol~0~11049) (string->symbol (string-append ex:free-prefix (symbol->string &symbol~0~11049))))) (set! &generate-color~0~3807 (lambda () (&generate-guid~0~3805 'c))) (set! &make-binding~0~3808 (lambda (&type~0~11041 &name~0~11042 &levels~0~11043 &content~0~11044 &library~0~11045) (list &type~0~11041 &name~0~11042 &levels~0~11043 &content~0~11044 &library~0~11045))) (set! &binding-type~0~3809 (lambda (&b~0~11039) (car &b~0~11039))) (set! &binding-name~0~3810 (lambda (&b~0~11037) (cadr &b~0~11037))) (set! &binding-levels~0~3811 (lambda (&b~0~11035) (caddr &b~0~11035))) (set! &binding-mutable?~0~3812 (lambda (&b~0~11033) (cadddr &b~0~11033))) (set! &binding-dimension~0~3813 (lambda (&b~0~11031) (cadddr &b~0~11031))) (set! &binding-library~0~3814 (lambda (&b~0~11029) (car (cddddr &b~0~11029)))) (set! &binding-mutable-set!~0~3815 (lambda (&b~0~11026 &x~0~11027) (set-car! (cdddr &b~0~11026) &x~0~11027))) (set! &binding~0~3816 (lambda (&id~0~11001) ((lambda (&name~0~11004) (((lambda (&loop~0~11010) ((lambda (&temp~0~11013) (set! &loop~0~11010 &temp~0~11013) ((lambda () &loop~0~11010))) (lambda (&env~0~11018 &envs~0~11019 &colors~0~11020) (let ((x (&env-lookup~0~3825 (cons &name~0~11004 &colors~0~11020) &env~0~11018))) (if x x (if (pair? &envs~0~11019) (&loop~0~11010 (&env-reify~0~3828 (car &envs~0~11019)) (cdr &envs~0~11019) (cdr &colors~0~11020)) #f)))))) ex:undefined) &*usage-env*~0~3764 (&id-transformer-envs~0~3798 &id~0~11001) (&id-colors~0~3797 &id~0~11001))) (&id-name~0~3796 &id~0~11001)))) (set! &make-local-mapping~0~3817 (lambda (&type~0~10997 &id~0~10998 &content~0~10999) (cons (cons (&id-name~0~3796 &id~0~10998) (&id-colors~0~3797 &id~0~10998)) (&make-binding~0~3808 &type~0~10997 (&generate-guid~0~3805 (&id-name~0~3796 &id~0~10998)) (list (&source-level~0~3819 &id~0~10998)) &content~0~10999 &*current-library*~0~3779)))) (set! &make-toplevel-mapping~0~3818 (lambda (&type~0~10991 &id~0~10992 &content~0~10993) (if (null? (&id-colors~0~3797 &id~0~10992)) (cons (cons (&id-name~0~3796 &id~0~10992) (&id-colors~0~3797 &id~0~10992)) (&make-binding~0~3808 &type~0~10991 (&make-free-name~0~3806 (&id-name~0~3796 &id~0~10992)) '(0) &content~0~10993 &*current-library*~0~3779)) (&make-local-mapping~0~3817 &type~0~10991 &id~0~10992 &content~0~10993)))) (set! &source-level~0~3819 (lambda (&id~0~10989) (- &*phase*~0~3767 (&id-displacement~0~3799 &id~0~10989)))) (set! &check-binding-level~0~3820 (lambda (&id~0~10979 &binding~0~10980) (if &binding~0~10980 (let ((x (memv (&source-level~0~3819 &id~0~10979) (&binding-levels~0~3811 &binding~0~10980)))) (if x x (&syntax-violation~0~3903 "invalid reference" (string-append "Attempt to use binding of " (symbol->string (&id-name~0~3796 &id~0~10979)) " in library (" (&list->string~0~3924 (&id-library~0~3801 &id~0~10979) " ") ") at invalid level " (number->string (&source-level~0~3819 &id~0~10979)) ". Binding is only available at levels: " (&list->string~0~3924 (&binding-levels~0~3811 &binding~0~10980) " ")) &id~0~10979))) (let ((x (if (null? (&id-library~0~3801 &id~0~10979)) (= &*phase*~0~3767 0) #f))) (if x x (&syntax-violation~0~3903 "invalid reference" (string-append "No binding available for " (symbol->string (&id-name~0~3796 &id~0~10979)) " in library (" (&list->string~0~3924 (&id-library~0~3801 &id~0~10979) " ") ")") &id~0~10979)))))) (set! &make-null-env~0~3821 (lambda () '())) (set! &make-unit-env~0~3822 (lambda () (&env-extend~0~3823 '() (&make-null-env~0~3821)))) (set! &env-extend~0~3823 (lambda (&mappings~0~10972 &env~0~10973) (cons (list &mappings~0~10972) &env~0~10973))) (set! &env-extend!~0~3824 (lambda (&mappings~0~10966 &env~0~10967) ((lambda (&frame~0~10970) (set-car! &frame~0~10970 (append &mappings~0~10966 (car &frame~0~10970)))) (car &env~0~10967)))) (set! &env-lookup~0~3825 (lambda (&key~0~10952 &env~0~10953) (if (pair? &env~0~10953) (let ((x ((lambda (&probe~0~10959) (if &probe~0~10959 (let ((x (cdr &probe~0~10959))) (if x x (&syntax-violation~0~3903 #f "Out of context reference to identifier" (car &key~0~10952)))) #f)) (assoc &key~0~10952 (caar &env~0~10953))))) (if x x (&env-lookup~0~3825 &key~0~10952 (cdr &env~0~10953)))) #f))) (set! &duplicate?~0~3826 (lambda (&id~0~10949 &env~0~10950) (assoc (cons (&id-name~0~3796 &id~0~10949) (&id-colors~0~3797 &id~0~10949)) (caar &env~0~10950)))) (set! &env-reflect~0~3827 (lambda (&env~0~10936) (if (if (not (null? &*env-table*~0~3776)) (eq? &env~0~10936 (cdar &*env-table*~0~3776)) #f) (begin (caar &*env-table*~0~3776)) (begin ((lambda (&key~0~10945) (set! &*env-table*~0~3776 (cons (cons &key~0~10945 &env~0~10936) &*env-table*~0~3776)) &key~0~10945) (&generate-guid~0~3805 'env)))))) (set! &env-reify~0~3828 (lambda (&key-or-env~0~10933) (if (symbol? &key-or-env~0~10933) (cdr (assq &key-or-env~0~10933 &*env-table*~0~3776)) &key-or-env~0~10933))) (set! &compress~0~3829 (lambda (&env-table~0~10899) ((lambda (&frame-table~0~10902 &count~0~10903) (for-each (lambda (&entry~0~10924) (for-each (lambda (&frame~0~10926) (if (not (assq &frame~0~10926 &frame-table~0~10902)) (begin (set! &frame-table~0~10902 (cons (cons &frame~0~10926 &count~0~10903) &frame-table~0~10902)) (set! &count~0~10903 (+ 1 &count~0~10903))))) (cdr &entry~0~10924))) &env-table~0~10899) (cons (map (lambda (&env-entry~0~10905) (cons (car &env-entry~0~10905) (map (lambda (&frame~0~10907) (cdr (assq &frame~0~10907 &frame-table~0~10902))) (cdr &env-entry~0~10905)))) &env-table~0~10899) (map (lambda (&frame-entry~0~10909) (cons (cdr &frame-entry~0~10909) (list (map (lambda (&mapping~0~10911) (cons (car &mapping~0~10911) ((lambda (&binding~0~10914) ((lambda (&t~0~10918) (if (memv &t~0~10918 '(pattern-variable)) (begin #f) (begin &binding~0~10914))) (&binding-type~0~3809 &binding~0~10914))) (cdr &mapping~0~10911)))) (caar &frame-entry~0~10909))))) &frame-table~0~10902))) '() 0))) (set! &uncompress~0~3830 (lambda (&compressed-env-table~0~10893) (map (lambda (&env-entry~0~10895) (cons (car &env-entry~0~10895) (map (lambda (&frame-abbrev~0~10897) (cdr (assv &frame-abbrev~0~10897 (cdr &compressed-env-table~0~10893)))) (cdr &env-entry~0~10895)))) (car &compressed-env-table~0~10893)))) (set! &syntax-reflect~0~3831 (lambda (&id~0~10884) (set! &*syntax-reflected*~0~3788 #t) (list 'ex:syntax-rename (list 'quote (&id-name~0~3796 &id~0~10884)) (list 'quote (&id-colors~0~3797 &id~0~10884)) (list 'quote (cons (&env-reflect~0~3827 &*usage-env*~0~3764) (&id-transformer-envs~0~3798 &id~0~10884))) (- (- &*phase*~0~3767 (&id-displacement~0~3799 &id~0~10884)) 1) (list 'quote (&id-library~0~3801 &id~0~10884))))) (set! &syntax-rename~0~3832 (lambda (&name~0~10878 &colors~0~10879 &transformer-envs~0~10880 &transformer-phase~0~10881 &source-library~0~10882) (&make-identifier~0~3794 &name~0~10878 (cons &*color*~0~3770 &colors~0~10879) &transformer-envs~0~10880 (- &*phase*~0~3767 &transformer-phase~0~10881) &source-library~0~10882))) (set! &datum->syntax~0~3833 (lambda (&tid~0~10868 &datum~0~10869) (&check~0~3926 &tid~0~10868 &identifier?~0~3795 'datum->syntax) (&sexp-map~0~3914 (lambda (&leaf~0~10871) (if (symbol? &leaf~0~10871) (begin (&make-identifier~0~3794 &leaf~0~10871 (&id-colors~0~3797 &tid~0~10868) (&id-transformer-envs~0~3798 &tid~0~10868) (&id-displacement~0~3799 &tid~0~10868) (&id-maybe-library~0~3800 &tid~0~10868))) (begin &leaf~0~10871))) &datum~0~10869))) (set! &syntax->datum~0~3834 (lambda (&exp~0~10857) (&sexp-map~0~3914 (lambda (&leaf~0~10859) (if (&identifier?~0~3795 &leaf~0~10859) (begin (&id-name~0~3796 &leaf~0~10859)) (if (symbol? &leaf~0~10859) (begin (assertion-violation 'syntax->datum "A symbol is not a valid syntax object" &leaf~0~10859)) (begin &leaf~0~10859)))) &exp~0~10857))) (set! &generate-temporaries~0~3835 (lambda (&ls~0~10851) (&check~0~3926 &ls~0~10851 list? 'generate-temporaries) (map (lambda (&ignore~0~10853) (&make-identifier~0~3794 'temp (list (&generate-color~0~3807)) (list (&make-null-env~0~3821)) &*phase*~0~3767 #f)) &ls~0~10851))) (set! &rename~0~3836 (lambda (&type~0~10845 &symbol~0~10846) (&make-identifier~0~3794 &symbol~0~10846 (list &*color*~0~3770) (list (&env-extend~0~3823 (list (cons (cons &symbol~0~10846 '()) (&make-binding~0~3808 &type~0~10845 &symbol~0~10846 '(0) #f '()))) (&make-null-env~0~3821))) &*phase*~0~3767 #f))) (set! &make-macro~0~3837 (lambda (&type~0~10842 &proc~0~10843) (list &type~0~10842 &proc~0~10843))) (set! ¯o-type~0~3838 car) (set! ¯o-proc~0~3839 cadr) (set! &make-expander~0~3840 (lambda (&proc~0~10839) (&make-macro~0~3837 'expander &proc~0~10839))) (set! &make-transformer~0~3841 (lambda (&proc~0~10836) (&make-macro~0~3837 'transformer &proc~0~10836))) (set! &make-variable-transformer~0~3842 (lambda (&proc~0~10833) (&make-macro~0~3837 'variable-transformer &proc~0~10833))) (set! &make-user-macro~0~3843 (lambda (&procedure-or-macro~0~10830) (if (procedure? &procedure-or-macro~0~10830) (&make-transformer~0~3841 &procedure-or-macro~0~10830) &procedure-or-macro~0~10830))) (set! &binding->macro~0~3844 (lambda (&binding~0~10821 &t~0~10822) ((lambda (&t~0~10826) (if &t~0~10826 (cdr &t~0~10826) (begin (&syntax-violation~0~3903 #f "Reference to macro keyword out of context" &t~0~10822)))) (assq (&binding-name~0~3810 &binding~0~10821) &*macro-table*~0~3773)))) (set! ®ister-macro!~0~3845 (lambda (&binding-name~0~10817 &procedure-or-macro~0~10818) (set! &*macro-table*~0~3773 (cons (cons &binding-name~0~10817 (&make-user-macro~0~3843 &procedure-or-macro~0~10818)) &*macro-table*~0~3773)))) (set! &invoke-macro~0~3846 (lambda (¯o~0~10813 &t~0~10814) (set! &*color*~0~3770 (&generate-color~0~3807)) ((¯o-proc~0~3839 ¯o~0~10813) &t~0~10814))) (set! &expand~0~3847 (lambda (&t~0~10758) ((lambda (&saved~0~10762) (set! &*trace*~0~3785 (cons &t~0~10758 &*trace*~0~3785)) (call-with-values (lambda () ((lambda (&binding~0~10767) (if &binding~0~10767 (begin ((lambda (&t~0~10774) (if (memv &t~0~10774 '(macro)) (begin ((lambda (¯o~0~10780) ((lambda (&expanded-once~0~10783) ((lambda (&t~0~10787) (if (memv &t~0~10787 '(expander)) (begin &expanded-once~0~10783) (begin (&expand~0~3847 &expanded-once~0~10783)))) (¯o-type~0~3838 ¯o~0~10780))) (&invoke-macro~0~3846 ¯o~0~10780 &t~0~10758))) (&binding->macro~0~3844 &binding~0~10767 &t~0~10758))) (if (memv &t~0~10774 '(variable)) (begin (&check-implicit-import-of-mutable~0~3850 &binding~0~10767 &t~0~10758) (if (list? &t~0~10758) (cons (&binding-name~0~3810 &binding~0~10767) (map &expand~0~3847 (cdr &t~0~10758))) (&binding-name~0~3810 &binding~0~10767))) (if (memv &t~0~10774 '(pattern-variable)) (begin (&syntax-violation~0~3903 #f "Pattern variable used outside syntax template" &t~0~10758)))))) (&binding-type~0~3809 &binding~0~10767))) (if (list? &t~0~10758) (begin (map &expand~0~3847 &t~0~10758)) (if (&identifier?~0~3795 &t~0~10758) (begin (&make-free-name~0~3806 (&id-name~0~3796 &t~0~10758))) (if (pair? &t~0~10758) (begin (&syntax-violation~0~3903 #f "Invalid procedure call syntax" &t~0~10758)) (if (symbol? &t~0~10758) (begin (&syntax-violation~0~3903 #f "Symbol may not appear in syntax object" &t~0~10758)) (begin &t~0~10758))))))) (&operator-binding~0~3849 &t~0~10758))) (lambda &results~0~10809 (set! &*trace*~0~3785 &saved~0~10762) (apply values &results~0~10809)))) &*trace*~0~3785))) (set! &head-expand~0~3848 (lambda (&t~0~10720) ((lambda (&saved~0~10724) (set! &*trace*~0~3785 (cons &t~0~10720 &*trace*~0~3785)) (call-with-values (lambda () ((lambda (&binding~0~10729) (if &binding~0~10729 (begin ((lambda (&t~0~10736) (if (memv &t~0~10736 '(macro)) (begin ((lambda (¯o~0~10742) ((lambda (&t~0~10746) (if (memv &t~0~10746 '(expander)) (begin (values &t~0~10720 &binding~0~10729)) (begin (&head-expand~0~3848 (&invoke-macro~0~3846 ¯o~0~10742 &t~0~10720))))) (¯o-type~0~3838 ¯o~0~10742))) (&binding->macro~0~3844 &binding~0~10729 &t~0~10720))) (begin (values &t~0~10720 &binding~0~10729)))) (&binding-type~0~3809 &binding~0~10729))) (begin (values &t~0~10720 &binding~0~10729)))) (&operator-binding~0~3849 &t~0~10720))) (lambda &results~0~10754 (set! &*trace*~0~3785 &saved~0~10724) (apply values &results~0~10754)))) &*trace*~0~3785))) (set! &operator-binding~0~3849 (lambda (&t~0~10709) ((lambda (&operator~0~10712) (if (&identifier?~0~3795 &operator~0~10712) ((lambda (&binding~0~10717) (&check-binding-level~0~3820 &operator~0~10712 &binding~0~10717) (®ister-use!~0~3879 &operator~0~10712 &binding~0~10717) &binding~0~10717) (&binding~0~3816 &operator~0~10712)) #f)) (if (pair? &t~0~10709) (car &t~0~10709) &t~0~10709)))) (set! &check-implicit-import-of-mutable~0~3850 (lambda (&binding~0~10703 &t~0~10704) (let ((x (equal? (&binding-library~0~3814 &binding~0~10703) &*current-library*~0~3779))) (if x x (let ((x (not (&binding-mutable?~0~3812 &binding~0~10703)))) (if x x (&syntax-violation~0~3903 #f (string-append "Attempt to implicitly import variable that is mutable in library (" (&list->string~0~3924 (&binding-library~0~3814 &binding~0~10703) " ") ")") &t~0~10704))))))) (set! &expand-quote~0~3851 (lambda (&exp~0~10657) ((lambda (&x~0~10670 &sk~0~10671 &fk~0~10672) (if (pair? &x~0~10670) ((lambda (&x~0~10675 &sk~0~10676 &fk~0~10677) (&sk~0~10676)) (car &x~0~10670) (lambda () ((lambda (&x~0~10680 &sk~0~10681 &fk~0~10682) (if (pair? &x~0~10680) ((lambda (&x~0~10685 &sk~0~10686 &fk~0~10687) (&sk~0~10686 &x~0~10685)) (car &x~0~10680) (lambda (&datum~0~10689) ((lambda (&x~0~10691 &sk~0~10692 &fk~0~10693) (if (null? &x~0~10691) (&sk~0~10692) (&fk~0~10693))) (cdr &x~0~10680) (lambda () (&sk~0~10681 &datum~0~10689)) &fk~0~10682)) &fk~0~10682) (&fk~0~10682))) (cdr &x~0~10670) (lambda (&datum~0~10697) (&sk~0~10671 &datum~0~10697)) &fk~0~10672)) &fk~0~10672) (&fk~0~10672))) &exp~0~10657 (lambda (&datum~0~10699) (&syntax->datum~0~3834 &exp~0~10657)) (lambda () (ex:invalid-form &exp~0~10657))))) (set! &expand-if~0~3852 (lambda (&exp~0~10506) ((lambda (&x~0~10527 &sk~0~10528 &fk~0~10529) (if (pair? &x~0~10527) ((lambda (&x~0~10532 &sk~0~10533 &fk~0~10534) (&sk~0~10533)) (car &x~0~10527) (lambda () ((lambda (&x~0~10537 &sk~0~10538 &fk~0~10539) (if (pair? &x~0~10537) ((lambda (&x~0~10542 &sk~0~10543 &fk~0~10544) (&sk~0~10543 &x~0~10542)) (car &x~0~10537) (lambda (&e1~0~10546) ((lambda (&x~0~10548 &sk~0~10549 &fk~0~10550) (if (pair? &x~0~10548) ((lambda (&x~0~10553 &sk~0~10554 &fk~0~10555) (&sk~0~10554 &x~0~10553)) (car &x~0~10548) (lambda (&e2~0~10557) ((lambda (&x~0~10559 &sk~0~10560 &fk~0~10561) (if (pair? &x~0~10559) ((lambda (&x~0~10564 &sk~0~10565 &fk~0~10566) (&sk~0~10565 &x~0~10564)) (car &x~0~10559) (lambda (&e3~0~10568) ((lambda (&x~0~10570 &sk~0~10571 &fk~0~10572) (if (null? &x~0~10570) (&sk~0~10571) (&fk~0~10572))) (cdr &x~0~10559) (lambda () (&sk~0~10560 &e3~0~10568)) &fk~0~10561)) &fk~0~10561) (&fk~0~10561))) (cdr &x~0~10548) (lambda (&e3~0~10576) (&sk~0~10549 &e2~0~10557 &e3~0~10576)) &fk~0~10550)) &fk~0~10550) (&fk~0~10550))) (cdr &x~0~10537) (lambda (&e2~0~10578 &e3~0~10579) (&sk~0~10538 &e1~0~10546 &e2~0~10578 &e3~0~10579)) &fk~0~10539)) &fk~0~10539) (&fk~0~10539))) (cdr &x~0~10527) (lambda (&e1~0~10581 &e2~0~10582 &e3~0~10583) (&sk~0~10528 &e1~0~10581 &e2~0~10582 &e3~0~10583)) &fk~0~10529)) &fk~0~10529) (&fk~0~10529))) &exp~0~10506 (lambda (&e1~0~10585 &e2~0~10586 &e3~0~10587) (list 'if (&expand~0~3847 &e1~0~10585) (&expand~0~3847 &e2~0~10586) (&expand~0~3847 &e3~0~10587))) (lambda () ((lambda (&x~0~10607 &sk~0~10608 &fk~0~10609) (if (pair? &x~0~10607) ((lambda (&x~0~10612 &sk~0~10613 &fk~0~10614) (&sk~0~10613)) (car &x~0~10607) (lambda () ((lambda (&x~0~10617 &sk~0~10618 &fk~0~10619) (if (pair? &x~0~10617) ((lambda (&x~0~10622 &sk~0~10623 &fk~0~10624) (&sk~0~10623 &x~0~10622)) (car &x~0~10617) (lambda (&e1~0~10626) ((lambda (&x~0~10628 &sk~0~10629 &fk~0~10630) (if (pair? &x~0~10628) ((lambda (&x~0~10633 &sk~0~10634 &fk~0~10635) (&sk~0~10634 &x~0~10633)) (car &x~0~10628) (lambda (&e2~0~10637) ((lambda (&x~0~10639 &sk~0~10640 &fk~0~10641) (if (null? &x~0~10639) (&sk~0~10640) (&fk~0~10641))) (cdr &x~0~10628) (lambda () (&sk~0~10629 &e2~0~10637)) &fk~0~10630)) &fk~0~10630) (&fk~0~10630))) (cdr &x~0~10617) (lambda (&e2~0~10645) (&sk~0~10618 &e1~0~10626 &e2~0~10645)) &fk~0~10619)) &fk~0~10619) (&fk~0~10619))) (cdr &x~0~10607) (lambda (&e1~0~10647 &e2~0~10648) (&sk~0~10608 &e1~0~10647 &e2~0~10648)) &fk~0~10609)) &fk~0~10609) (&fk~0~10609))) &exp~0~10506 (lambda (&e1~0~10650 &e2~0~10651) (list 'if (&expand~0~3847 &e1~0~10650) (&expand~0~3847 &e2~0~10651))) (lambda () (ex:invalid-form &exp~0~10506))))))) (set! &expand-set!~0~3853 (lambda (&exp~0~10400) ((lambda (&x~0~10419 &sk~0~10420 &fk~0~10421) (if (pair? &x~0~10419) ((lambda (&x~0~10424 &sk~0~10425 &fk~0~10426) (&sk~0~10425)) (car &x~0~10419) (lambda () ((lambda (&x~0~10429 &sk~0~10430 &fk~0~10431) (if (pair? &x~0~10429) ((lambda (&x~0~10434 &sk~0~10435 &fk~0~10436) (if (&identifier?~0~3795 &x~0~10434) ((lambda (&x~0~10439 &sk~0~10440 &fk~0~10441) (&sk~0~10440 &x~0~10439)) &x~0~10434 &sk~0~10435 &fk~0~10436) (&fk~0~10436))) (car &x~0~10429) (lambda (&id~0~10443) ((lambda (&x~0~10445 &sk~0~10446 &fk~0~10447) (if (pair? &x~0~10445) ((lambda (&x~0~10450 &sk~0~10451 &fk~0~10452) (&sk~0~10451 &x~0~10450)) (car &x~0~10445) (lambda (&e~0~10454) ((lambda (&x~0~10456 &sk~0~10457 &fk~0~10458) (if (null? &x~0~10456) (&sk~0~10457) (&fk~0~10458))) (cdr &x~0~10445) (lambda () (&sk~0~10446 &e~0~10454)) &fk~0~10447)) &fk~0~10447) (&fk~0~10447))) (cdr &x~0~10429) (lambda (&e~0~10462) (&sk~0~10430 &id~0~10443 &e~0~10462)) &fk~0~10431)) &fk~0~10431) (&fk~0~10431))) (cdr &x~0~10419) (lambda (&id~0~10464 &e~0~10465) (&sk~0~10420 &id~0~10464 &e~0~10465)) &fk~0~10421)) &fk~0~10421) (&fk~0~10421))) &exp~0~10400 (lambda (&id~0~10467 &e~0~10468) ((lambda (&binding~0~10471) (&check-binding-level~0~3820 &id~0~10467 &binding~0~10471) (®ister-use!~0~3879 &id~0~10467 &binding~0~10471) ((lambda (&t~0~10475) (if (memv &t~0~10475 '(macro)) (begin ((lambda (¯o~0~10481) ((lambda (&t~0~10485) (if (memv &t~0~10485 '(variable-transformer)) (begin (&expand~0~3847 (&invoke-macro~0~3846 ¯o~0~10481 &exp~0~10400))) (begin (&syntax-violation~0~3903 'set! "Keyword being set! is not a variable transformer" &exp~0~10400 &id~0~10467)))) (¯o-type~0~3838 ¯o~0~10481))) (&binding->macro~0~3844 &binding~0~10471 &id~0~10467))) (if (memv &t~0~10475 '(variable)) (begin (let ((x (eq? (&binding-library~0~3814 &binding~0~10471) &*current-library*~0~3779))) (if x x (&syntax-violation~0~3903 'set! "Directly or indirectly imported variable cannot be assigned" &exp~0~10400 &id~0~10467))) (&binding-mutable-set!~0~3815 &binding~0~10471 #t) (list 'set! (&binding-name~0~3810 &binding~0~10471) (&expand~0~3847 &e~0~10468))) (if (memv &t~0~10475 '(pattern-variable)) (begin (&syntax-violation~0~3903 'set! "Pattern variable used outside syntax template" &exp~0~10400 &id~0~10467)))))) (&binding-type~0~3809 &binding~0~10471))) (&binding~0~3816 &id~0~10467))) (lambda () (ex:invalid-form &exp~0~10400))))) (set! &expand-begin~0~3854 (lambda (&exp~0~10307) ((lambda (&x~0~10318 &sk~0~10319 &fk~0~10320) (if (pair? &x~0~10318) ((lambda (&x~0~10323 &sk~0~10324 &fk~0~10325) (&sk~0~10324)) (car &x~0~10318) (lambda () ((lambda (&x~0~10328 &sk~0~10329 &fk~0~10330) (((lambda (&loop~0~10336) ((lambda (&temp~0~10339) (set! &loop~0~10336 &temp~0~10339) ((lambda () &loop~0~10336))) (lambda (&x~0~10344 &result~0~10345) ((lambda (&match-tail~0~10346) (set! &match-tail~0~10346 (lambda () ((lambda (&x~0~10364 &sk~0~10365 &fk~0~10366) (if (null? &x~0~10364) (&sk~0~10365) (&fk~0~10366))) &x~0~10344 (lambda () (apply &sk~0~10329 (if (null? &result~0~10345) (map (lambda (&ignore~0~10371) '()) '(exps)) (apply map list (reverse &result~0~10345))))) (lambda () ((lambda (&x~0~10379 &sk~0~10380 &fk~0~10381) (&sk~0~10380)) &x~0~10344 (lambda () (&fk~0~10330)) (lambda () (ex:invalid-form &x~0~10344))))))) (if (null? &x~0~10344) (begin (&match-tail~0~10346)) (if (pair? &x~0~10344) (begin ((lambda (&x~0~10353 &sk~0~10354 &fk~0~10355) (&sk~0~10354 &x~0~10353)) (car &x~0~10344) (lambda &car-vars~0~10357 (&loop~0~10336 (cdr &x~0~10344) (cons &car-vars~0~10357 &result~0~10345))) &match-tail~0~10346)) (begin (&fk~0~10330))))) ex:undefined)))) ex:undefined) &x~0~10328 '())) (cdr &x~0~10318) (lambda (&exps~0~10387) (&sk~0~10319 &exps~0~10387)) &fk~0~10320)) &fk~0~10320) (&fk~0~10320))) &exp~0~10307 (lambda (&exps~0~10389) (&scan-sequence~0~3863 'expression-sequence #f &exps~0~10389 (lambda (&forms~0~10392 &no-syntax-definitions~0~10393 &no-bound-variables~0~10394) (cons 'begin (map cdr &forms~0~10392))))) (lambda () (ex:invalid-form &exp~0~10307))))) (set! &expand-local-syntax~0~3855 (lambda (&exp~0~10302) (&expand-begin~0~3854 (list (&rename~0~3836 'macro 'begin) &exp~0~10302)))) (set! &expand-and~0~3856 (lambda (&exp~0~10119) ((lambda (&x~0~10128 &sk~0~10129 &fk~0~10130) (if (pair? &x~0~10128) ((lambda (&x~0~10133 &sk~0~10134 &fk~0~10135) (&sk~0~10134 &x~0~10133)) (car &x~0~10128) (lambda (&and~0~10137) ((lambda (&x~0~10139 &sk~0~10140 &fk~0~10141) (if (null? &x~0~10139) (&sk~0~10140) (&fk~0~10141))) (cdr &x~0~10128) (lambda () (&sk~0~10129 &and~0~10137)) &fk~0~10130)) &fk~0~10130) (&fk~0~10130))) &exp~0~10119 (lambda (&and~0~10145) #t) (lambda () ((lambda (&x~0~10159 &sk~0~10160 &fk~0~10161) (if (pair? &x~0~10159) ((lambda (&x~0~10164 &sk~0~10165 &fk~0~10166) (&sk~0~10165 &x~0~10164)) (car &x~0~10159) (lambda (&and~0~10168) ((lambda (&x~0~10170 &sk~0~10171 &fk~0~10172) (if (pair? &x~0~10170) ((lambda (&x~0~10175 &sk~0~10176 &fk~0~10177) (&sk~0~10176 &x~0~10175)) (car &x~0~10170) (lambda (&e~0~10179) ((lambda (&x~0~10181 &sk~0~10182 &fk~0~10183) (if (null? &x~0~10181) (&sk~0~10182) (&fk~0~10183))) (cdr &x~0~10170) (lambda () (&sk~0~10171 &e~0~10179)) &fk~0~10172)) &fk~0~10172) (&fk~0~10172))) (cdr &x~0~10159) (lambda (&e~0~10187) (&sk~0~10160 &and~0~10168 &e~0~10187)) &fk~0~10161)) &fk~0~10161) (&fk~0~10161))) &exp~0~10119 (lambda (&and~0~10189 &e~0~10190) (&expand~0~3847 &e~0~10190)) (lambda () ((lambda (&x~0~10206 &sk~0~10207 &fk~0~10208) (if (pair? &x~0~10206) ((lambda (&x~0~10211 &sk~0~10212 &fk~0~10213) (&sk~0~10212 &x~0~10211)) (car &x~0~10206) (lambda (&and~0~10215) ((lambda (&x~0~10217 &sk~0~10218 &fk~0~10219) (if (pair? &x~0~10217) ((lambda (&x~0~10222 &sk~0~10223 &fk~0~10224) (&sk~0~10223 &x~0~10222)) (car &x~0~10217) (lambda (&e~0~10226) ((lambda (&x~0~10228 &sk~0~10229 &fk~0~10230) (((lambda (&loop~0~10236) ((lambda (&temp~0~10239) (set! &loop~0~10236 &temp~0~10239) ((lambda () &loop~0~10236))) (lambda (&x~0~10244 &result~0~10245) ((lambda (&match-tail~0~10246) (set! &match-tail~0~10246 (lambda () ((lambda (&x~0~10264 &sk~0~10265 &fk~0~10266) (if (null? &x~0~10264) (&sk~0~10265) (&fk~0~10266))) &x~0~10244 (lambda () (apply &sk~0~10229 (if (null? &result~0~10245) (map (lambda (&ignore~0~10271) '()) '(es)) (apply map list (reverse &result~0~10245))))) (lambda () ((lambda (&x~0~10279 &sk~0~10280 &fk~0~10281) (&sk~0~10280)) &x~0~10244 (lambda () (&fk~0~10230)) (lambda () (ex:invalid-form &x~0~10244))))))) (if (null? &x~0~10244) (begin (&match-tail~0~10246)) (if (pair? &x~0~10244) (begin ((lambda (&x~0~10253 &sk~0~10254 &fk~0~10255) (&sk~0~10254 &x~0~10253)) (car &x~0~10244) (lambda &car-vars~0~10257 (&loop~0~10236 (cdr &x~0~10244) (cons &car-vars~0~10257 &result~0~10245))) &match-tail~0~10246)) (begin (&fk~0~10230))))) ex:undefined)))) ex:undefined) &x~0~10228 '())) (cdr &x~0~10217) (lambda (&es~0~10287) (&sk~0~10218 &e~0~10226 &es~0~10287)) &fk~0~10219)) &fk~0~10219) (&fk~0~10219))) (cdr &x~0~10206) (lambda (&e~0~10289 &es~0~10290) (&sk~0~10207 &and~0~10215 &e~0~10289 &es~0~10290)) &fk~0~10208)) &fk~0~10208) (&fk~0~10208))) &exp~0~10119 (lambda (&and~0~10292 &e~0~10293 &es~0~10294) (cons 'if (cons (&expand~0~3847 &e~0~10293) (cons (&expand~0~3847 (cons &and~0~10292 &es~0~10294)) '(#f))))) (lambda () (ex:invalid-form &exp~0~10119))))))))) (set! &expand-or~0~3857 (lambda (&exp~0~9933) ((lambda (&x~0~9942 &sk~0~9943 &fk~0~9944) (if (pair? &x~0~9942) ((lambda (&x~0~9947 &sk~0~9948 &fk~0~9949) (&sk~0~9948 &x~0~9947)) (car &x~0~9942) (lambda (&or~0~9951) ((lambda (&x~0~9953 &sk~0~9954 &fk~0~9955) (if (null? &x~0~9953) (&sk~0~9954) (&fk~0~9955))) (cdr &x~0~9942) (lambda () (&sk~0~9943 &or~0~9951)) &fk~0~9944)) &fk~0~9944) (&fk~0~9944))) &exp~0~9933 (lambda (&or~0~9959) #t) (lambda () ((lambda (&x~0~9973 &sk~0~9974 &fk~0~9975) (if (pair? &x~0~9973) ((lambda (&x~0~9978 &sk~0~9979 &fk~0~9980) (&sk~0~9979 &x~0~9978)) (car &x~0~9973) (lambda (&or~0~9982) ((lambda (&x~0~9984 &sk~0~9985 &fk~0~9986) (if (pair? &x~0~9984) ((lambda (&x~0~9989 &sk~0~9990 &fk~0~9991) (&sk~0~9990 &x~0~9989)) (car &x~0~9984) (lambda (&e~0~9993) ((lambda (&x~0~9995 &sk~0~9996 &fk~0~9997) (if (null? &x~0~9995) (&sk~0~9996) (&fk~0~9997))) (cdr &x~0~9984) (lambda () (&sk~0~9985 &e~0~9993)) &fk~0~9986)) &fk~0~9986) (&fk~0~9986))) (cdr &x~0~9973) (lambda (&e~0~10001) (&sk~0~9974 &or~0~9982 &e~0~10001)) &fk~0~9975)) &fk~0~9975) (&fk~0~9975))) &exp~0~9933 (lambda (&or~0~10003 &e~0~10004) (&expand~0~3847 &e~0~10004)) (lambda () ((lambda (&x~0~10020 &sk~0~10021 &fk~0~10022) (if (pair? &x~0~10020) ((lambda (&x~0~10025 &sk~0~10026 &fk~0~10027) (&sk~0~10026 &x~0~10025)) (car &x~0~10020) (lambda (&or~0~10029) ((lambda (&x~0~10031 &sk~0~10032 &fk~0~10033) (if (pair? &x~0~10031) ((lambda (&x~0~10036 &sk~0~10037 &fk~0~10038) (&sk~0~10037 &x~0~10036)) (car &x~0~10031) (lambda (&e~0~10040) ((lambda (&x~0~10042 &sk~0~10043 &fk~0~10044) (((lambda (&loop~0~10050) ((lambda (&temp~0~10053) (set! &loop~0~10050 &temp~0~10053) ((lambda () &loop~0~10050))) (lambda (&x~0~10058 &result~0~10059) ((lambda (&match-tail~0~10060) (set! &match-tail~0~10060 (lambda () ((lambda (&x~0~10078 &sk~0~10079 &fk~0~10080) (if (null? &x~0~10078) (&sk~0~10079) (&fk~0~10080))) &x~0~10058 (lambda () (apply &sk~0~10043 (if (null? &result~0~10059) (map (lambda (&ignore~0~10085) '()) '(es)) (apply map list (reverse &result~0~10059))))) (lambda () ((lambda (&x~0~10093 &sk~0~10094 &fk~0~10095) (&sk~0~10094)) &x~0~10058 (lambda () (&fk~0~10044)) (lambda () (ex:invalid-form &x~0~10058))))))) (if (null? &x~0~10058) (begin (&match-tail~0~10060)) (if (pair? &x~0~10058) (begin ((lambda (&x~0~10067 &sk~0~10068 &fk~0~10069) (&sk~0~10068 &x~0~10067)) (car &x~0~10058) (lambda &car-vars~0~10071 (&loop~0~10050 (cdr &x~0~10058) (cons &car-vars~0~10071 &result~0~10059))) &match-tail~0~10060)) (begin (&fk~0~10044))))) ex:undefined)))) ex:undefined) &x~0~10042 '())) (cdr &x~0~10031) (lambda (&es~0~10101) (&sk~0~10032 &e~0~10040 &es~0~10101)) &fk~0~10033)) &fk~0~10033) (&fk~0~10033))) (cdr &x~0~10020) (lambda (&e~0~10103 &es~0~10104) (&sk~0~10021 &or~0~10029 &e~0~10103 &es~0~10104)) &fk~0~10022)) &fk~0~10022) (&fk~0~10022))) &exp~0~9933 (lambda (&or~0~10106 &e~0~10107 &es~0~10108) (list 'let (list (list 'x (&expand~0~3847 &e~0~10107))) (list 'if 'x 'x (&expand~0~3847 (cons &or~0~10106 &es~0~10108))))) (lambda () (ex:invalid-form &exp~0~9933))))))))) (set! &expand-lambda~0~3858 (lambda (&exp~0~9778) ((lambda (&x~0~9795 &sk~0~9796 &fk~0~9797) (if (pair? &x~0~9795) ((lambda (&x~0~9800 &sk~0~9801 &fk~0~9802) (&sk~0~9801)) (car &x~0~9795) (lambda () ((lambda (&x~0~9805 &sk~0~9806 &fk~0~9807) (if (pair? &x~0~9805) ((lambda (&x~0~9810 &sk~0~9811 &fk~0~9812) (if (&formals?~0~3859 &x~0~9810) ((lambda (&x~0~9815 &sk~0~9816 &fk~0~9817) (&sk~0~9816 &x~0~9815)) &x~0~9810 &sk~0~9811 &fk~0~9812) (&fk~0~9812))) (car &x~0~9805) (lambda (&formals~0~9819) ((lambda (&x~0~9821 &sk~0~9822 &fk~0~9823) (((lambda (&loop~0~9829) ((lambda (&temp~0~9832) (set! &loop~0~9829 &temp~0~9832) ((lambda () &loop~0~9829))) (lambda (&x~0~9837 &result~0~9838) ((lambda (&match-tail~0~9839) (set! &match-tail~0~9839 (lambda () ((lambda (&x~0~9857 &sk~0~9858 &fk~0~9859) (if (null? &x~0~9857) (&sk~0~9858) (&fk~0~9859))) &x~0~9837 (lambda () (apply &sk~0~9822 (if (null? &result~0~9838) (map (lambda (&ignore~0~9864) '()) '(body)) (apply map list (reverse &result~0~9838))))) (lambda () ((lambda (&x~0~9872 &sk~0~9873 &fk~0~9874) (&sk~0~9873)) &x~0~9837 (lambda () (&fk~0~9823)) (lambda () (ex:invalid-form &x~0~9837))))))) (if (null? &x~0~9837) (begin (&match-tail~0~9839)) (if (pair? &x~0~9837) (begin ((lambda (&x~0~9846 &sk~0~9847 &fk~0~9848) (&sk~0~9847 &x~0~9846)) (car &x~0~9837) (lambda &car-vars~0~9850 (&loop~0~9829 (cdr &x~0~9837) (cons &car-vars~0~9850 &result~0~9838))) &match-tail~0~9839)) (begin (&fk~0~9823))))) ex:undefined)))) ex:undefined) &x~0~9821 '())) (cdr &x~0~9805) (lambda (&body~0~9880) (&sk~0~9806 &formals~0~9819 &body~0~9880)) &fk~0~9807)) &fk~0~9807) (&fk~0~9807))) (cdr &x~0~9795) (lambda (&formals~0~9882 &body~0~9883) (&sk~0~9796 &formals~0~9882 &body~0~9883)) &fk~0~9797)) &fk~0~9797) (&fk~0~9797))) &exp~0~9778 (lambda (&formals~0~9885 &body~0~9886) ((lambda (&saved~0~9890) (set! &*usage-env*~0~3764 (&env-extend~0~3823 (map (lambda (&formal~0~9928) (&make-local-mapping~0~3817 'variable &formal~0~9928 #f)) (&flatten~0~3913 &formals~0~9885)) &*usage-env*~0~3764)) (call-with-values (lambda () ((lambda (&formals~0~9895) ((lambda (&saved~0~9899) (set! &*usage-env*~0~3764 (&env-extend~0~3823 '() &*usage-env*~0~3764)) (call-with-values (lambda () (&scan-sequence~0~3863 'lambda &make-local-mapping~0~3817 &body~0~9886 (lambda (&forms~0~9904 &syntax-definitions~0~9905 &bound-variables~0~9906) (cons 'lambda (cons &formals~0~9895 (if (null? &bound-variables~0~9906) (&emit-body~0~3864 &forms~0~9904 ex:undefined-set!) (list (cons (cons 'lambda (cons &bound-variables~0~9906 (&emit-body~0~3864 &forms~0~9904 ex:undefined-set!))) (map (lambda (&ignore~0~9913) 'ex:undefined) &bound-variables~0~9906))))))))) (lambda &results~0~9917 (set! &*usage-env*~0~3764 &saved~0~9899) (apply values &results~0~9917)))) &*usage-env*~0~3764)) (&dotted-map~0~3916 (lambda (&formal~0~9922) (&binding-name~0~3810 (&binding~0~3816 &formal~0~9922))) &formals~0~9885))) (lambda &results~0~9924 (set! &*usage-env*~0~3764 &saved~0~9890) (apply values &results~0~9924)))) &*usage-env*~0~3764)) (lambda () (ex:invalid-form &exp~0~9778))))) (set! &formals?~0~3859 (lambda (&s~0~9767) (let ((x (null? &s~0~9767))) (if x x (let ((x (&identifier?~0~3795 &s~0~9767))) (if x x (if (pair? &s~0~9767) (if (&identifier?~0~3795 (car &s~0~9767)) (if (&formals?~0~3859 (cdr &s~0~9767)) (not (&dotted-memp~0~3915 (lambda (&x~0~9776) (&bound-identifier=?~0~3802 &x~0~9776 (car &s~0~9767))) (cdr &s~0~9767))) #f) #f) #f))))))) (set! &make-wrap~0~3860 (lambda (&env~0~9764 &exp~0~9765) (cons &env~0~9764 &exp~0~9765))) (set! &wrap-env~0~3861 car) (set! &wrap-exp~0~3862 cdr) (set! &scan-sequence~0~3863 (lambda (&body-type~0~9482 &make-map~0~9483 &body-forms~0~9484 &k~0~9485) ((lambda (&expand-deferred~0~9486) (set! &expand-deferred~0~9486 (lambda (&forms~0~9745) (map (lambda (&form~0~9747) (cons (car &form~0~9747) ((lambda (&deferred?~0~9750 &exp~0~9751) (if &deferred?~0~9750 ((lambda (&saved~0~9756) (set! &*usage-env*~0~3764 (&wrap-env~0~3861 &exp~0~9751)) (call-with-values (lambda () (&expand~0~3847 (&wrap-exp~0~3862 &exp~0~9751))) (lambda &results~0~9760 (set! &*usage-env*~0~3764 &saved~0~9756) (apply values &results~0~9760)))) &*usage-env*~0~3764) &exp~0~9751)) (cadr &form~0~9747) (caddr &form~0~9747)))) &forms~0~9745))) ((lambda (&common-env~0~9489) (&add-fresh-used-frame!~0~3878) (((lambda (&loop~0~9495) ((lambda (&temp~0~9498) (set! &loop~0~9495 &temp~0~9498) ((lambda () &loop~0~9495))) (lambda (&ws~0~9503 &forms~0~9504 &syntax-defs~0~9505 &bound-variables~0~9506) (if (null? &ws~0~9503) (begin (&check-expression-body~0~3870 &body-type~0~9482 &forms~0~9504 &body-forms~0~9484) (&merge-used-with-parent-frame!~0~3880) (&k~0~9485 (reverse (&expand-deferred~0~9486 &forms~0~9504)) (reverse &syntax-defs~0~9505) &bound-variables~0~9506)) (begin ((lambda (&saved~0~9514) (set! &*usage-env*~0~3764 (&wrap-env~0~3861 (car &ws~0~9503))) (call-with-values (lambda () (call-with-values (lambda () (&head-expand~0~3848 (&wrap-exp~0~3862 (car &ws~0~9503)))) (lambda (&form~0~9519 &operator-binding~0~9520) ((lambda (&type~0~9523) (&check-expression-sequence~0~3867 &body-type~0~9482 &type~0~9523 &form~0~9519) (&check-toplevel~0~3868 &body-type~0~9482 &type~0~9523 &form~0~9519) ((lambda (&t~0~9527) (if (memv &t~0~9527 '(import)) (begin ((lambda (&x~0~9541 &sk~0~9542 &fk~0~9543) (if (pair? &x~0~9541) ((lambda (&x~0~9546 &sk~0~9547 &fk~0~9548) (&sk~0~9547)) (car &x~0~9541) (lambda () ((lambda (&x~0~9551 &sk~0~9552 &fk~0~9553) (((lambda (&loop~0~9559) ((lambda (&temp~0~9562) (set! &loop~0~9559 &temp~0~9562) ((lambda () &loop~0~9559))) (lambda (&x~0~9567 &result~0~9568) ((lambda (&match-tail~0~9569) (set! &match-tail~0~9569 (lambda () ((lambda (&x~0~9587 &sk~0~9588 &fk~0~9589) (if (null? &x~0~9587) (&sk~0~9588) (&fk~0~9589))) &x~0~9567 (lambda () (apply &sk~0~9552 (if (null? &result~0~9568) (map (lambda (&ignore~0~9594) '()) '(specs)) (apply map list (reverse &result~0~9568))))) (lambda () ((lambda (&x~0~9602 &sk~0~9603 &fk~0~9604) (&sk~0~9603)) &x~0~9567 (lambda () (&fk~0~9553)) (lambda () (ex:invalid-form &x~0~9567))))))) (if (null? &x~0~9567) (begin (&match-tail~0~9569)) (if (pair? &x~0~9567) (begin ((lambda (&x~0~9576 &sk~0~9577 &fk~0~9578) (&sk~0~9577 &x~0~9576)) (car &x~0~9567) (lambda &car-vars~0~9580 (&loop~0~9559 (cdr &x~0~9567) (cons &car-vars~0~9580 &result~0~9568))) &match-tail~0~9569)) (begin (&fk~0~9553))))) ex:undefined)))) ex:undefined) &x~0~9551 '())) (cdr &x~0~9541) (lambda (&specs~0~9610) (&sk~0~9542 &specs~0~9610)) &fk~0~9543)) &fk~0~9543) (&fk~0~9543))) &form~0~9519 (lambda (&specs~0~9612) (call-with-values (lambda () (&scan-imports~0~3890 &specs~0~9612)) (lambda (&imported-libraries~0~9615 &imports~0~9616) (&import-libraries-for-expand~0~3887 &imported-libraries~0~9615 (map not &imported-libraries~0~9615) 0) (&env-import!~0~3885 (car &form~0~9519) &imports~0~9616 &common-env~0~9489) (&loop~0~9495 (cdr &ws~0~9503) (cons (list #f #f (cons 'ex:import-libraries-for-run (cons (list 'quote &imported-libraries~0~9615) (cons (list 'quote (¤t-builds~0~3886 &imported-libraries~0~9615)) '(0))))) &forms~0~9504) &syntax-defs~0~9505 &bound-variables~0~9506)))) (lambda () (ex:invalid-form &form~0~9519)))) (if (memv &t~0~9527 '(program)) (begin (&loop~0~9495 (cdr &ws~0~9503) (cons (list #f #f (&expand-program~0~3882 &form~0~9519)) &forms~0~9504) &syntax-defs~0~9505 &bound-variables~0~9506)) (if (memv &t~0~9527 '(library)) (begin (&loop~0~9495 (cdr &ws~0~9503) (cons (list #f #f (&expand-library~0~3883 &form~0~9519)) &forms~0~9504) &syntax-defs~0~9505 &bound-variables~0~9506)) (if (memv &t~0~9527 '(define)) (begin (call-with-values (lambda () (&parse-definition~0~3865 &form~0~9519)) (lambda (&id~0~9635 &rhs~0~9636) (&check-valid-definition~0~3869 &id~0~9635 &common-env~0~9489 &body-type~0~9482 &form~0~9519 &forms~0~9504 &type~0~9523) (&env-extend!~0~3824 (list (&make-map~0~9483 'variable &id~0~9635 #f)) &common-env~0~9489) (&loop~0~9495 (cdr &ws~0~9503) (cons (list (&binding-name~0~3810 (&binding~0~3816 &id~0~9635)) #t (&make-wrap~0~3860 &*usage-env*~0~3764 &rhs~0~9636)) &forms~0~9504) &syntax-defs~0~9505 (cons (&binding-name~0~3810 (&binding~0~3816 &id~0~9635)) &bound-variables~0~9506))))) (if (memv &t~0~9527 '(define-syntax)) (begin (call-with-values (lambda () (&parse-definition~0~3865 &form~0~9519)) (lambda (&id~0~9643 &rhs~0~9644) (&check-valid-definition~0~3869 &id~0~9643 &common-env~0~9489 &body-type~0~9482 &form~0~9519 &forms~0~9504 &type~0~9523) ((lambda (&mapping~0~9647) (&env-extend!~0~3824 (list &mapping~0~9647) &common-env~0~9489) ((lambda (&rhs~0~9650) (®ister-macro!~0~3845 (&binding-name~0~3810 (cdr &mapping~0~9647)) (&make-user-macro~0~3843 (eval &rhs~0~9650 (interaction-environment)))) (&loop~0~9495 (cdr &ws~0~9503) &forms~0~9504 (cons (cons (&binding-name~0~3810 (&binding~0~3816 &id~0~9643)) &rhs~0~9650) &syntax-defs~0~9505) &bound-variables~0~9506)) ((lambda (&saved~0~9654) (set! &*phase*~0~3767 (+ 1 &*phase*~0~3767)) (call-with-values (lambda () (&expand~0~3847 &rhs~0~9644)) (lambda &results~0~9658 (set! &*phase*~0~3767 &saved~0~9654) (apply values &results~0~9658)))) &*phase*~0~3767))) (&make-map~0~9483 'macro &id~0~9643 #f))))) (if (memv &t~0~9527 '(begin)) (begin (let ((x (list? &form~0~9519))) (if x x (&invalid-form~0~3927 &form~0~9519))) (&loop~0~9495 (append (map (lambda (&exp~0~9666) (&make-wrap~0~3860 &*usage-env*~0~3764 &exp~0~9666)) (cdr &form~0~9519)) (cdr &ws~0~9503)) &forms~0~9504 &syntax-defs~0~9505 &bound-variables~0~9506)) (if (memv &t~0~9527 '(let-syntax letrec-syntax)) (begin (call-with-values (lambda () (&parse-local-syntax~0~3866 &form~0~9519)) (lambda (&formals~0~9674 &rhs~0~9675 &body~0~9676) ((lambda (&original-env~0~9680) ((lambda (&usage-diff~0~9683) ((lambda (&extended-env~0~9686) ((lambda (&rhs-expanded~0~9689) ((lambda (¯os~0~9692) (for-each (lambda (&mapping~0~9696 ¯o~0~9697) (®ister-macro!~0~3845 (&binding-name~0~3810 (cdr &mapping~0~9696)) (&make-user-macro~0~3843 ¯o~0~9697))) &usage-diff~0~9683 ¯os~0~9692) (&loop~0~9495 (append (map (lambda (&form~0~9694) (&make-wrap~0~3860 &extended-env~0~9686 &form~0~9694)) &body~0~9676) (cdr &ws~0~9503)) &forms~0~9504 &syntax-defs~0~9505 &bound-variables~0~9506)) (map (lambda (&e~0~9699) (eval &e~0~9699 (interaction-environment))) &rhs-expanded~0~9689))) ((lambda (&saved~0~9703) (set! &*phase*~0~3767 (+ 1 &*phase*~0~3767)) (call-with-values (lambda () ((lambda (&saved~0~9708) (set! &*usage-env*~0~3764 ((lambda (&t~0~9718) (if (memv &t~0~9718 '(let-syntax)) (begin &original-env~0~9680) (if (memv &t~0~9718 '(letrec-syntax)) (begin &extended-env~0~9686)))) &type~0~9523)) (call-with-values (lambda () (map &expand~0~3847 &rhs~0~9675)) (lambda &results~0~9712 (set! &*usage-env*~0~3764 &saved~0~9708) (apply values &results~0~9712)))) &*usage-env*~0~3764)) (lambda &results~0~9726 (set! &*phase*~0~3767 &saved~0~9703) (apply values &results~0~9726)))) &*phase*~0~3767))) (&env-extend~0~3823 &usage-diff~0~9683 &original-env~0~9680))) (map (lambda (&formal~0~9730) (&make-local-mapping~0~3817 'macro &formal~0~9730 #f)) &formals~0~9674))) &*usage-env*~0~3764)))) (begin (&loop~0~9495 (cdr &ws~0~9503) (cons (list #f #t (&make-wrap~0~3860 &*usage-env*~0~3764 &form~0~9519)) &forms~0~9504) &syntax-defs~0~9505 &bound-variables~0~9506)))))))))) &type~0~9523)) (if &operator-binding~0~9520 (&binding-name~0~3810 &operator-binding~0~9520) #f))))) (lambda &results~0~9736 (set! &*usage-env*~0~3764 &saved~0~9514) (apply values &results~0~9736)))) &*usage-env*~0~3764)))))) ex:undefined) (map (lambda (&e~0~9740) (&make-wrap~0~3860 &common-env~0~9489 &e~0~9740)) &body-forms~0~9484) '() '() '())) &*usage-env*~0~3764)) ex:undefined))) (set! &emit-body~0~3864 (lambda (&body-forms~0~9475 &define-or-set~0~9476) (map (lambda (&body-form~0~9478) (if (symbol? (car &body-form~0~9478)) (list &define-or-set~0~9476 (car &body-form~0~9478) (cdr &body-form~0~9478)) (cdr &body-form~0~9478))) &body-forms~0~9475))) (set! &parse-definition~0~3865 (lambda (&exp~0~9212) ((lambda (&x~0~9227 &sk~0~9228 &fk~0~9229) (if (pair? &x~0~9227) ((lambda (&x~0~9232 &sk~0~9233 &fk~0~9234) (&sk~0~9233)) (car &x~0~9227) (lambda () ((lambda (&x~0~9237 &sk~0~9238 &fk~0~9239) (if (pair? &x~0~9237) ((lambda (&x~0~9242 &sk~0~9243 &fk~0~9244) (if (&identifier?~0~3795 &x~0~9242) ((lambda (&x~0~9247 &sk~0~9248 &fk~0~9249) (&sk~0~9248 &x~0~9247)) &x~0~9242 &sk~0~9243 &fk~0~9244) (&fk~0~9244))) (car &x~0~9237) (lambda (&id~0~9251) ((lambda (&x~0~9253 &sk~0~9254 &fk~0~9255) (if (null? &x~0~9253) (&sk~0~9254) (&fk~0~9255))) (cdr &x~0~9237) (lambda () (&sk~0~9238 &id~0~9251)) &fk~0~9239)) &fk~0~9239) (&fk~0~9239))) (cdr &x~0~9227) (lambda (&id~0~9259) (&sk~0~9228 &id~0~9259)) &fk~0~9229)) &fk~0~9229) (&fk~0~9229))) &exp~0~9212 (lambda (&id~0~9261) (values &id~0~9261 (&rename~0~3836 'variable 'ex:unspecified))) (lambda () ((lambda (&x~0~9283 &sk~0~9284 &fk~0~9285) (if (pair? &x~0~9283) ((lambda (&x~0~9288 &sk~0~9289 &fk~0~9290) (&sk~0~9289)) (car &x~0~9283) (lambda () ((lambda (&x~0~9293 &sk~0~9294 &fk~0~9295) (if (pair? &x~0~9293) ((lambda (&x~0~9298 &sk~0~9299 &fk~0~9300) (if (&identifier?~0~3795 &x~0~9298) ((lambda (&x~0~9303 &sk~0~9304 &fk~0~9305) (&sk~0~9304 &x~0~9303)) &x~0~9298 &sk~0~9299 &fk~0~9300) (&fk~0~9300))) (car &x~0~9293) (lambda (&id~0~9307) ((lambda (&x~0~9309 &sk~0~9310 &fk~0~9311) (if (pair? &x~0~9309) ((lambda (&x~0~9314 &sk~0~9315 &fk~0~9316) (&sk~0~9315 &x~0~9314)) (car &x~0~9309) (lambda (&e~0~9318) ((lambda (&x~0~9320 &sk~0~9321 &fk~0~9322) (if (null? &x~0~9320) (&sk~0~9321) (&fk~0~9322))) (cdr &x~0~9309) (lambda () (&sk~0~9310 &e~0~9318)) &fk~0~9311)) &fk~0~9311) (&fk~0~9311))) (cdr &x~0~9293) (lambda (&e~0~9326) (&sk~0~9294 &id~0~9307 &e~0~9326)) &fk~0~9295)) &fk~0~9295) (&fk~0~9295))) (cdr &x~0~9283) (lambda (&id~0~9328 &e~0~9329) (&sk~0~9284 &id~0~9328 &e~0~9329)) &fk~0~9285)) &fk~0~9285) (&fk~0~9285))) &exp~0~9212 (lambda (&id~0~9331 &e~0~9332) (values &id~0~9331 &e~0~9332)) (lambda () ((lambda (&x~0~9356 &sk~0~9357 &fk~0~9358) (if (pair? &x~0~9356) ((lambda (&x~0~9361 &sk~0~9362 &fk~0~9363) (&sk~0~9362)) (car &x~0~9356) (lambda () ((lambda (&x~0~9366 &sk~0~9367 &fk~0~9368) (if (pair? &x~0~9366) ((lambda (&x~0~9371 &sk~0~9372 &fk~0~9373) (if (pair? &x~0~9371) ((lambda (&x~0~9376 &sk~0~9377 &fk~0~9378) (if (&identifier?~0~3795 &x~0~9376) ((lambda (&x~0~9381 &sk~0~9382 &fk~0~9383) (&sk~0~9382 &x~0~9381)) &x~0~9376 &sk~0~9377 &fk~0~9378) (&fk~0~9378))) (car &x~0~9371) (lambda (&id~0~9385) ((lambda (&x~0~9387 &sk~0~9388 &fk~0~9389) (if (&formals?~0~3859 &x~0~9387) ((lambda (&x~0~9392 &sk~0~9393 &fk~0~9394) (&sk~0~9393 &x~0~9392)) &x~0~9387 &sk~0~9388 &fk~0~9389) (&fk~0~9389))) (cdr &x~0~9371) (lambda (&formals~0~9396) (&sk~0~9372 &id~0~9385 &formals~0~9396)) &fk~0~9373)) &fk~0~9373) (&fk~0~9373))) (car &x~0~9366) (lambda (&id~0~9398 &formals~0~9399) ((lambda (&x~0~9401 &sk~0~9402 &fk~0~9403) (((lambda (&loop~0~9409) ((lambda (&temp~0~9412) (set! &loop~0~9409 &temp~0~9412) ((lambda () &loop~0~9409))) (lambda (&x~0~9417 &result~0~9418) ((lambda (&match-tail~0~9419) (set! &match-tail~0~9419 (lambda () ((lambda (&x~0~9437 &sk~0~9438 &fk~0~9439) (if (null? &x~0~9437) (&sk~0~9438) (&fk~0~9439))) &x~0~9417 (lambda () (apply &sk~0~9402 (if (null? &result~0~9418) (map (lambda (&ignore~0~9444) '()) '(body)) (apply map list (reverse &result~0~9418))))) (lambda () ((lambda (&x~0~9452 &sk~0~9453 &fk~0~9454) (&sk~0~9453)) &x~0~9417 (lambda () (&fk~0~9403)) (lambda () (ex:invalid-form &x~0~9417))))))) (if (null? &x~0~9417) (begin (&match-tail~0~9419)) (if (pair? &x~0~9417) (begin ((lambda (&x~0~9426 &sk~0~9427 &fk~0~9428) (&sk~0~9427 &x~0~9426)) (car &x~0~9417) (lambda &car-vars~0~9430 (&loop~0~9409 (cdr &x~0~9417) (cons &car-vars~0~9430 &result~0~9418))) &match-tail~0~9419)) (begin (&fk~0~9403))))) ex:undefined)))) ex:undefined) &x~0~9401 '())) (cdr &x~0~9366) (lambda (&body~0~9460) (&sk~0~9367 &id~0~9398 &formals~0~9399 &body~0~9460)) &fk~0~9368)) &fk~0~9368) (&fk~0~9368))) (cdr &x~0~9356) (lambda (&id~0~9462 &formals~0~9463 &body~0~9464) (&sk~0~9357 &id~0~9462 &formals~0~9463 &body~0~9464)) &fk~0~9358)) &fk~0~9358) (&fk~0~9358))) &exp~0~9212 (lambda (&id~0~9466 &formals~0~9467 &body~0~9468) (values &id~0~9466 (cons (&rename~0~3836 'macro 'lambda) (cons &formals~0~9467 &body~0~9468)))) (lambda () (ex:invalid-form &exp~0~9212))))))))) (set! &parse-local-syntax~0~3866 (lambda (&t~0~9011) ((lambda (&x~0~9036 &sk~0~9037 &fk~0~9038) (if (pair? &x~0~9036) ((lambda (&x~0~9041 &sk~0~9042 &fk~0~9043) (&sk~0~9042)) (car &x~0~9036) (lambda () ((lambda (&x~0~9046 &sk~0~9047 &fk~0~9048) (if (pair? &x~0~9046) ((lambda (&x~0~9051 &sk~0~9052 &fk~0~9053) (((lambda (&loop~0~9059) ((lambda (&temp~0~9062) (set! &loop~0~9059 &temp~0~9062) ((lambda () &loop~0~9059))) (lambda (&x~0~9067 &result~0~9068) ((lambda (&match-tail~0~9069) (set! &match-tail~0~9069 (lambda () ((lambda (&x~0~9113 &sk~0~9114 &fk~0~9115) (if (null? &x~0~9113) (&sk~0~9114) (&fk~0~9115))) &x~0~9067 (lambda () (apply &sk~0~9052 (if (null? &result~0~9068) (map (lambda (&ignore~0~9120) '()) '(x e)) (apply map list (reverse &result~0~9068))))) (lambda () ((lambda (&x~0~9128 &sk~0~9129 &fk~0~9130) (&sk~0~9129)) &x~0~9067 (lambda () (&fk~0~9053)) (lambda () (ex:invalid-form &x~0~9067))))))) (if (null? &x~0~9067) (begin (&match-tail~0~9069)) (if (pair? &x~0~9067) (begin ((lambda (&x~0~9076 &sk~0~9077 &fk~0~9078) (if (pair? &x~0~9076) ((lambda (&x~0~9081 &sk~0~9082 &fk~0~9083) (&sk~0~9082 &x~0~9081)) (car &x~0~9076) (lambda (&x~0~9085) ((lambda (&x~0~9087 &sk~0~9088 &fk~0~9089) (if (pair? &x~0~9087) ((lambda (&x~0~9092 &sk~0~9093 &fk~0~9094) (&sk~0~9093 &x~0~9092)) (car &x~0~9087) (lambda (&e~0~9096) ((lambda (&x~0~9098 &sk~0~9099 &fk~0~9100) (if (null? &x~0~9098) (&sk~0~9099) (&fk~0~9100))) (cdr &x~0~9087) (lambda () (&sk~0~9088 &e~0~9096)) &fk~0~9089)) &fk~0~9089) (&fk~0~9089))) (cdr &x~0~9076) (lambda (&e~0~9104) (&sk~0~9077 &x~0~9085 &e~0~9104)) &fk~0~9078)) &fk~0~9078) (&fk~0~9078))) (car &x~0~9067) (lambda &car-vars~0~9106 (&loop~0~9059 (cdr &x~0~9067) (cons &car-vars~0~9106 &result~0~9068))) &match-tail~0~9069)) (begin (&fk~0~9053))))) ex:undefined)))) ex:undefined) &x~0~9051 '())) (car &x~0~9046) (lambda (&x~0~9136 &e~0~9137) ((lambda (&x~0~9139 &sk~0~9140 &fk~0~9141) (((lambda (&loop~0~9147) ((lambda (&temp~0~9150) (set! &loop~0~9147 &temp~0~9150) ((lambda () &loop~0~9147))) (lambda (&x~0~9155 &result~0~9156) ((lambda (&match-tail~0~9157) (set! &match-tail~0~9157 (lambda () ((lambda (&x~0~9175 &sk~0~9176 &fk~0~9177) (if (null? &x~0~9175) (&sk~0~9176) (&fk~0~9177))) &x~0~9155 (lambda () (apply &sk~0~9140 (if (null? &result~0~9156) (map (lambda (&ignore~0~9182) '()) '(body)) (apply map list (reverse &result~0~9156))))) (lambda () ((lambda (&x~0~9190 &sk~0~9191 &fk~0~9192) (&sk~0~9191)) &x~0~9155 (lambda () (&fk~0~9141)) (lambda () (ex:invalid-form &x~0~9155))))))) (if (null? &x~0~9155) (begin (&match-tail~0~9157)) (if (pair? &x~0~9155) (begin ((lambda (&x~0~9164 &sk~0~9165 &fk~0~9166) (&sk~0~9165 &x~0~9164)) (car &x~0~9155) (lambda &car-vars~0~9168 (&loop~0~9147 (cdr &x~0~9155) (cons &car-vars~0~9168 &result~0~9156))) &match-tail~0~9157)) (begin (&fk~0~9141))))) ex:undefined)))) ex:undefined) &x~0~9139 '())) (cdr &x~0~9046) (lambda (&body~0~9198) (&sk~0~9047 &x~0~9136 &e~0~9137 &body~0~9198)) &fk~0~9048)) &fk~0~9048) (&fk~0~9048))) (cdr &x~0~9036) (lambda (&x~0~9200 &e~0~9201 &body~0~9202) (&sk~0~9037 &x~0~9200 &e~0~9201 &body~0~9202)) &fk~0~9038)) &fk~0~9038) (&fk~0~9038))) &t~0~9011 (lambda (&x~0~9204 &e~0~9205 &body~0~9206) (let ((x (&formals?~0~3859 &x~0~9204))) (if x x (&invalid-form~0~3927 &t~0~9011))) (values &x~0~9204 &e~0~9205 &body~0~9206)) (lambda () (ex:invalid-form &t~0~9011))))) (set! &check-expression-sequence~0~3867 (lambda (&body-type~0~9002 &type~0~9003 &form~0~9004) (if (eq? &body-type~0~9002 'expression-sequence) (if (memq &type~0~9003 '(import program library define define-syntax)) (&syntax-violation~0~3903 &type~0~9003 "Invalid form in expression sequence" &form~0~9004) #f) #f))) (set! &check-toplevel~0~3868 (lambda (&body-type~0~8993 &type~0~8994 &form~0~8995) (if (not (eq? &body-type~0~8993 'toplevel)) (if (memq &type~0~8994 '(import program library)) (&syntax-violation~0~3903 &type~0~8994 "Expression may only occur at toplevel" &form~0~8995) #f) #f))) (set! &check-valid-definition~0~3869 (lambda (&id~0~8976 &common-env~0~8977 &body-type~0~8978 &form~0~8979 &forms~0~8980 &type~0~8981) (if (not (eq? &body-type~0~8978 'toplevel)) (if (&duplicate?~0~3826 &id~0~8976 &common-env~0~8977) (&syntax-violation~0~3903 &type~0~8981 "Redefinition of identifier in body" &form~0~8979 &id~0~8976) #f) #f) (&check-used~0~3881 &id~0~8976 &body-type~0~8978 &form~0~8979) (if (not (memq &body-type~0~8978 '(toplevel program))) (if (not (null? &forms~0~8980)) (if (not (symbol? (car (car &forms~0~8980)))) (&syntax-violation~0~3903 &type~0~8981 "Definitions may not follow expressions in a body" &form~0~8979) #f) #f) #f))) (set! &check-expression-body~0~3870 (lambda (&body-type~0~8966 &forms~0~8967 &body-forms~0~8968) (if (eq? &body-type~0~8966 'lambda) (if (let ((x (null? &forms~0~8967))) (if x x (symbol? (caar &forms~0~8967)))) (&syntax-violation~0~3903 &body-type~0~8966 "Body must be nonempty and end with an expression" &body-forms~0~8968) #f) #f))) (set! &expand-syntax-case~0~3871 (lambda (&exp~0~8762) ((lambda (&literal?~0~8763) (set! &literal?~0~8763 (lambda (&x~0~8958) (if (&identifier?~0~3795 &x~0~8958) (not (let ((x (&free=?~0~3804 &x~0~8958 '_))) (if x x (&free=?~0~3804 &x~0~8958 '...)))) #f))) ((lambda (&x~0~8786 &sk~0~8787 &fk~0~8788) (if (pair? &x~0~8786) ((lambda (&x~0~8791 &sk~0~8792 &fk~0~8793) (&sk~0~8792)) (car &x~0~8786) (lambda () ((lambda (&x~0~8796 &sk~0~8797 &fk~0~8798) (if (pair? &x~0~8796) ((lambda (&x~0~8801 &sk~0~8802 &fk~0~8803) (&sk~0~8802 &x~0~8801)) (car &x~0~8796) (lambda (&e~0~8805) ((lambda (&x~0~8807 &sk~0~8808 &fk~0~8809) (if (pair? &x~0~8807) ((lambda (&x~0~8812 &sk~0~8813 &fk~0~8814) (((lambda (&loop~0~8820) ((lambda (&temp~0~8823) (set! &loop~0~8820 &temp~0~8823) ((lambda () &loop~0~8820))) (lambda (&x~0~8828 &result~0~8829) ((lambda (&match-tail~0~8830) (set! &match-tail~0~8830 (lambda () ((lambda (&x~0~8853 &sk~0~8854 &fk~0~8855) (if (null? &x~0~8853) (&sk~0~8854) (&fk~0~8855))) &x~0~8828 (lambda () (apply &sk~0~8813 (if (null? &result~0~8829) (map (lambda (&ignore~0~8860) '()) '(literals)) (apply map list (reverse &result~0~8829))))) (lambda () ((lambda (&x~0~8868 &sk~0~8869 &fk~0~8870) (&sk~0~8869)) &x~0~8828 (lambda () (&fk~0~8814)) (lambda () (ex:invalid-form &x~0~8828))))))) (if (null? &x~0~8828) (begin (&match-tail~0~8830)) (if (pair? &x~0~8828) (begin ((lambda (&x~0~8837 &sk~0~8838 &fk~0~8839) (if (&literal?~0~8763 &x~0~8837) ((lambda (&x~0~8842 &sk~0~8843 &fk~0~8844) (&sk~0~8843 &x~0~8842)) &x~0~8837 &sk~0~8838 &fk~0~8839) (&fk~0~8839))) (car &x~0~8828) (lambda &car-vars~0~8846 (&loop~0~8820 (cdr &x~0~8828) (cons &car-vars~0~8846 &result~0~8829))) &match-tail~0~8830)) (begin (&fk~0~8814))))) ex:undefined)))) ex:undefined) &x~0~8812 '())) (car &x~0~8807) (lambda (&literals~0~8876) ((lambda (&x~0~8878 &sk~0~8879 &fk~0~8880) (((lambda (&loop~0~8886) ((lambda (&temp~0~8889) (set! &loop~0~8886 &temp~0~8889) ((lambda () &loop~0~8886))) (lambda (&x~0~8894 &result~0~8895) ((lambda (&match-tail~0~8896) (set! &match-tail~0~8896 (lambda () ((lambda (&x~0~8914 &sk~0~8915 &fk~0~8916) (if (null? &x~0~8914) (&sk~0~8915) (&fk~0~8916))) &x~0~8894 (lambda () (apply &sk~0~8879 (if (null? &result~0~8895) (map (lambda (&ignore~0~8921) '()) '(clauses)) (apply map list (reverse &result~0~8895))))) (lambda () ((lambda (&x~0~8929 &sk~0~8930 &fk~0~8931) (&sk~0~8930)) &x~0~8894 (lambda () (&fk~0~8880)) (lambda () (ex:invalid-form &x~0~8894))))))) (if (null? &x~0~8894) (begin (&match-tail~0~8896)) (if (pair? &x~0~8894) (begin ((lambda (&x~0~8903 &sk~0~8904 &fk~0~8905) (&sk~0~8904 &x~0~8903)) (car &x~0~8894) (lambda &car-vars~0~8907 (&loop~0~8886 (cdr &x~0~8894) (cons &car-vars~0~8907 &result~0~8895))) &match-tail~0~8896)) (begin (&fk~0~8880))))) ex:undefined)))) ex:undefined) &x~0~8878 '())) (cdr &x~0~8807) (lambda (&clauses~0~8937) (&sk~0~8808 &literals~0~8876 &clauses~0~8937)) &fk~0~8809)) &fk~0~8809) (&fk~0~8809))) (cdr &x~0~8796) (lambda (&literals~0~8939 &clauses~0~8940) (&sk~0~8797 &e~0~8805 &literals~0~8939 &clauses~0~8940)) &fk~0~8798)) &fk~0~8798) (&fk~0~8798))) (cdr &x~0~8786) (lambda (&e~0~8942 &literals~0~8943 &clauses~0~8944) (&sk~0~8787 &e~0~8942 &literals~0~8943 &clauses~0~8944)) &fk~0~8788)) &fk~0~8788) (&fk~0~8788))) &exp~0~8762 (lambda (&e~0~8946 &literals~0~8947 &clauses~0~8948) ((lambda (&input~0~8951) (list 'let (list (list &input~0~8951 (&expand~0~3847 &e~0~8946))) (&process-clauses~0~3872 &clauses~0~8948 &input~0~8951 &literals~0~8947))) (&generate-guid~0~3805 'input))) (lambda () (ex:invalid-form &exp~0~8762)))) ex:undefined))) (set! &process-clauses~0~3872 (lambda (&clauses~0~7907 &input~0~7908 &literals~0~7909) ((lambda (&process-clause~0~7913 &pattern-vars~0~7912 &process-match~0~7911 &literal?~0~7910) (set! &literal?~0~7910 (lambda (&pattern~0~8756) (if (&identifier?~0~3795 &pattern~0~8756) (memp (lambda (&x~0~8760) (&bound-identifier=?~0~3802 &x~0~8760 &pattern~0~8756)) &literals~0~7909) #f))) (set! &process-match~0~7911 (lambda (&input~0~8382 &pattern~0~8383 &sk~0~8384 &fk~0~8385) (if (not (symbol? &input~0~8382)) ((lambda (&temp~0~8389) (list 'let (list (list &temp~0~8389 &input~0~8382)) (&process-match~0~7911 &temp~0~8389 &pattern~0~8383 &sk~0~8384 &fk~0~8385))) (&generate-guid~0~3805 'temp)) ((lambda (&x~0~8397 &sk~0~8398 &fk~0~8399) (if (ex:free=? &x~0~8397 '_) (&sk~0~8398) (&fk~0~8399))) &pattern~0~8383 (lambda () &sk~0~8384) (lambda () ((lambda (&x~0~8408 &sk~0~8409 &fk~0~8410) (if (ex:free=? &x~0~8408 '...) (&sk~0~8409) (&fk~0~8410))) &pattern~0~8383 (lambda () (&syntax-violation~0~3903 'syntax-case "Invalid use of ellipses" &pattern~0~8383)) (lambda () ((lambda (&x~0~8420 &sk~0~8421 &fk~0~8422) (if (null? &x~0~8420) (&sk~0~8421) (&fk~0~8422))) &pattern~0~8383 (lambda () (list 'if (list 'null? &input~0~8382) &sk~0~8384 &fk~0~8385)) (lambda () ((lambda (&x~0~8435 &sk~0~8436 &fk~0~8437) (if (&literal?~0~7910 &x~0~8435) ((lambda (&x~0~8440 &sk~0~8441 &fk~0~8442) (&sk~0~8441 &x~0~8440)) &x~0~8435 &sk~0~8436 &fk~0~8437) (&fk~0~8437))) &pattern~0~8383 (lambda (&id~0~8444) (list 'if (list 'and (list 'ex:identifier? &input~0~8382) (list 'ex:free-identifier=? &input~0~8382 (&syntax-reflect~0~3831 &id~0~8444))) &sk~0~8384 &fk~0~8385)) (lambda () ((lambda (&x~0~8457 &sk~0~8458 &fk~0~8459) (if (&identifier?~0~3795 &x~0~8457) ((lambda (&x~0~8462 &sk~0~8463 &fk~0~8464) (&sk~0~8463 &x~0~8462)) &x~0~8457 &sk~0~8458 &fk~0~8459) (&fk~0~8459))) &pattern~0~8383 (lambda (&id~0~8466) (list 'let (list (list (&binding-name~0~3810 (&binding~0~3816 &id~0~8466)) &input~0~8382)) &sk~0~8384)) (lambda () ((lambda (&x~0~8482 &sk~0~8483 &fk~0~8484) (if (pair? &x~0~8482) ((lambda (&x~0~8487 &sk~0~8488 &fk~0~8489) (&sk~0~8488 &x~0~8487)) (car &x~0~8482) (lambda (&p~0~8491) ((lambda (&x~0~8493 &sk~0~8494 &fk~0~8495) (if (pair? &x~0~8493) ((lambda (&x~0~8498 &sk~0~8499 &fk~0~8500) (if (ex:free=? &x~0~8498 '...) (&sk~0~8499) (&fk~0~8500))) (car &x~0~8493) (lambda () ((lambda (&x~0~8505 &sk~0~8506 &fk~0~8507) (if (null? &x~0~8505) (&sk~0~8506) (&fk~0~8507))) (cdr &x~0~8493) (lambda () (&sk~0~8494)) &fk~0~8495)) &fk~0~8495) (&fk~0~8495))) (cdr &x~0~8482) (lambda () (&sk~0~8483 &p~0~8491)) &fk~0~8484)) &fk~0~8484) (&fk~0~8484))) &pattern~0~8383 (lambda (&p~0~8512) ((lambda (&mapped-pvars~0~8515) (if (if (&identifier?~0~3795 &p~0~8512) (= (length &mapped-pvars~0~8515) 1) #f) (list 'if (list 'list? &input~0~8382) (list 'let (list (list (car &mapped-pvars~0~8515) &input~0~8382)) &sk~0~8384) &fk~0~8385) ((lambda (&columns~0~8525 &rest~0~8526) (list 'ex:map-while (list 'lambda (list &input~0~8382) (&process-match~0~7911 &input~0~8382 &p~0~8512 (cons 'list &mapped-pvars~0~8515) #f)) &input~0~8382 (list 'lambda (list &columns~0~8525 &rest~0~8526) (list 'if (list 'null? &rest~0~8526) (list 'apply (list 'lambda &mapped-pvars~0~8515 &sk~0~8384) (list 'if (list 'null? &columns~0~8525) (list 'quote (map (lambda (&ignore~0~8541) '()) &mapped-pvars~0~8515)) (list 'apply 'map 'list &columns~0~8525))) &fk~0~8385)))) (&generate-guid~0~3805 'cols) (&generate-guid~0~3805 'rest)))) (map (lambda (&pvar~0~8549) (&binding-name~0~3810 (&binding~0~3816 &pvar~0~8549))) (map car (&pattern-vars~0~7912 &p~0~8512 0))))) (lambda () ((lambda (&x~0~8563 &sk~0~8564 &fk~0~8565) (if (pair? &x~0~8563) ((lambda (&x~0~8568 &sk~0~8569 &fk~0~8570) (&sk~0~8569 &x~0~8568)) (car &x~0~8563) (lambda (&p~0~8572) ((lambda (&x~0~8574 &sk~0~8575 &fk~0~8576) (if (pair? &x~0~8574) ((lambda (&x~0~8579 &sk~0~8580 &fk~0~8581) (if (ex:free=? &x~0~8579 '...) (&sk~0~8580) (&fk~0~8581))) (car &x~0~8574) (lambda () ((lambda (&x~0~8586 &sk~0~8587 &fk~0~8588) (&sk~0~8587 &x~0~8586)) (cdr &x~0~8574) (lambda (&tail~0~8590) (&sk~0~8575 &tail~0~8590)) &fk~0~8576)) &fk~0~8576) (&fk~0~8576))) (cdr &x~0~8563) (lambda (&tail~0~8592) (&sk~0~8564 &p~0~8572 &tail~0~8592)) &fk~0~8565)) &fk~0~8565) (&fk~0~8565))) &pattern~0~8383 (lambda (&p~0~8594 &tail~0~8595) ((lambda (&tail-length~0~8598) (list 'if (list '>= (list 'ex:dotted-length &input~0~8382) &tail-length~0~8598) (&process-match~0~7911 (list 'ex:dotted-butlast &input~0~8382 &tail-length~0~8598) (list &p~0~8594 (cadr &pattern~0~8383)) (&process-match~0~7911 (list 'ex:dotted-last &input~0~8382 &tail-length~0~8598) &tail~0~8595 &sk~0~8384 &fk~0~8385) &fk~0~8385) &fk~0~8385)) (&dotted-length~0~3917 &tail~0~8595))) (lambda () ((lambda (&x~0~8617 &sk~0~8618 &fk~0~8619) (if (pair? &x~0~8617) ((lambda (&x~0~8622 &sk~0~8623 &fk~0~8624) (&sk~0~8623 &x~0~8622)) (car &x~0~8617) (lambda (&p1~0~8626) ((lambda (&x~0~8628 &sk~0~8629 &fk~0~8630) (&sk~0~8629 &x~0~8628)) (cdr &x~0~8617) (lambda (&p2~0~8632) (&sk~0~8618 &p1~0~8626 &p2~0~8632)) &fk~0~8619)) &fk~0~8619) (&fk~0~8619))) &pattern~0~8383 (lambda (&p1~0~8634 &p2~0~8635) (list 'if (list 'pair? &input~0~8382) (&process-match~0~7911 (list 'car &input~0~8382) &p1~0~8634 (&process-match~0~7911 (list 'cdr &input~0~8382) &p2~0~8635 &sk~0~8384 &fk~0~8385) &fk~0~8385) &fk~0~8385)) (lambda () ((lambda (&x~0~8652 &sk~0~8653 &fk~0~8654) (if (vector? &x~0~8652) ((lambda (&x~0~8657 &sk~0~8658 &fk~0~8659) (((lambda (&loop~0~8665) ((lambda (&temp~0~8668) (set! &loop~0~8665 &temp~0~8668) ((lambda () &loop~0~8665))) (lambda (&x~0~8673 &result~0~8674) ((lambda (&match-tail~0~8675) (set! &match-tail~0~8675 (lambda () ((lambda (&x~0~8693 &sk~0~8694 &fk~0~8695) (if (null? &x~0~8693) (&sk~0~8694) (&fk~0~8695))) &x~0~8673 (lambda () (apply &sk~0~8658 (if (null? &result~0~8674) (map (lambda (&ignore~0~8700) '()) '(ps)) (apply map list (reverse &result~0~8674))))) (lambda () ((lambda (&x~0~8708 &sk~0~8709 &fk~0~8710) (&sk~0~8709)) &x~0~8673 (lambda () (&fk~0~8659)) (lambda () (ex:invalid-form &x~0~8673))))))) (if (null? &x~0~8673) (begin (&match-tail~0~8675)) (if (pair? &x~0~8673) (begin ((lambda (&x~0~8682 &sk~0~8683 &fk~0~8684) (&sk~0~8683 &x~0~8682)) (car &x~0~8673) (lambda &car-vars~0~8686 (&loop~0~8665 (cdr &x~0~8673) (cons &car-vars~0~8686 &result~0~8674))) &match-tail~0~8675)) (begin (&fk~0~8659))))) ex:undefined)))) ex:undefined) &x~0~8657 '())) (vector->list &x~0~8652) &sk~0~8653 &fk~0~8654) (&fk~0~8654))) &pattern~0~8383 (lambda (&ps~0~8716) (list 'if (list 'vector? &input~0~8382) (&process-match~0~7911 (list 'vector->list &input~0~8382) &ps~0~8716 &sk~0~8384 &fk~0~8385) &fk~0~8385)) (lambda () ((lambda (&x~0~8729 &sk~0~8730 &fk~0~8731) (if (symbol? &x~0~8729) ((lambda (&x~0~8734 &sk~0~8735 &fk~0~8736) (&sk~0~8735)) &x~0~8729 &sk~0~8730 &fk~0~8731) (&fk~0~8731))) &pattern~0~8383 (lambda () (&syntax-violation~0~3903 'syntax-case "Symbol object may not appear in pattern" &pattern~0~8383)) (lambda () ((lambda (&x~0~8744 &sk~0~8745 &fk~0~8746) (&sk~0~8745 &x~0~8744)) &pattern~0~8383 (lambda (&other~0~8748) (list 'if (list 'equal? &input~0~8382 (list 'quote &other~0~8748)) &sk~0~8384 &fk~0~8385)) (lambda () (ex:invalid-form &pattern~0~8383)))))))))))))))))))))))))) (set! &pattern-vars~0~7912 (lambda (&pattern~0~8162 &level~0~8163) ((lambda (&x~0~8176 &sk~0~8177 &fk~0~8178) (if (pair? &x~0~8176) ((lambda (&x~0~8181 &sk~0~8182 &fk~0~8183) (&sk~0~8182 &x~0~8181)) (car &x~0~8176) (lambda (&p~0~8185) ((lambda (&x~0~8187 &sk~0~8188 &fk~0~8189) (if (pair? &x~0~8187) ((lambda (&x~0~8192 &sk~0~8193 &fk~0~8194) (if (ex:free=? &x~0~8192 '...) (&sk~0~8193) (&fk~0~8194))) (car &x~0~8187) (lambda () ((lambda (&x~0~8199 &sk~0~8200 &fk~0~8201) (&sk~0~8200 &x~0~8199)) (cdr &x~0~8187) (lambda (&tail~0~8203) (&sk~0~8188 &tail~0~8203)) &fk~0~8189)) &fk~0~8189) (&fk~0~8189))) (cdr &x~0~8176) (lambda (&tail~0~8205) (&sk~0~8177 &p~0~8185 &tail~0~8205)) &fk~0~8178)) &fk~0~8178) (&fk~0~8178))) &pattern~0~8162 (lambda (&p~0~8207 &tail~0~8208) (append (&pattern-vars~0~7912 &p~0~8207 (+ &level~0~8163 1)) (&pattern-vars~0~7912 &tail~0~8208 &level~0~8163))) (lambda () ((lambda (&x~0~8218 &sk~0~8219 &fk~0~8220) (if (pair? &x~0~8218) ((lambda (&x~0~8223 &sk~0~8224 &fk~0~8225) (&sk~0~8224 &x~0~8223)) (car &x~0~8218) (lambda (&p1~0~8227) ((lambda (&x~0~8229 &sk~0~8230 &fk~0~8231) (&sk~0~8230 &x~0~8229)) (cdr &x~0~8218) (lambda (&p2~0~8233) (&sk~0~8219 &p1~0~8227 &p2~0~8233)) &fk~0~8220)) &fk~0~8220) (&fk~0~8220))) &pattern~0~8162 (lambda (&p1~0~8235 &p2~0~8236) (append (&pattern-vars~0~7912 &p1~0~8235 &level~0~8163) (&pattern-vars~0~7912 &p2~0~8236 &level~0~8163))) (lambda () ((lambda (&x~0~8246 &sk~0~8247 &fk~0~8248) (if (vector? &x~0~8246) ((lambda (&x~0~8251 &sk~0~8252 &fk~0~8253) (((lambda (&loop~0~8259) ((lambda (&temp~0~8262) (set! &loop~0~8259 &temp~0~8262) ((lambda () &loop~0~8259))) (lambda (&x~0~8267 &result~0~8268) ((lambda (&match-tail~0~8269) (set! &match-tail~0~8269 (lambda () ((lambda (&x~0~8287 &sk~0~8288 &fk~0~8289) (if (null? &x~0~8287) (&sk~0~8288) (&fk~0~8289))) &x~0~8267 (lambda () (apply &sk~0~8252 (if (null? &result~0~8268) (map (lambda (&ignore~0~8294) '()) '(ps)) (apply map list (reverse &result~0~8268))))) (lambda () ((lambda (&x~0~8302 &sk~0~8303 &fk~0~8304) (&sk~0~8303)) &x~0~8267 (lambda () (&fk~0~8253)) (lambda () (ex:invalid-form &x~0~8267))))))) (if (null? &x~0~8267) (begin (&match-tail~0~8269)) (if (pair? &x~0~8267) (begin ((lambda (&x~0~8276 &sk~0~8277 &fk~0~8278) (&sk~0~8277 &x~0~8276)) (car &x~0~8267) (lambda &car-vars~0~8280 (&loop~0~8259 (cdr &x~0~8267) (cons &car-vars~0~8280 &result~0~8268))) &match-tail~0~8269)) (begin (&fk~0~8253))))) ex:undefined)))) ex:undefined) &x~0~8251 '())) (vector->list &x~0~8246) &sk~0~8247 &fk~0~8248) (&fk~0~8248))) &pattern~0~8162 (lambda (&ps~0~8310) (&pattern-vars~0~7912 &ps~0~8310 &level~0~8163)) (lambda () ((lambda (&x~0~8316 &sk~0~8317 &fk~0~8318) (if (ex:free=? &x~0~8316 '...) (&sk~0~8317) (&fk~0~8318))) &pattern~0~8162 (lambda () '()) (lambda () ((lambda (&x~0~8328 &sk~0~8329 &fk~0~8330) (if (ex:free=? &x~0~8328 '_) (&sk~0~8329) (&fk~0~8330))) &pattern~0~8162 (lambda () '()) (lambda () ((lambda (&x~0~8342 &sk~0~8343 &fk~0~8344) (if (&literal?~0~7910 &x~0~8342) ((lambda (&x~0~8347 &sk~0~8348 &fk~0~8349) (&sk~0~8348)) &x~0~8342 &sk~0~8343 &fk~0~8344) (&fk~0~8344))) &pattern~0~8162 (lambda () '()) (lambda () ((lambda (&x~0~8359 &sk~0~8360 &fk~0~8361) (if (&identifier?~0~3795 &x~0~8359) ((lambda (&x~0~8364 &sk~0~8365 &fk~0~8366) (&sk~0~8365 &x~0~8364)) &x~0~8359 &sk~0~8360 &fk~0~8361) (&fk~0~8361))) &pattern~0~8162 (lambda (&id~0~8368) (list (cons &id~0~8368 &level~0~8163))) (lambda () ((lambda (&x~0~8374 &sk~0~8375 &fk~0~8376) (&sk~0~8375)) &pattern~0~8162 (lambda () '()) (lambda () (ex:invalid-form &pattern~0~8162))))))))))))))))))) (set! &process-clause~0~7913 (lambda (&clause~0~8022 &input~0~8023 &fk~0~8024) ((lambda (&x~0~8033 &sk~0~8034 &fk~0~8035) (if (pair? &x~0~8033) ((lambda (&x~0~8038 &sk~0~8039 &fk~0~8040) (&sk~0~8039 &x~0~8038)) (car &x~0~8033) (lambda (&pattern~0~8042) ((lambda (&x~0~8044 &sk~0~8045 &fk~0~8046) (&sk~0~8045 &x~0~8044)) (cdr &x~0~8033) (lambda (&rest~0~8048) (&sk~0~8034 &pattern~0~8042 &rest~0~8048)) &fk~0~8035)) &fk~0~8035) (&fk~0~8035))) &clause~0~8022 (lambda (&pattern~0~8050 &rest~0~8051) ((lambda (&pvars~0~8054) (&check-set?~0~3921 (map car &pvars~0~8054) &bound-identifier=?~0~3802 (lambda (&dup~0~8157) (&syntax-violation~0~3903 'syntax-case "Repeated pattern variable" &clause~0~8022 &dup~0~8157))) ((lambda (&mappings~0~8057) ((lambda (&saved~0~8061) (set! &*usage-env*~0~3764 (&env-extend~0~3823 &mappings~0~8057 &*usage-env*~0~3764)) (call-with-values (lambda () (&process-match~0~7911 &input~0~8023 &pattern~0~8050 ((lambda (&x~0~8072 &sk~0~8073 &fk~0~8074) (if (pair? &x~0~8072) ((lambda (&x~0~8077 &sk~0~8078 &fk~0~8079) (&sk~0~8078 &x~0~8077)) (car &x~0~8072) (lambda (&template~0~8081) ((lambda (&x~0~8083 &sk~0~8084 &fk~0~8085) (if (null? &x~0~8083) (&sk~0~8084) (&fk~0~8085))) (cdr &x~0~8072) (lambda () (&sk~0~8073 &template~0~8081)) &fk~0~8074)) &fk~0~8074) (&fk~0~8074))) &rest~0~8051 (lambda (&template~0~8089) (&expand~0~3847 &template~0~8089)) (lambda () ((lambda (&x~0~8103 &sk~0~8104 &fk~0~8105) (if (pair? &x~0~8103) ((lambda (&x~0~8108 &sk~0~8109 &fk~0~8110) (&sk~0~8109 &x~0~8108)) (car &x~0~8103) (lambda (&fender~0~8112) ((lambda (&x~0~8114 &sk~0~8115 &fk~0~8116) (if (pair? &x~0~8114) ((lambda (&x~0~8119 &sk~0~8120 &fk~0~8121) (&sk~0~8120 &x~0~8119)) (car &x~0~8114) (lambda (&template~0~8123) ((lambda (&x~0~8125 &sk~0~8126 &fk~0~8127) (if (null? &x~0~8125) (&sk~0~8126) (&fk~0~8127))) (cdr &x~0~8114) (lambda () (&sk~0~8115 &template~0~8123)) &fk~0~8116)) &fk~0~8116) (&fk~0~8116))) (cdr &x~0~8103) (lambda (&template~0~8131) (&sk~0~8104 &fender~0~8112 &template~0~8131)) &fk~0~8105)) &fk~0~8105) (&fk~0~8105))) &rest~0~8051 (lambda (&fender~0~8133 &template~0~8134) (list 'if (&expand~0~3847 &fender~0~8133) (&expand~0~3847 &template~0~8134) &fk~0~8024)) (lambda () ((lambda (&x~0~8142 &sk~0~8143 &fk~0~8144) (&sk~0~8143)) &rest~0~8051 (lambda () (&syntax-violation~0~3903 'syntax-case "Invalid clause" &clause~0~8022)) (lambda () (ex:invalid-form &rest~0~8051))))))) &fk~0~8024)) (lambda &results~0~8150 (set! &*usage-env*~0~3764 &saved~0~8061) (apply values &results~0~8150)))) &*usage-env*~0~3764)) (map (lambda (&pvar~0~8154) (&make-local-mapping~0~3817 'pattern-variable (car &pvar~0~8154) (cdr &pvar~0~8154))) &pvars~0~8054))) (&pattern-vars~0~7912 &pattern~0~8050 0))) (lambda () (ex:invalid-form &clause~0~8022))))) ((lambda (&x~0~7918 &sk~0~7919 &fk~0~7920) (if (null? &x~0~7918) (&sk~0~7919) (&fk~0~7920))) &clauses~0~7907 (lambda () (list 'ex:invalid-form &input~0~7908)) (lambda () ((lambda (&x~0~7936 &sk~0~7937 &fk~0~7938) (if (pair? &x~0~7936) ((lambda (&x~0~7941 &sk~0~7942 &fk~0~7943) (&sk~0~7942 &x~0~7941)) (car &x~0~7936) (lambda (&clause~0~7945) ((lambda (&x~0~7947 &sk~0~7948 &fk~0~7949) (((lambda (&loop~0~7955) ((lambda (&temp~0~7958) (set! &loop~0~7955 &temp~0~7958) ((lambda () &loop~0~7955))) (lambda (&x~0~7963 &result~0~7964) ((lambda (&match-tail~0~7965) (set! &match-tail~0~7965 (lambda () ((lambda (&x~0~7983 &sk~0~7984 &fk~0~7985) (if (null? &x~0~7983) (&sk~0~7984) (&fk~0~7985))) &x~0~7963 (lambda () (apply &sk~0~7948 (if (null? &result~0~7964) (map (lambda (&ignore~0~7990) '()) '(clauses)) (apply map list (reverse &result~0~7964))))) (lambda () ((lambda (&x~0~7998 &sk~0~7999 &fk~0~8000) (&sk~0~7999)) &x~0~7963 (lambda () (&fk~0~7949)) (lambda () (ex:invalid-form &x~0~7963))))))) (if (null? &x~0~7963) (begin (&match-tail~0~7965)) (if (pair? &x~0~7963) (begin ((lambda (&x~0~7972 &sk~0~7973 &fk~0~7974) (&sk~0~7973 &x~0~7972)) (car &x~0~7963) (lambda &car-vars~0~7976 (&loop~0~7955 (cdr &x~0~7963) (cons &car-vars~0~7976 &result~0~7964))) &match-tail~0~7965)) (begin (&fk~0~7949))))) ex:undefined)))) ex:undefined) &x~0~7947 '())) (cdr &x~0~7936) (lambda (&clauses~0~8006) (&sk~0~7937 &clause~0~7945 &clauses~0~8006)) &fk~0~7938)) &fk~0~7938) (&fk~0~7938))) &clauses~0~7907 (lambda (&clause~0~8008 &clauses~0~8009) ((lambda (&fail~0~8012) (list 'let (list (list &fail~0~8012 (list 'lambda '() (&process-clauses~0~3872 &clauses~0~8009 &input~0~7908 &literals~0~7909)))) (&process-clause~0~7913 &clause~0~8008 &input~0~7908 (list &fail~0~8012)))) (&generate-guid~0~3805 'fail))) (lambda () (ex:invalid-form &clauses~0~7907)))))) ex:undefined ex:undefined ex:undefined ex:undefined))) (set! &expand-syntax~0~3873 (lambda (&form~0~7861) ((lambda (&x~0~7874 &sk~0~7875 &fk~0~7876) (if (pair? &x~0~7874) ((lambda (&x~0~7879 &sk~0~7880 &fk~0~7881) (&sk~0~7880)) (car &x~0~7874) (lambda () ((lambda (&x~0~7884 &sk~0~7885 &fk~0~7886) (if (pair? &x~0~7884) ((lambda (&x~0~7889 &sk~0~7890 &fk~0~7891) (&sk~0~7890 &x~0~7889)) (car &x~0~7884) (lambda (&template~0~7893) ((lambda (&x~0~7895 &sk~0~7896 &fk~0~7897) (if (null? &x~0~7895) (&sk~0~7896) (&fk~0~7897))) (cdr &x~0~7884) (lambda () (&sk~0~7885 &template~0~7893)) &fk~0~7886)) &fk~0~7886) (&fk~0~7886))) (cdr &x~0~7874) (lambda (&template~0~7901) (&sk~0~7875 &template~0~7901)) &fk~0~7876)) &fk~0~7876) (&fk~0~7876))) &form~0~7861 (lambda (&template~0~7903) (&process-template~0~3874 &template~0~7903 0 #f)) (lambda () (ex:invalid-form &form~0~7861))))) (set! &process-template~0~3874 (lambda (&template~0~7551 &dim~0~7552 &ellipses-quoted?~0~7553) ((lambda (&x~0~7558 &sk~0~7559 &fk~0~7560) (if (ex:free=? &x~0~7558 '...) (&sk~0~7559) (&fk~0~7560))) &template~0~7551 (lambda () (if (not &ellipses-quoted?~0~7553) (&syntax-violation~0~3903 'syntax "Invalid occurrence of ellipses in syntax template" &template~0~7551)) (&syntax-reflect~0~3831 &template~0~7551)) (lambda () ((lambda (&x~0~7573 &sk~0~7574 &fk~0~7575) (if (&identifier?~0~3795 &x~0~7573) ((lambda (&x~0~7578 &sk~0~7579 &fk~0~7580) (&sk~0~7579 &x~0~7578)) &x~0~7573 &sk~0~7574 &fk~0~7575) (&fk~0~7575))) &template~0~7551 (lambda (&id~0~7582) ((lambda (&binding~0~7585) ((lambda (&t~0~7589) (if &t~0~7589 ((lambda (&pdim~0~7592) (if (<= &pdim~0~7592 &dim~0~7552) (begin (&check-binding-level~0~3820 &id~0~7582 &binding~0~7585) (®ister-use!~0~3879 &id~0~7582 &binding~0~7585) (&binding-name~0~3810 &binding~0~7585)) (&syntax-violation~0~3903 'syntax "Template dimension error (too few ...'s?)" &id~0~7582))) &t~0~7589) (begin (&syntax-reflect~0~3831 &id~0~7582)))) (if &binding~0~7585 (if (eq? (&binding-type~0~3809 &binding~0~7585) 'pattern-variable) (&binding-dimension~0~3813 &binding~0~7585) #f) #f))) (&binding~0~3816 &id~0~7582))) (lambda () ((lambda (&x~0~7614 &sk~0~7615 &fk~0~7616) (if (pair? &x~0~7614) ((lambda (&x~0~7619 &sk~0~7620 &fk~0~7621) (if (ex:free=? &x~0~7619 '...) (&sk~0~7620) (&fk~0~7621))) (car &x~0~7614) (lambda () ((lambda (&x~0~7626 &sk~0~7627 &fk~0~7628) (if (pair? &x~0~7626) ((lambda (&x~0~7631 &sk~0~7632 &fk~0~7633) (&sk~0~7632 &x~0~7631)) (car &x~0~7626) (lambda (&p~0~7635) ((lambda (&x~0~7637 &sk~0~7638 &fk~0~7639) (if (null? &x~0~7637) (&sk~0~7638) (&fk~0~7639))) (cdr &x~0~7626) (lambda () (&sk~0~7627 &p~0~7635)) &fk~0~7628)) &fk~0~7628) (&fk~0~7628))) (cdr &x~0~7614) (lambda (&p~0~7643) (&sk~0~7615 &p~0~7643)) &fk~0~7616)) &fk~0~7616) (&fk~0~7616))) &template~0~7551 (lambda (&p~0~7645) (&process-template~0~3874 &p~0~7645 &dim~0~7552 #t)) (lambda () ((lambda (&x~0~7661 &sk~0~7662 &fk~0~7663) (if ((lambda (&_~0~7666) (not &ellipses-quoted?~0~7553)) &x~0~7661) ((lambda (&x~0~7668 &sk~0~7669 &fk~0~7670) (if (pair? &x~0~7668) ((lambda (&x~0~7673 &sk~0~7674 &fk~0~7675) (&sk~0~7674 &x~0~7673)) (car &x~0~7668) (lambda (&t~0~7677) ((lambda (&x~0~7679 &sk~0~7680 &fk~0~7681) (if (pair? &x~0~7679) ((lambda (&x~0~7684 &sk~0~7685 &fk~0~7686) (if (ex:free=? &x~0~7684 '...) (&sk~0~7685) (&fk~0~7686))) (car &x~0~7679) (lambda () ((lambda (&x~0~7691 &sk~0~7692 &fk~0~7693) (&sk~0~7692 &x~0~7691)) (cdr &x~0~7679) (lambda (&tail~0~7695) (&sk~0~7680 &tail~0~7695)) &fk~0~7681)) &fk~0~7681) (&fk~0~7681))) (cdr &x~0~7668) (lambda (&tail~0~7697) (&sk~0~7669 &t~0~7677 &tail~0~7697)) &fk~0~7670)) &fk~0~7670) (&fk~0~7670))) &x~0~7661 &sk~0~7662 &fk~0~7663) (&fk~0~7663))) &template~0~7551 (lambda (&t~0~7699 &tail~0~7700) ((lambda (&depth~0~7704) ((lambda (&seg-dim~0~7707) ((lambda (&vars~0~7710) (if (null? &vars~0~7710) (&syntax-violation~0~3903 'syntax "Too many ...'s" &template~0~7551) ((lambda (&x~0~7716) ((lambda (&gen~0~7719) ((lambda (&gen~0~7722) (if (null? (&segment-tail~0~3877 &template~0~7551)) &gen~0~7722 (list 'append &gen~0~7722 (&process-template~0~3874 (&segment-tail~0~3877 &template~0~7551) &dim~0~7552 &ellipses-quoted?~0~7553)))) (do ((d &depth~0~7704 (- d 1)) (&gen~0~7719 &gen~0~7719 (list 'apply 'append &gen~0~7719))) ((= d 1) &gen~0~7719)))) (if (equal? (list &x~0~7716) &vars~0~7710) &x~0~7716 (cons 'map (cons (list 'lambda &vars~0~7710 &x~0~7716) &vars~0~7710))))) (&process-template~0~3874 &t~0~7699 &seg-dim~0~7707 &ellipses-quoted?~0~7553)))) (map (lambda (&mapping~0~7734) ((lambda (&id~0~7737 &binding~0~7738) (&check-binding-level~0~3820 &id~0~7737 &binding~0~7738) (®ister-use!~0~3879 &id~0~7737 &binding~0~7738) (&binding-name~0~3810 &binding~0~7738)) (car &mapping~0~7734) (cdr &mapping~0~7734))) (&free-meta-variables~0~3875 &t~0~7699 &seg-dim~0~7707 '())))) (+ &dim~0~7552 &depth~0~7704))) (&segment-depth~0~3876 &template~0~7551))) (lambda () ((lambda (&x~0~7749 &sk~0~7750 &fk~0~7751) (if (pair? &x~0~7749) ((lambda (&x~0~7754 &sk~0~7755 &fk~0~7756) (&sk~0~7755 &x~0~7754)) (car &x~0~7749) (lambda (&t1~0~7758) ((lambda (&x~0~7760 &sk~0~7761 &fk~0~7762) (&sk~0~7761 &x~0~7760)) (cdr &x~0~7749) (lambda (&t2~0~7764) (&sk~0~7750 &t1~0~7758 &t2~0~7764)) &fk~0~7751)) &fk~0~7751) (&fk~0~7751))) &template~0~7551 (lambda (&t1~0~7766 &t2~0~7767) (list 'cons (&process-template~0~3874 &t1~0~7766 &dim~0~7552 &ellipses-quoted?~0~7553) (&process-template~0~3874 &t2~0~7767 &dim~0~7552 &ellipses-quoted?~0~7553))) (lambda () ((lambda (&x~0~7779 &sk~0~7780 &fk~0~7781) (if (vector? &x~0~7779) ((lambda (&x~0~7784 &sk~0~7785 &fk~0~7786) (((lambda (&loop~0~7792) ((lambda (&temp~0~7795) (set! &loop~0~7792 &temp~0~7795) ((lambda () &loop~0~7792))) (lambda (&x~0~7800 &result~0~7801) ((lambda (&match-tail~0~7802) (set! &match-tail~0~7802 (lambda () ((lambda (&x~0~7820 &sk~0~7821 &fk~0~7822) (if (null? &x~0~7820) (&sk~0~7821) (&fk~0~7822))) &x~0~7800 (lambda () (apply &sk~0~7785 (if (null? &result~0~7801) (map (lambda (&ignore~0~7827) '()) '(ts)) (apply map list (reverse &result~0~7801))))) (lambda () ((lambda (&x~0~7835 &sk~0~7836 &fk~0~7837) (&sk~0~7836)) &x~0~7800 (lambda () (&fk~0~7786)) (lambda () (ex:invalid-form &x~0~7800))))))) (if (null? &x~0~7800) (begin (&match-tail~0~7802)) (if (pair? &x~0~7800) (begin ((lambda (&x~0~7809 &sk~0~7810 &fk~0~7811) (&sk~0~7810 &x~0~7809)) (car &x~0~7800) (lambda &car-vars~0~7813 (&loop~0~7792 (cdr &x~0~7800) (cons &car-vars~0~7813 &result~0~7801))) &match-tail~0~7802)) (begin (&fk~0~7786))))) ex:undefined)))) ex:undefined) &x~0~7784 '())) (vector->list &x~0~7779) &sk~0~7780 &fk~0~7781) (&fk~0~7781))) &template~0~7551 (lambda (&ts~0~7843) (list 'list->vector (&process-template~0~3874 &ts~0~7843 &dim~0~7552 &ellipses-quoted?~0~7553))) (lambda () ((lambda (&x~0~7851 &sk~0~7852 &fk~0~7853) (&sk~0~7852 &x~0~7851)) &template~0~7551 (lambda (&other~0~7855) (list 'quote (&expand~0~3847 &other~0~7855))) (lambda () (ex:invalid-form &template~0~7551))))))))))))))))) (set! &free-meta-variables~0~3875 (lambda (&template~0~7358 &dim~0~7359 &free~0~7360) ((lambda (&x~0~7367 &sk~0~7368 &fk~0~7369) (if (&identifier?~0~3795 &x~0~7367) ((lambda (&x~0~7372 &sk~0~7373 &fk~0~7374) (&sk~0~7373 &x~0~7372)) &x~0~7367 &sk~0~7368 &fk~0~7369) (&fk~0~7369))) &template~0~7358 (lambda (&id~0~7376) (if (memp (lambda (&x~0~7379) (&bound-identifier=?~0~3802 (car &x~0~7379) &id~0~7376)) &free~0~7360) &free~0~7360 ((lambda (&binding~0~7382) (if (if &binding~0~7382 (if (eq? (&binding-type~0~3809 &binding~0~7382) 'pattern-variable) ((lambda (&pdim~0~7390) (>= &pdim~0~7390 &dim~0~7359)) (&binding-dimension~0~3813 &binding~0~7382)) #f) #f) (cons (cons &id~0~7376 &binding~0~7382) &free~0~7360) &free~0~7360)) (&binding~0~3816 &id~0~7376)))) (lambda () ((lambda (&x~0~7404 &sk~0~7405 &fk~0~7406) (if (pair? &x~0~7404) ((lambda (&x~0~7409 &sk~0~7410 &fk~0~7411) (&sk~0~7410 &x~0~7409)) (car &x~0~7404) (lambda (&t~0~7413) ((lambda (&x~0~7415 &sk~0~7416 &fk~0~7417) (if (pair? &x~0~7415) ((lambda (&x~0~7420 &sk~0~7421 &fk~0~7422) (if (ex:free=? &x~0~7420 '...) (&sk~0~7421) (&fk~0~7422))) (car &x~0~7415) (lambda () ((lambda (&x~0~7427 &sk~0~7428 &fk~0~7429) (&sk~0~7428 &x~0~7427)) (cdr &x~0~7415) (lambda (&tail~0~7431) (&sk~0~7416 &tail~0~7431)) &fk~0~7417)) &fk~0~7417) (&fk~0~7417))) (cdr &x~0~7404) (lambda (&tail~0~7433) (&sk~0~7405 &t~0~7413 &tail~0~7433)) &fk~0~7406)) &fk~0~7406) (&fk~0~7406))) &template~0~7358 (lambda (&t~0~7435 &tail~0~7436) (&free-meta-variables~0~3875 &t~0~7435 &dim~0~7359 (&free-meta-variables~0~3875 &tail~0~7436 &dim~0~7359 &free~0~7360))) (lambda () ((lambda (&x~0~7446 &sk~0~7447 &fk~0~7448) (if (pair? &x~0~7446) ((lambda (&x~0~7451 &sk~0~7452 &fk~0~7453) (&sk~0~7452 &x~0~7451)) (car &x~0~7446) (lambda (&t1~0~7455) ((lambda (&x~0~7457 &sk~0~7458 &fk~0~7459) (&sk~0~7458 &x~0~7457)) (cdr &x~0~7446) (lambda (&t2~0~7461) (&sk~0~7447 &t1~0~7455 &t2~0~7461)) &fk~0~7448)) &fk~0~7448) (&fk~0~7448))) &template~0~7358 (lambda (&t1~0~7463 &t2~0~7464) (&free-meta-variables~0~3875 &t1~0~7463 &dim~0~7359 (&free-meta-variables~0~3875 &t2~0~7464 &dim~0~7359 &free~0~7360))) (lambda () ((lambda (&x~0~7474 &sk~0~7475 &fk~0~7476) (if (vector? &x~0~7474) ((lambda (&x~0~7479 &sk~0~7480 &fk~0~7481) (((lambda (&loop~0~7487) ((lambda (&temp~0~7490) (set! &loop~0~7487 &temp~0~7490) ((lambda () &loop~0~7487))) (lambda (&x~0~7495 &result~0~7496) ((lambda (&match-tail~0~7497) (set! &match-tail~0~7497 (lambda () ((lambda (&x~0~7515 &sk~0~7516 &fk~0~7517) (if (null? &x~0~7515) (&sk~0~7516) (&fk~0~7517))) &x~0~7495 (lambda () (apply &sk~0~7480 (if (null? &result~0~7496) (map (lambda (&ignore~0~7522) '()) '(ts)) (apply map list (reverse &result~0~7496))))) (lambda () ((lambda (&x~0~7530 &sk~0~7531 &fk~0~7532) (&sk~0~7531)) &x~0~7495 (lambda () (&fk~0~7481)) (lambda () (ex:invalid-form &x~0~7495))))))) (if (null? &x~0~7495) (begin (&match-tail~0~7497)) (if (pair? &x~0~7495) (begin ((lambda (&x~0~7504 &sk~0~7505 &fk~0~7506) (&sk~0~7505 &x~0~7504)) (car &x~0~7495) (lambda &car-vars~0~7508 (&loop~0~7487 (cdr &x~0~7495) (cons &car-vars~0~7508 &result~0~7496))) &match-tail~0~7497)) (begin (&fk~0~7481))))) ex:undefined)))) ex:undefined) &x~0~7479 '())) (vector->list &x~0~7474) &sk~0~7475 &fk~0~7476) (&fk~0~7476))) &template~0~7358 (lambda (&ts~0~7538) (&free-meta-variables~0~3875 &ts~0~7538 &dim~0~7359 &free~0~7360)) (lambda () ((lambda (&x~0~7544 &sk~0~7545 &fk~0~7546) (&sk~0~7545)) &template~0~7358 (lambda () &free~0~7360) (lambda () (ex:invalid-form &template~0~7358))))))))))))) (set! &segment-depth~0~3876 (lambda (&pattern~0~7300) ((lambda (&x~0~7313 &sk~0~7314 &fk~0~7315) (if (pair? &x~0~7313) ((lambda (&x~0~7318 &sk~0~7319 &fk~0~7320) (&sk~0~7319 &x~0~7318)) (car &x~0~7313) (lambda (&p~0~7322) ((lambda (&x~0~7324 &sk~0~7325 &fk~0~7326) (if (pair? &x~0~7324) ((lambda (&x~0~7329 &sk~0~7330 &fk~0~7331) (if (ex:free=? &x~0~7329 '...) (&sk~0~7330) (&fk~0~7331))) (car &x~0~7324) (lambda () ((lambda (&x~0~7336 &sk~0~7337 &fk~0~7338) (&sk~0~7337 &x~0~7336)) (cdr &x~0~7324) (lambda (&rest~0~7340) (&sk~0~7325 &rest~0~7340)) &fk~0~7326)) &fk~0~7326) (&fk~0~7326))) (cdr &x~0~7313) (lambda (&rest~0~7342) (&sk~0~7314 &p~0~7322 &rest~0~7342)) &fk~0~7315)) &fk~0~7315) (&fk~0~7315))) &pattern~0~7300 (lambda (&p~0~7344 &rest~0~7345) (+ 1 (&segment-depth~0~3876 (cdr &pattern~0~7300)))) (lambda () ((lambda (&x~0~7351 &sk~0~7352 &fk~0~7353) (&sk~0~7352)) &pattern~0~7300 (lambda () 0) (lambda () (ex:invalid-form &pattern~0~7300))))))) (set! &segment-tail~0~3877 (lambda (&pattern~0~7246) (((lambda (&loop~0~7252) ((lambda (&temp~0~7255) (set! &loop~0~7252 &temp~0~7255) ((lambda () &loop~0~7252))) (lambda (&pattern~0~7260) ((lambda (&x~0~7269 &sk~0~7270 &fk~0~7271) (if (pair? &x~0~7269) ((lambda (&x~0~7274 &sk~0~7275 &fk~0~7276) (if (ex:free=? &x~0~7274 '...) (&sk~0~7275) (&fk~0~7276))) (car &x~0~7269) (lambda () ((lambda (&x~0~7281 &sk~0~7282 &fk~0~7283) (&sk~0~7282 &x~0~7281)) (cdr &x~0~7269) (lambda (&tail~0~7285) (&sk~0~7270 &tail~0~7285)) &fk~0~7271)) &fk~0~7271) (&fk~0~7271))) &pattern~0~7260 (lambda (&tail~0~7287) (&loop~0~7252 &tail~0~7287)) (lambda () ((lambda (&x~0~7293 &sk~0~7294 &fk~0~7295) (&sk~0~7294)) &pattern~0~7260 (lambda () &pattern~0~7260) (lambda () (ex:invalid-form &pattern~0~7260)))))))) ex:undefined) (cdr &pattern~0~7246)))) (set! &add-fresh-used-frame!~0~3878 (lambda () (set! &*used*~0~3782 (cons '() &*used*~0~3782)))) (set! ®ister-use!~0~3879 (lambda (&id~0~7239 &binding~0~7240) (set! &*used*~0~3782 (cons (cons (cons &id~0~7239 &binding~0~7240) (car &*used*~0~3782)) (cdr &*used*~0~3782))))) (set! &merge-used-with-parent-frame!~0~3880 (lambda () (set! &*used*~0~3782 (cons (append (car &*used*~0~3782) (cadr &*used*~0~3782)) (cddr &*used*~0~3782))))) (set! &check-used~0~3881 (lambda (&id~0~7217 &body-type~0~7218 &form~0~7219) (if (not (eq? &body-type~0~7218 'toplevel)) ((lambda (&already-used~0~7226) ((lambda (&binding~0~7229) (if (memp (lambda (&mapping~0~7232) (if (eq? &binding~0~7229 (cdr &mapping~0~7232)) (&bound-identifier=?~0~3802 &id~0~7217 (car &mapping~0~7232)) #f)) &already-used~0~7226) (&syntax-violation~0~3903 'definition "Definition of identifier that may have already affected meaning of undeferred portions of body" &form~0~7219 &id~0~7217))) (&binding~0~3816 &id~0~7217))) (car &*used*~0~3782)) #f))) (set! &expand-program~0~3882 (lambda (&t~0~7106) ((lambda (&x~0~7121 &sk~0~7122 &fk~0~7123) (if (pair? &x~0~7121) ((lambda (&x~0~7126 &sk~0~7127 &fk~0~7128) (&sk~0~7127 &x~0~7126)) (car &x~0~7121) (lambda (&program~0~7130) ((lambda (&x~0~7132 &sk~0~7133 &fk~0~7134) (if (pair? &x~0~7132) ((lambda (&x~0~7137 &sk~0~7138 &fk~0~7139) (&sk~0~7138 &x~0~7137)) (car &x~0~7132) (lambda (&import-clause~0~7141) ((lambda (&x~0~7143 &sk~0~7144 &fk~0~7145) (((lambda (&loop~0~7151) ((lambda (&temp~0~7154) (set! &loop~0~7151 &temp~0~7154) ((lambda () &loop~0~7151))) (lambda (&x~0~7159 &result~0~7160) ((lambda (&match-tail~0~7161) (set! &match-tail~0~7161 (lambda () ((lambda (&x~0~7179 &sk~0~7180 &fk~0~7181) (if (null? &x~0~7179) (&sk~0~7180) (&fk~0~7181))) &x~0~7159 (lambda () (apply &sk~0~7144 (if (null? &result~0~7160) (map (lambda (&ignore~0~7186) '()) '(forms)) (apply map list (reverse &result~0~7160))))) (lambda () ((lambda (&x~0~7194 &sk~0~7195 &fk~0~7196) (&sk~0~7195)) &x~0~7159 (lambda () (&fk~0~7145)) (lambda () (ex:invalid-form &x~0~7159))))))) (if (null? &x~0~7159) (begin (&match-tail~0~7161)) (if (pair? &x~0~7159) (begin ((lambda (&x~0~7168 &sk~0~7169 &fk~0~7170) (&sk~0~7169 &x~0~7168)) (car &x~0~7159) (lambda &car-vars~0~7172 (&loop~0~7151 (cdr &x~0~7159) (cons &car-vars~0~7172 &result~0~7160))) &match-tail~0~7161)) (begin (&fk~0~7145))))) ex:undefined)))) ex:undefined) &x~0~7143 '())) (cdr &x~0~7132) (lambda (&forms~0~7202) (&sk~0~7133 &import-clause~0~7141 &forms~0~7202)) &fk~0~7134)) &fk~0~7134) (&fk~0~7134))) (cdr &x~0~7121) (lambda (&import-clause~0~7204 &forms~0~7205) (&sk~0~7122 &program~0~7130 &import-clause~0~7204 &forms~0~7205)) &fk~0~7123)) &fk~0~7123) (&fk~0~7123))) &t~0~7106 (lambda (&program~0~7207 &import-clause~0~7208 &forms~0~7209) (&expand-library-or-program~0~3884 (cons &program~0~7207 (cons (list (&datum->syntax~0~3833 &program~0~7207 (&generate-guid~0~3805 'program))) (cons (list (&datum->syntax~0~3833 &program~0~7207 'export)) (cons &import-clause~0~7208 &forms~0~7209)))) 'program)) (lambda () (ex:invalid-form &t~0~7106))))) (set! &expand-library~0~3883 (lambda (&t~0~7103) (&expand-library-or-program~0~3884 &t~0~7103 'library))) (set! &expand-library-or-program~0~3884 (lambda (&t~0~6663 &library-type~0~6664) ((lambda (&x~0~6699 &sk~0~6700 &fk~0~6701) (if (pair? &x~0~6699) ((lambda (&x~0~6704 &sk~0~6705 &fk~0~6706) (&sk~0~6705 &x~0~6704)) (car &x~0~6699) (lambda (&keyword~0~6708) ((lambda (&x~0~6710 &sk~0~6711 &fk~0~6712) (if (pair? &x~0~6710) ((lambda (&x~0~6715 &sk~0~6716 &fk~0~6717) (&sk~0~6716 &x~0~6715)) (car &x~0~6710) (lambda (&name~0~6719) ((lambda (&x~0~6721 &sk~0~6722 &fk~0~6723) (if (pair? &x~0~6721) ((lambda (&x~0~6726 &sk~0~6727 &fk~0~6728) (if (pair? &x~0~6726) ((lambda (&x~0~6731 &sk~0~6732 &fk~0~6733) (if (ex:free=? &x~0~6731 'export) (&sk~0~6732) (&fk~0~6733))) (car &x~0~6726) (lambda () ((lambda (&x~0~6738 &sk~0~6739 &fk~0~6740) (((lambda (&loop~0~6746) ((lambda (&temp~0~6749) (set! &loop~0~6746 &temp~0~6749) ((lambda () &loop~0~6746))) (lambda (&x~0~6754 &result~0~6755) ((lambda (&match-tail~0~6756) (set! &match-tail~0~6756 (lambda () ((lambda (&x~0~6774 &sk~0~6775 &fk~0~6776) (if (null? &x~0~6774) (&sk~0~6775) (&fk~0~6776))) &x~0~6754 (lambda () (apply &sk~0~6739 (if (null? &result~0~6755) (map (lambda (&ignore~0~6781) '()) '(sets)) (apply map list (reverse &result~0~6755))))) (lambda () ((lambda (&x~0~6789 &sk~0~6790 &fk~0~6791) (&sk~0~6790)) &x~0~6754 (lambda () (&fk~0~6740)) (lambda () (ex:invalid-form &x~0~6754))))))) (if (null? &x~0~6754) (begin (&match-tail~0~6756)) (if (pair? &x~0~6754) (begin ((lambda (&x~0~6763 &sk~0~6764 &fk~0~6765) (&sk~0~6764 &x~0~6763)) (car &x~0~6754) (lambda &car-vars~0~6767 (&loop~0~6746 (cdr &x~0~6754) (cons &car-vars~0~6767 &result~0~6755))) &match-tail~0~6756)) (begin (&fk~0~6740))))) ex:undefined)))) ex:undefined) &x~0~6738 '())) (cdr &x~0~6726) (lambda (&sets~0~6797) (&sk~0~6727 &sets~0~6797)) &fk~0~6728)) &fk~0~6728) (&fk~0~6728))) (car &x~0~6721) (lambda (&sets~0~6799) ((lambda (&x~0~6801 &sk~0~6802 &fk~0~6803) (if (pair? &x~0~6801) ((lambda (&x~0~6806 &sk~0~6807 &fk~0~6808) (if (pair? &x~0~6806) ((lambda (&x~0~6811 &sk~0~6812 &fk~0~6813) (if (ex:free=? &x~0~6811 'import) (&sk~0~6812) (&fk~0~6813))) (car &x~0~6806) (lambda () ((lambda (&x~0~6818 &sk~0~6819 &fk~0~6820) (((lambda (&loop~0~6826) ((lambda (&temp~0~6829) (set! &loop~0~6826 &temp~0~6829) ((lambda () &loop~0~6826))) (lambda (&x~0~6834 &result~0~6835) ((lambda (&match-tail~0~6836) (set! &match-tail~0~6836 (lambda () ((lambda (&x~0~6854 &sk~0~6855 &fk~0~6856) (if (null? &x~0~6854) (&sk~0~6855) (&fk~0~6856))) &x~0~6834 (lambda () (apply &sk~0~6819 (if (null? &result~0~6835) (map (lambda (&ignore~0~6861) '()) '(specs)) (apply map list (reverse &result~0~6835))))) (lambda () ((lambda (&x~0~6869 &sk~0~6870 &fk~0~6871) (&sk~0~6870)) &x~0~6834 (lambda () (&fk~0~6820)) (lambda () (ex:invalid-form &x~0~6834))))))) (if (null? &x~0~6834) (begin (&match-tail~0~6836)) (if (pair? &x~0~6834) (begin ((lambda (&x~0~6843 &sk~0~6844 &fk~0~6845) (&sk~0~6844 &x~0~6843)) (car &x~0~6834) (lambda &car-vars~0~6847 (&loop~0~6826 (cdr &x~0~6834) (cons &car-vars~0~6847 &result~0~6835))) &match-tail~0~6836)) (begin (&fk~0~6820))))) ex:undefined)))) ex:undefined) &x~0~6818 '())) (cdr &x~0~6806) (lambda (&specs~0~6877) (&sk~0~6807 &specs~0~6877)) &fk~0~6808)) &fk~0~6808) (&fk~0~6808))) (car &x~0~6801) (lambda (&specs~0~6879) ((lambda (&x~0~6881 &sk~0~6882 &fk~0~6883) (((lambda (&loop~0~6889) ((lambda (&temp~0~6892) (set! &loop~0~6889 &temp~0~6892) ((lambda () &loop~0~6889))) (lambda (&x~0~6897 &result~0~6898) ((lambda (&match-tail~0~6899) (set! &match-tail~0~6899 (lambda () ((lambda (&x~0~6917 &sk~0~6918 &fk~0~6919) (if (null? &x~0~6917) (&sk~0~6918) (&fk~0~6919))) &x~0~6897 (lambda () (apply &sk~0~6882 (if (null? &result~0~6898) (map (lambda (&ignore~0~6924) '()) '(body-forms)) (apply map list (reverse &result~0~6898))))) (lambda () ((lambda (&x~0~6932 &sk~0~6933 &fk~0~6934) (&sk~0~6933)) &x~0~6897 (lambda () (&fk~0~6883)) (lambda () (ex:invalid-form &x~0~6897))))))) (if (null? &x~0~6897) (begin (&match-tail~0~6899)) (if (pair? &x~0~6897) (begin ((lambda (&x~0~6906 &sk~0~6907 &fk~0~6908) (&sk~0~6907 &x~0~6906)) (car &x~0~6897) (lambda &car-vars~0~6910 (&loop~0~6889 (cdr &x~0~6897) (cons &car-vars~0~6910 &result~0~6898))) &match-tail~0~6899)) (begin (&fk~0~6883))))) ex:undefined)))) ex:undefined) &x~0~6881 '())) (cdr &x~0~6801) (lambda (&body-forms~0~6940) (&sk~0~6802 &specs~0~6879 &body-forms~0~6940)) &fk~0~6803)) &fk~0~6803) (&fk~0~6803))) (cdr &x~0~6721) (lambda (&specs~0~6942 &body-forms~0~6943) (&sk~0~6722 &sets~0~6799 &specs~0~6942 &body-forms~0~6943)) &fk~0~6723)) &fk~0~6723) (&fk~0~6723))) (cdr &x~0~6710) (lambda (&sets~0~6945 &specs~0~6946 &body-forms~0~6947) (&sk~0~6711 &name~0~6719 &sets~0~6945 &specs~0~6946 &body-forms~0~6947)) &fk~0~6712)) &fk~0~6712) (&fk~0~6712))) (cdr &x~0~6699) (lambda (&name~0~6949 &sets~0~6950 &specs~0~6951 &body-forms~0~6952) (&sk~0~6700 &keyword~0~6708 &name~0~6949 &sets~0~6950 &specs~0~6951 &body-forms~0~6952)) &fk~0~6701)) &fk~0~6701) (&fk~0~6701))) &t~0~6663 (lambda (&keyword~0~6954 &name~0~6955 &sets~0~6956 &specs~0~6957 &body-forms~0~6958) ((lambda (&name~0~6961) ((lambda (&exports~0~6964) (call-with-values (lambda () (&scan-imports~0~3890 &specs~0~6957)) (lambda (&imported-libraries~0~6967 &imports~0~6968) ((lambda (&saved~0~6972) (set! &*usage-env*~0~3764 (&make-unit-env~0~3822)) (call-with-values (lambda () ((lambda (&saved~0~6977) (set! &*env-table*~0~3776 '()) (call-with-values (lambda () ((lambda (&saved~0~6982) (set! &*macro-table*~0~3773 '()) (call-with-values (lambda () ((lambda (&saved~0~6987) (set! &*current-library*~0~3779 &name~0~6961) (call-with-values (lambda () ((lambda (&saved~0~6992) (set! &*syntax-reflected*~0~3788 #f) (call-with-values (lambda () (&import-libraries-for-expand~0~3887 &imported-libraries~0~6967 (map not &imported-libraries~0~6967) 0) (&env-import!~0~3885 &keyword~0~6954 &imports~0~6968 &*usage-env*~0~3764) ((lambda (&initial-env-table~0~6997) (&scan-sequence~0~3863 &library-type~0~6664 &make-local-mapping~0~3817 &body-forms~0~6958 (lambda (&forms~0~6999 &syntax-definitions~0~7000 &bound-variables~0~7001) ((lambda (&exports~0~7005) ((lambda (&expanded-library~0~7008) (if (eq? &library-type~0~6664 'library) (eval &expanded-library~0~7008 (interaction-environment))) &expanded-library~0~7008) ((lambda (&t~0~7014) (if (memv &t~0~7014 '(program)) (begin (cons 'begin (cons (cons 'ex:import-libraries-for-run (cons (list 'quote &imported-libraries~0~6967) (cons (list 'quote (¤t-builds~0~3886 &imported-libraries~0~6967)) '(0)))) (&emit-body~0~3864 &forms~0~6999 'define)))) (if (memv &t~0~7014 '(library)) (begin (cons 'begin (append (map (lambda (&var~0~7031) (cons 'define (cons &var~0~7031 '(ex:unspecified)))) &bound-variables~0~7001) (cons (list 'ex:register-library! (list 'ex:make-library (list 'quote &name~0~6961) (list 'lambda '() (if &*syntax-reflected*~0~3788 (list 'ex:uncompress (list 'quote (&compress~0~3829 (&drop-tail~0~3923 &*env-table*~0~3776 &initial-env-table~0~6997)))) ''())) (list 'quote &exports~0~7005) (list 'quote &imported-libraries~0~6967) (list 'quote (¤t-builds~0~3886 &imported-libraries~0~6967)) (cons 'lambda (cons '() (append (map (lambda (&def~0~7052) (list 'ex:register-macro! (list 'quote (car &def~0~7052)) (cdr &def~0~7052))) &syntax-definitions~0~7000) '((values))))) (cons 'lambda (cons '() (append (map (lambda (&var~0~7060) (cons 'set! (cons &var~0~7060 '(ex:undefined)))) &bound-variables~0~7001) (append (&emit-body~0~3864 &forms~0~6999 ex:undefined-set!) '((values)))))) (list 'quote (&generate-guid~0~3805 'build)))) '((values))))))))) &library-type~0~6664))) (map (lambda (&mapping~0~7069) (cons (&id-name~0~3796 (car &mapping~0~7069)) ((lambda (&binding~0~7072) (let ((x &binding~0~7072)) (if x x (&syntax-violation~0~3903 'library "Unbound export" &t~0~6663 (cadr &mapping~0~7069)))) (if (&binding-mutable?~0~3812 &binding~0~7072) (&syntax-violation~0~3903 'library "Attempt to export mutable variable" &t~0~6663 (cadr &mapping~0~7069))) &binding~0~7072) (&binding~0~3816 (cadr &mapping~0~7069))))) &exports~0~6964))))) &*env-table*~0~3776)) (lambda &results~0~7079 (set! &*syntax-reflected*~0~3788 &saved~0~6992) (apply values &results~0~7079)))) &*syntax-reflected*~0~3788)) (lambda &results~0~7083 (set! &*current-library*~0~3779 &saved~0~6987) (apply values &results~0~7083)))) &*current-library*~0~3779)) (lambda &results~0~7087 (set! &*macro-table*~0~3773 &saved~0~6982) (apply values &results~0~7087)))) &*macro-table*~0~3773)) (lambda &results~0~7092 (set! &*env-table*~0~3776 &saved~0~6977) (apply values &results~0~7092)))) &*env-table*~0~3776)) (lambda &results~0~7097 (set! &*usage-env*~0~3764 &saved~0~6972) (apply values &results~0~7097)))) &*usage-env*~0~3764)))) (&scan-exports~0~3888 &sets~0~6956))) (&syntax->datum~0~3834 (&scan-library-name~0~3895 &name~0~6955)))) (lambda () (ex:invalid-form &t~0~6663))))) (set! &env-import!~0~3885 (lambda (&keyword~0~6657 &imports~0~6658 &env~0~6659) (&env-extend!~0~3824 (map (lambda (&import~0~6661) (cons (cons (car &import~0~6661) (&id-colors~0~3797 &keyword~0~6657)) (cdr &import~0~6661))) &imports~0~6658) &env~0~6659))) (set! ¤t-builds~0~3886 (lambda (&imported-libraries~0~6653) (map (lambda (&lib-entry~0~6655) (ex:library-build (ex:lookup-library (car &lib-entry~0~6655)))) &imported-libraries~0~6653))) (set! &import-libraries-for-expand~0~3887 (lambda (&imports~0~6609 &builds~0~6610 &phase~0~6611) (ex:import-libraries-for &imports~0~6609 &builds~0~6610 &phase~0~6611 (lambda (&library~0~6613 &phase~0~6614 &imported~0~6615) (if (>= &phase~0~6614 0) ((lambda (&name~0~6619) (if (not (memp (lambda (&entry~0~6638) (if (equal? (car &entry~0~6638) &name~0~6619) (>= (cdr &entry~0~6638) 0) #f)) &imported~0~6615)) ((lambda (&saved~0~6644) (set! &*phase*~0~3767 &phase~0~6614) (call-with-values (lambda () (set! &*env-table*~0~3776 (append ((ex:library-envs &library~0~6613)) &*env-table*~0~3776)) ((ex:library-visiter &library~0~6613))) (lambda &results~0~6649 (set! &*phase*~0~3767 &saved~0~6644) (apply values &results~0~6649)))) &*phase*~0~3767)) (if (>= &phase~0~6614 1) (if (not (memp (lambda (&entry~0~6623) (if (equal? (car &entry~0~6623) &name~0~6619) (>= (cdr &entry~0~6623) 1) #f)) &imported~0~6615)) ((lambda (&saved~0~6629) (set! &*phase*~0~3767 &phase~0~6614) (call-with-values (lambda () ((ex:library-invoker &library~0~6613))) (lambda &results~0~6633 (set! &*phase*~0~3767 &saved~0~6629) (apply values &results~0~6633)))) &*phase*~0~3767)))) (ex:library-name &library~0~6613))))))) (set! &scan-exports~0~3888 (lambda (&sets~0~6598) ((lambda (&exports~0~6601) (&check-set?~0~3921 &exports~0~6601 (lambda (&x~0~6603 &y~0~6604) (eq? (&id-name~0~3796 (car &x~0~6603)) (&id-name~0~3796 (car &y~0~6604)))) (lambda (&dup~0~6606) (&syntax-violation~0~3903 'export "Duplicate export" &sets~0~6598 &dup~0~6606))) &exports~0~6601) (apply append (map &scan-export-set~0~3889 &sets~0~6598))))) (set! &scan-export-set~0~3889 (lambda (&set~0~6426) ((lambda (&x~0~6433 &sk~0~6434 &fk~0~6435) (if (&identifier?~0~3795 &x~0~6433) ((lambda (&x~0~6438 &sk~0~6439 &fk~0~6440) (&sk~0~6439 &x~0~6438)) &x~0~6433 &sk~0~6434 &fk~0~6435) (&fk~0~6435))) &set~0~6426 (lambda (&x~0~6442) (list (cons &x~0~6442 (cons &x~0~6442 '(0))))) (lambda () ((lambda (&x~0~6468 &sk~0~6469 &fk~0~6470) (if (pair? &x~0~6468) ((lambda (&x~0~6473 &sk~0~6474 &fk~0~6475) (if (ex:free=? &x~0~6473 'rename) (&sk~0~6474) (&fk~0~6475))) (car &x~0~6468) (lambda () ((lambda (&x~0~6480 &sk~0~6481 &fk~0~6482) (((lambda (&loop~0~6488) ((lambda (&temp~0~6491) (set! &loop~0~6488 &temp~0~6491) ((lambda () &loop~0~6488))) (lambda (&x~0~6496 &result~0~6497) ((lambda (&match-tail~0~6498) (set! &match-tail~0~6498 (lambda () ((lambda (&x~0~6552 &sk~0~6553 &fk~0~6554) (if (null? &x~0~6552) (&sk~0~6553) (&fk~0~6554))) &x~0~6496 (lambda () (apply &sk~0~6481 (if (null? &result~0~6497) (map (lambda (&ignore~0~6559) '()) '(xs ys)) (apply map list (reverse &result~0~6497))))) (lambda () ((lambda (&x~0~6567 &sk~0~6568 &fk~0~6569) (&sk~0~6568)) &x~0~6496 (lambda () (&fk~0~6482)) (lambda () (ex:invalid-form &x~0~6496))))))) (if (null? &x~0~6496) (begin (&match-tail~0~6498)) (if (pair? &x~0~6496) (begin ((lambda (&x~0~6505 &sk~0~6506 &fk~0~6507) (if (pair? &x~0~6505) ((lambda (&x~0~6510 &sk~0~6511 &fk~0~6512) (if (&identifier?~0~3795 &x~0~6510) ((lambda (&x~0~6515 &sk~0~6516 &fk~0~6517) (&sk~0~6516 &x~0~6515)) &x~0~6510 &sk~0~6511 &fk~0~6512) (&fk~0~6512))) (car &x~0~6505) (lambda (&xs~0~6519) ((lambda (&x~0~6521 &sk~0~6522 &fk~0~6523) (if (pair? &x~0~6521) ((lambda (&x~0~6526 &sk~0~6527 &fk~0~6528) (if (&identifier?~0~3795 &x~0~6526) ((lambda (&x~0~6531 &sk~0~6532 &fk~0~6533) (&sk~0~6532 &x~0~6531)) &x~0~6526 &sk~0~6527 &fk~0~6528) (&fk~0~6528))) (car &x~0~6521) (lambda (&ys~0~6535) ((lambda (&x~0~6537 &sk~0~6538 &fk~0~6539) (if (null? &x~0~6537) (&sk~0~6538) (&fk~0~6539))) (cdr &x~0~6521) (lambda () (&sk~0~6522 &ys~0~6535)) &fk~0~6523)) &fk~0~6523) (&fk~0~6523))) (cdr &x~0~6505) (lambda (&ys~0~6543) (&sk~0~6506 &xs~0~6519 &ys~0~6543)) &fk~0~6507)) &fk~0~6507) (&fk~0~6507))) (car &x~0~6496) (lambda &car-vars~0~6545 (&loop~0~6488 (cdr &x~0~6496) (cons &car-vars~0~6545 &result~0~6497))) &match-tail~0~6498)) (begin (&fk~0~6482))))) ex:undefined)))) ex:undefined) &x~0~6480 '())) (cdr &x~0~6468) (lambda (&xs~0~6575 &ys~0~6576) (&sk~0~6469 &xs~0~6575 &ys~0~6576)) &fk~0~6470)) &fk~0~6470) (&fk~0~6470))) &set~0~6426 (lambda (&xs~0~6578 &ys~0~6579) (map (lambda (&x~0~6581 &y~0~6582) (cons &y~0~6582 (cons &x~0~6581 '(0)))) &xs~0~6578 &ys~0~6579)) (lambda () ((lambda (&x~0~6590 &sk~0~6591 &fk~0~6592) (&sk~0~6591)) &set~0~6426 (lambda () (&syntax-violation~0~3903 'export "Invalid export set" &set~0~6426)) (lambda () (ex:invalid-form &set~0~6426))))))))) (set! &scan-imports~0~3890 (lambda (&specs~0~6399) (((lambda (&loop~0~6405) ((lambda (&temp~0~6408) (set! &loop~0~6405 &temp~0~6408) ((lambda () &loop~0~6405))) (lambda (&specs~0~6413 &imported-libraries~0~6414 &imports~0~6415) (if (null? &specs~0~6413) (values &imported-libraries~0~6414 (&unify-imports~0~3894 &imports~0~6415)) (call-with-values (lambda () (&scan-import-spec~0~3891 (car &specs~0~6413))) (lambda (&library-ref~0~6419 &levels~0~6420 &more-imports~0~6421) (&loop~0~6405 (cdr &specs~0~6413) (if &library-ref~0~6419 (cons (cons &library-ref~0~6419 &levels~0~6420) &imported-libraries~0~6414) &imported-libraries~0~6414) (append &more-imports~0~6421 &imports~0~6415)))))))) ex:undefined) &specs~0~6399 '() '()))) (set! &scan-import-spec~0~3891 (lambda (&spec~0~5625) (call-with-values (lambda () (&scan-levels~0~3892 &spec~0~5625)) (lambda (&levels~0~5628 &import-set~0~5629) (((lambda (&loop~0~5635) ((lambda (&temp~0~5638) (set! &loop~0~5635 &temp~0~5638) ((lambda () &loop~0~5635))) (lambda (&import-set~0~5643 &adjuster~0~5644) ((lambda (&check-presence~0~5645) (set! &check-presence~0~5645 (lambda (&names~0~6389 &mappings~0~6390 &from~0~6391) (for-each (lambda (&name~0~6393) (let ((x (assq &name~0~6393 &mappings~0~6390))) (if x x (&syntax-violation~0~3903 &from~0~6391 (string-append "Identifier not in set: " (&list->string~0~3924 (map car &mappings~0~6390) " ")) &import-set~0~5643 &name~0~6393)))) &names~0~6389))) ((lambda (&x~0~5658 &sk~0~5659 &fk~0~5660) (if (pair? &x~0~5658) ((lambda (&x~0~5663 &sk~0~5664 &fk~0~5665) (if (ex:free=? &x~0~5663 'primitives) (&sk~0~5664) (&fk~0~5665))) (car &x~0~5658) (lambda () ((lambda (&x~0~5670 &sk~0~5671 &fk~0~5672) (((lambda (&loop~0~5678) ((lambda (&temp~0~5681) (set! &loop~0~5678 &temp~0~5681) ((lambda () &loop~0~5678))) (lambda (&x~0~5686 &result~0~5687) ((lambda (&match-tail~0~5688) (set! &match-tail~0~5688 (lambda () ((lambda (&x~0~5711 &sk~0~5712 &fk~0~5713) (if (null? &x~0~5711) (&sk~0~5712) (&fk~0~5713))) &x~0~5686 (lambda () (apply &sk~0~5671 (if (null? &result~0~5687) (map (lambda (&ignore~0~5718) '()) '(xs)) (apply map list (reverse &result~0~5687))))) (lambda () ((lambda (&x~0~5726 &sk~0~5727 &fk~0~5728) (&sk~0~5727)) &x~0~5686 (lambda () (&fk~0~5672)) (lambda () (ex:invalid-form &x~0~5686))))))) (if (null? &x~0~5686) (begin (&match-tail~0~5688)) (if (pair? &x~0~5686) (begin ((lambda (&x~0~5695 &sk~0~5696 &fk~0~5697) (if (&identifier?~0~3795 &x~0~5695) ((lambda (&x~0~5700 &sk~0~5701 &fk~0~5702) (&sk~0~5701 &x~0~5700)) &x~0~5695 &sk~0~5696 &fk~0~5697) (&fk~0~5697))) (car &x~0~5686) (lambda &car-vars~0~5704 (&loop~0~5678 (cdr &x~0~5686) (cons &car-vars~0~5704 &result~0~5687))) &match-tail~0~5688)) (begin (&fk~0~5672))))) ex:undefined)))) ex:undefined) &x~0~5670 '())) (cdr &x~0~5658) (lambda (&xs~0~5734) (&sk~0~5659 &xs~0~5734)) &fk~0~5660)) &fk~0~5660) (&fk~0~5660))) &import-set~0~5643 (lambda (&xs~0~5736) (values #f &levels~0~5628 (map (lambda (&mapping~0~5738) (cons (car &mapping~0~5738) (&make-binding~0~3808 'variable (cdr &mapping~0~5738) &levels~0~5628 #f '()))) (&adjuster~0~5644 (map (lambda (&name~0~5742) (cons &name~0~5742 &name~0~5742)) (&syntax->datum~0~3834 &xs~0~5736)))))) (lambda () ((lambda (&x~0~5760 &sk~0~5761 &fk~0~5762) (if (pair? &x~0~5760) ((lambda (&x~0~5765 &sk~0~5766 &fk~0~5767) (if (ex:free=? &x~0~5765 'only) (&sk~0~5766) (&fk~0~5767))) (car &x~0~5760) (lambda () ((lambda (&x~0~5772 &sk~0~5773 &fk~0~5774) (if (pair? &x~0~5772) ((lambda (&x~0~5777 &sk~0~5778 &fk~0~5779) (&sk~0~5778 &x~0~5777)) (car &x~0~5772) (lambda (&set~0~5781) ((lambda (&x~0~5783 &sk~0~5784 &fk~0~5785) (((lambda (&loop~0~5791) ((lambda (&temp~0~5794) (set! &loop~0~5791 &temp~0~5794) ((lambda () &loop~0~5791))) (lambda (&x~0~5799 &result~0~5800) ((lambda (&match-tail~0~5801) (set! &match-tail~0~5801 (lambda () ((lambda (&x~0~5824 &sk~0~5825 &fk~0~5826) (if (null? &x~0~5824) (&sk~0~5825) (&fk~0~5826))) &x~0~5799 (lambda () (apply &sk~0~5784 (if (null? &result~0~5800) (map (lambda (&ignore~0~5831) '()) '(xs)) (apply map list (reverse &result~0~5800))))) (lambda () ((lambda (&x~0~5839 &sk~0~5840 &fk~0~5841) (&sk~0~5840)) &x~0~5799 (lambda () (&fk~0~5785)) (lambda () (ex:invalid-form &x~0~5799))))))) (if (null? &x~0~5799) (begin (&match-tail~0~5801)) (if (pair? &x~0~5799) (begin ((lambda (&x~0~5808 &sk~0~5809 &fk~0~5810) (if (&identifier?~0~3795 &x~0~5808) ((lambda (&x~0~5813 &sk~0~5814 &fk~0~5815) (&sk~0~5814 &x~0~5813)) &x~0~5808 &sk~0~5809 &fk~0~5810) (&fk~0~5810))) (car &x~0~5799) (lambda &car-vars~0~5817 (&loop~0~5791 (cdr &x~0~5799) (cons &car-vars~0~5817 &result~0~5800))) &match-tail~0~5801)) (begin (&fk~0~5785))))) ex:undefined)))) ex:undefined) &x~0~5783 '())) (cdr &x~0~5772) (lambda (&xs~0~5847) (&sk~0~5773 &set~0~5781 &xs~0~5847)) &fk~0~5774)) &fk~0~5774) (&fk~0~5774))) (cdr &x~0~5760) (lambda (&set~0~5849 &xs~0~5850) (&sk~0~5761 &set~0~5849 &xs~0~5850)) &fk~0~5762)) &fk~0~5762) (&fk~0~5762))) &import-set~0~5643 (lambda (&set~0~5852 &xs~0~5853) ((lambda (&args~0~5856) (&loop~0~5635 &set~0~5852 (&compose~0~3925 &adjuster~0~5644 (lambda (&mappings~0~5858) (&check-presence~0~5645 &args~0~5856 &mappings~0~5858 'only) (filter (lambda (&mapping~0~5860) (memq (car &mapping~0~5860) &args~0~5856)) &mappings~0~5858))))) (&syntax->datum~0~3834 &xs~0~5853))) (lambda () ((lambda (&x~0~5879 &sk~0~5880 &fk~0~5881) (if (pair? &x~0~5879) ((lambda (&x~0~5884 &sk~0~5885 &fk~0~5886) (if (ex:free=? &x~0~5884 'except) (&sk~0~5885) (&fk~0~5886))) (car &x~0~5879) (lambda () ((lambda (&x~0~5891 &sk~0~5892 &fk~0~5893) (if (pair? &x~0~5891) ((lambda (&x~0~5896 &sk~0~5897 &fk~0~5898) (&sk~0~5897 &x~0~5896)) (car &x~0~5891) (lambda (&set~0~5900) ((lambda (&x~0~5902 &sk~0~5903 &fk~0~5904) (((lambda (&loop~0~5910) ((lambda (&temp~0~5913) (set! &loop~0~5910 &temp~0~5913) ((lambda () &loop~0~5910))) (lambda (&x~0~5918 &result~0~5919) ((lambda (&match-tail~0~5920) (set! &match-tail~0~5920 (lambda () ((lambda (&x~0~5943 &sk~0~5944 &fk~0~5945) (if (null? &x~0~5943) (&sk~0~5944) (&fk~0~5945))) &x~0~5918 (lambda () (apply &sk~0~5903 (if (null? &result~0~5919) (map (lambda (&ignore~0~5950) '()) '(xs)) (apply map list (reverse &result~0~5919))))) (lambda () ((lambda (&x~0~5958 &sk~0~5959 &fk~0~5960) (&sk~0~5959)) &x~0~5918 (lambda () (&fk~0~5904)) (lambda () (ex:invalid-form &x~0~5918))))))) (if (null? &x~0~5918) (begin (&match-tail~0~5920)) (if (pair? &x~0~5918) (begin ((lambda (&x~0~5927 &sk~0~5928 &fk~0~5929) (if (&identifier?~0~3795 &x~0~5927) ((lambda (&x~0~5932 &sk~0~5933 &fk~0~5934) (&sk~0~5933 &x~0~5932)) &x~0~5927 &sk~0~5928 &fk~0~5929) (&fk~0~5929))) (car &x~0~5918) (lambda &car-vars~0~5936 (&loop~0~5910 (cdr &x~0~5918) (cons &car-vars~0~5936 &result~0~5919))) &match-tail~0~5920)) (begin (&fk~0~5904))))) ex:undefined)))) ex:undefined) &x~0~5902 '())) (cdr &x~0~5891) (lambda (&xs~0~5966) (&sk~0~5892 &set~0~5900 &xs~0~5966)) &fk~0~5893)) &fk~0~5893) (&fk~0~5893))) (cdr &x~0~5879) (lambda (&set~0~5968 &xs~0~5969) (&sk~0~5880 &set~0~5968 &xs~0~5969)) &fk~0~5881)) &fk~0~5881) (&fk~0~5881))) &import-set~0~5643 (lambda (&set~0~5971 &xs~0~5972) ((lambda (&args~0~5975) (&loop~0~5635 &set~0~5971 (&compose~0~3925 &adjuster~0~5644 (lambda (&mappings~0~5977) (&check-presence~0~5645 &args~0~5975 &mappings~0~5977 'except) (filter (lambda (&mapping~0~5979) (not (memq (car &mapping~0~5979) &args~0~5975))) &mappings~0~5977))))) (&syntax->datum~0~3834 &xs~0~5972))) (lambda () ((lambda (&x~0~6000 &sk~0~6001 &fk~0~6002) (if (pair? &x~0~6000) ((lambda (&x~0~6005 &sk~0~6006 &fk~0~6007) (if (ex:free=? &x~0~6005 'prefix) (&sk~0~6006) (&fk~0~6007))) (car &x~0~6000) (lambda () ((lambda (&x~0~6012 &sk~0~6013 &fk~0~6014) (if (pair? &x~0~6012) ((lambda (&x~0~6017 &sk~0~6018 &fk~0~6019) (&sk~0~6018 &x~0~6017)) (car &x~0~6012) (lambda (&set~0~6021) ((lambda (&x~0~6023 &sk~0~6024 &fk~0~6025) (if (pair? &x~0~6023) ((lambda (&x~0~6028 &sk~0~6029 &fk~0~6030) (if (&identifier?~0~3795 &x~0~6028) ((lambda (&x~0~6033 &sk~0~6034 &fk~0~6035) (&sk~0~6034 &x~0~6033)) &x~0~6028 &sk~0~6029 &fk~0~6030) (&fk~0~6030))) (car &x~0~6023) (lambda (&pre~0~6037) ((lambda (&x~0~6039 &sk~0~6040 &fk~0~6041) (if (null? &x~0~6039) (&sk~0~6040) (&fk~0~6041))) (cdr &x~0~6023) (lambda () (&sk~0~6024 &pre~0~6037)) &fk~0~6025)) &fk~0~6025) (&fk~0~6025))) (cdr &x~0~6012) (lambda (&pre~0~6045) (&sk~0~6013 &set~0~6021 &pre~0~6045)) &fk~0~6014)) &fk~0~6014) (&fk~0~6014))) (cdr &x~0~6000) (lambda (&set~0~6047 &pre~0~6048) (&sk~0~6001 &set~0~6047 &pre~0~6048)) &fk~0~6002)) &fk~0~6002) (&fk~0~6002))) &import-set~0~5643 (lambda (&set~0~6050 &pre~0~6051) (&loop~0~5635 &set~0~6050 (&compose~0~3925 &adjuster~0~5644 (lambda (&mappings~0~6053) (map (lambda (&mapping~0~6055) (cons (string->symbol (string-append (symbol->string (&syntax->datum~0~3834 &pre~0~6051)) (symbol->string (car &mapping~0~6055)))) (cdr &mapping~0~6055))) &mappings~0~6053))))) (lambda () ((lambda (&x~0~6083 &sk~0~6084 &fk~0~6085) (if (pair? &x~0~6083) ((lambda (&x~0~6088 &sk~0~6089 &fk~0~6090) (if (ex:free=? &x~0~6088 'rename) (&sk~0~6089) (&fk~0~6090))) (car &x~0~6083) (lambda () ((lambda (&x~0~6095 &sk~0~6096 &fk~0~6097) (if (pair? &x~0~6095) ((lambda (&x~0~6100 &sk~0~6101 &fk~0~6102) (&sk~0~6101 &x~0~6100)) (car &x~0~6095) (lambda (&set~0~6104) ((lambda (&x~0~6106 &sk~0~6107 &fk~0~6108) (((lambda (&loop~0~6114) ((lambda (&temp~0~6117) (set! &loop~0~6114 &temp~0~6117) ((lambda () &loop~0~6114))) (lambda (&x~0~6122 &result~0~6123) ((lambda (&match-tail~0~6124) (set! &match-tail~0~6124 (lambda () ((lambda (&x~0~6178 &sk~0~6179 &fk~0~6180) (if (null? &x~0~6178) (&sk~0~6179) (&fk~0~6180))) &x~0~6122 (lambda () (apply &sk~0~6107 (if (null? &result~0~6123) (map (lambda (&ignore~0~6185) '()) '(xs ys)) (apply map list (reverse &result~0~6123))))) (lambda () ((lambda (&x~0~6193 &sk~0~6194 &fk~0~6195) (&sk~0~6194)) &x~0~6122 (lambda () (&fk~0~6108)) (lambda () (ex:invalid-form &x~0~6122))))))) (if (null? &x~0~6122) (begin (&match-tail~0~6124)) (if (pair? &x~0~6122) (begin ((lambda (&x~0~6131 &sk~0~6132 &fk~0~6133) (if (pair? &x~0~6131) ((lambda (&x~0~6136 &sk~0~6137 &fk~0~6138) (if (&identifier?~0~3795 &x~0~6136) ((lambda (&x~0~6141 &sk~0~6142 &fk~0~6143) (&sk~0~6142 &x~0~6141)) &x~0~6136 &sk~0~6137 &fk~0~6138) (&fk~0~6138))) (car &x~0~6131) (lambda (&xs~0~6145) ((lambda (&x~0~6147 &sk~0~6148 &fk~0~6149) (if (pair? &x~0~6147) ((lambda (&x~0~6152 &sk~0~6153 &fk~0~6154) (if (&identifier?~0~3795 &x~0~6152) ((lambda (&x~0~6157 &sk~0~6158 &fk~0~6159) (&sk~0~6158 &x~0~6157)) &x~0~6152 &sk~0~6153 &fk~0~6154) (&fk~0~6154))) (car &x~0~6147) (lambda (&ys~0~6161) ((lambda (&x~0~6163 &sk~0~6164 &fk~0~6165) (if (null? &x~0~6163) (&sk~0~6164) (&fk~0~6165))) (cdr &x~0~6147) (lambda () (&sk~0~6148 &ys~0~6161)) &fk~0~6149)) &fk~0~6149) (&fk~0~6149))) (cdr &x~0~6131) (lambda (&ys~0~6169) (&sk~0~6132 &xs~0~6145 &ys~0~6169)) &fk~0~6133)) &fk~0~6133) (&fk~0~6133))) (car &x~0~6122) (lambda &car-vars~0~6171 (&loop~0~6114 (cdr &x~0~6122) (cons &car-vars~0~6171 &result~0~6123))) &match-tail~0~6124)) (begin (&fk~0~6108))))) ex:undefined)))) ex:undefined) &x~0~6106 '())) (cdr &x~0~6095) (lambda (&xs~0~6201 &ys~0~6202) (&sk~0~6096 &set~0~6104 &xs~0~6201 &ys~0~6202)) &fk~0~6097)) &fk~0~6097) (&fk~0~6097))) (cdr &x~0~6083) (lambda (&set~0~6204 &xs~0~6205 &ys~0~6206) (&sk~0~6084 &set~0~6204 &xs~0~6205 &ys~0~6206)) &fk~0~6085)) &fk~0~6085) (&fk~0~6085))) &import-set~0~5643 (lambda (&set~0~6208 &xs~0~6209 &ys~0~6210) ((lambda (&args~0~6213) (&loop~0~5635 &set~0~6208 (&compose~0~3925 &adjuster~0~5644 (lambda (&mappings~0~6215) (&check-presence~0~5645 (map car &args~0~6213) &mappings~0~6215 'rename) (map (lambda (&mapping~0~6217) (cons ((lambda (&t~0~6221) (if &t~0~6221 (cadr &t~0~6221) (begin (car &mapping~0~6217)))) (assq (car &mapping~0~6217) &args~0~6213)) (cdr &mapping~0~6217))) &mappings~0~6215))))) (&syntax->datum~0~3834 (cddr &import-set~0~5643)))) (lambda () ((lambda (&x~0~6234 &sk~0~6235 &fk~0~6236) (if (pair? &x~0~6234) ((lambda (&x~0~6239 &sk~0~6240 &fk~0~6241) (if (ex:free=? &x~0~6239 'primitives) (&sk~0~6240) (&fk~0~6241))) (car &x~0~6234) (lambda () ((lambda (&x~0~6246 &sk~0~6247 &fk~0~6248) (&sk~0~6247)) (cdr &x~0~6234) (lambda () (&sk~0~6235)) &fk~0~6236)) &fk~0~6236) (&fk~0~6236))) &import-set~0~5643 (lambda () (&invalid-form~0~3927 &import-set~0~5643)) (lambda () ((lambda (&x~0~6260 &sk~0~6261 &fk~0~6262) (if (pair? &x~0~6260) ((lambda (&x~0~6265 &sk~0~6266 &fk~0~6267) (if (ex:free=? &x~0~6265 'only) (&sk~0~6266) (&fk~0~6267))) (car &x~0~6260) (lambda () ((lambda (&x~0~6272 &sk~0~6273 &fk~0~6274) (&sk~0~6273)) (cdr &x~0~6260) (lambda () (&sk~0~6261)) &fk~0~6262)) &fk~0~6262) (&fk~0~6262))) &import-set~0~5643 (lambda () (&invalid-form~0~3927 &import-set~0~5643)) (lambda () ((lambda (&x~0~6286 &sk~0~6287 &fk~0~6288) (if (pair? &x~0~6286) ((lambda (&x~0~6291 &sk~0~6292 &fk~0~6293) (if (ex:free=? &x~0~6291 'except) (&sk~0~6292) (&fk~0~6293))) (car &x~0~6286) (lambda () ((lambda (&x~0~6298 &sk~0~6299 &fk~0~6300) (&sk~0~6299)) (cdr &x~0~6286) (lambda () (&sk~0~6287)) &fk~0~6288)) &fk~0~6288) (&fk~0~6288))) &import-set~0~5643 (lambda () (&invalid-form~0~3927 &import-set~0~5643)) (lambda () ((lambda (&x~0~6312 &sk~0~6313 &fk~0~6314) (if (pair? &x~0~6312) ((lambda (&x~0~6317 &sk~0~6318 &fk~0~6319) (if (ex:free=? &x~0~6317 'prefix) (&sk~0~6318) (&fk~0~6319))) (car &x~0~6312) (lambda () ((lambda (&x~0~6324 &sk~0~6325 &fk~0~6326) (&sk~0~6325)) (cdr &x~0~6312) (lambda () (&sk~0~6313)) &fk~0~6314)) &fk~0~6314) (&fk~0~6314))) &import-set~0~5643 (lambda () (&invalid-form~0~3927 &import-set~0~5643)) (lambda () ((lambda (&x~0~6338 &sk~0~6339 &fk~0~6340) (if (pair? &x~0~6338) ((lambda (&x~0~6343 &sk~0~6344 &fk~0~6345) (if (ex:free=? &x~0~6343 'rename) (&sk~0~6344) (&fk~0~6345))) (car &x~0~6338) (lambda () ((lambda (&x~0~6350 &sk~0~6351 &fk~0~6352) (&sk~0~6351)) (cdr &x~0~6338) (lambda () (&sk~0~6339)) &fk~0~6340)) &fk~0~6340) (&fk~0~6340))) &import-set~0~5643 (lambda () (&invalid-form~0~3927 &import-set~0~5643)) (lambda () ((lambda (&x~0~6360 &sk~0~6361 &fk~0~6362) (&sk~0~6361)) &import-set~0~5643 (lambda () ((lambda (&library-ref~0~6366) (if &library-ref~0~6366 ((lambda (&library~0~6371) ((lambda (&exports~0~6374) ((lambda (&imports~0~6377) (values (&syntax->datum~0~3834 &library-ref~0~6366) &levels~0~5628 &imports~0~6377)) (map (lambda (&mapping~0~6379) (cons (car &mapping~0~6379) ((lambda (&binding~0~6382) (&make-binding~0~3808 (&binding-type~0~3809 &binding~0~6382) (&binding-name~0~3810 &binding~0~6382) (&compose-levels~0~3893 &levels~0~5628 (&binding-levels~0~3811 &binding~0~6382)) (&binding-mutable?~0~3812 &binding~0~6382) (&binding-library~0~3814 &binding~0~6382))) (cdr (assq (cdr &mapping~0~6379) &exports~0~6374))))) (&adjuster~0~5644 (map (lambda (&name~0~6384) (cons &name~0~6384 &name~0~6384)) (map car &exports~0~6374)))))) (ex:library-exports &library~0~6371))) (ex:lookup-library (&syntax->datum~0~3834 &library-ref~0~6366))) (&syntax-violation~0~3903 'import "Invalid import set" &import-set~0~5643))) (&library-ref~0~3896 &import-set~0~5643))) (lambda () (ex:invalid-form &import-set~0~5643)))))))))))))))))))))))) ex:undefined)))) ex:undefined) &import-set~0~5629 (lambda (&set~0~6397) &set~0~6397)))))) (set! &scan-levels~0~3892 (lambda (&spec~0~5415) ((lambda (&x~0~5430 &sk~0~5431 &fk~0~5432) (if (pair? &x~0~5430) ((lambda (&x~0~5435 &sk~0~5436 &fk~0~5437) (if (ex:free=? &x~0~5435 'for) (&sk~0~5436) (&fk~0~5437))) (car &x~0~5430) (lambda () ((lambda (&x~0~5442 &sk~0~5443 &fk~0~5444) (if (pair? &x~0~5442) ((lambda (&x~0~5447 &sk~0~5448 &fk~0~5449) (&sk~0~5448 &x~0~5447)) (car &x~0~5442) (lambda (&set~0~5451) ((lambda (&x~0~5453 &sk~0~5454 &fk~0~5455) (((lambda (&loop~0~5461) ((lambda (&temp~0~5464) (set! &loop~0~5461 &temp~0~5464) ((lambda () &loop~0~5461))) (lambda (&x~0~5469 &result~0~5470) ((lambda (&match-tail~0~5471) (set! &match-tail~0~5471 (lambda () ((lambda (&x~0~5489 &sk~0~5490 &fk~0~5491) (if (null? &x~0~5489) (&sk~0~5490) (&fk~0~5491))) &x~0~5469 (lambda () (apply &sk~0~5454 (if (null? &result~0~5470) (map (lambda (&ignore~0~5496) '()) '(levels)) (apply map list (reverse &result~0~5470))))) (lambda () ((lambda (&x~0~5504 &sk~0~5505 &fk~0~5506) (&sk~0~5505)) &x~0~5469 (lambda () (&fk~0~5455)) (lambda () (ex:invalid-form &x~0~5469))))))) (if (null? &x~0~5469) (begin (&match-tail~0~5471)) (if (pair? &x~0~5469) (begin ((lambda (&x~0~5478 &sk~0~5479 &fk~0~5480) (&sk~0~5479 &x~0~5478)) (car &x~0~5469) (lambda &car-vars~0~5482 (&loop~0~5461 (cdr &x~0~5469) (cons &car-vars~0~5482 &result~0~5470))) &match-tail~0~5471)) (begin (&fk~0~5455))))) ex:undefined)))) ex:undefined) &x~0~5453 '())) (cdr &x~0~5442) (lambda (&levels~0~5512) (&sk~0~5443 &set~0~5451 &levels~0~5512)) &fk~0~5444)) &fk~0~5444) (&fk~0~5444))) (cdr &x~0~5430) (lambda (&set~0~5514 &levels~0~5515) (&sk~0~5431 &set~0~5514 &levels~0~5515)) &fk~0~5432)) &fk~0~5432) (&fk~0~5432))) &spec~0~5415 (lambda (&set~0~5517 &levels~0~5518) ((lambda (&levels~0~5521) (&check-set?~0~3921 &levels~0~5521 = (lambda (&dup~0~5523) (&syntax-violation~0~3903 'for "Repeated level in for spec" &spec~0~5415 &dup~0~5523))) (values &levels~0~5521 &set~0~5517)) (map (lambda (&level~0~5526) ((lambda (&x~0~5531 &sk~0~5532 &fk~0~5533) (if (ex:free=? &x~0~5531 'run) (&sk~0~5532) (&fk~0~5533))) &level~0~5526 (lambda () 0) (lambda () ((lambda (&x~0~5542 &sk~0~5543 &fk~0~5544) (if (ex:free=? &x~0~5542 'expand) (&sk~0~5543) (&fk~0~5544))) &level~0~5526 (lambda () 1) (lambda () ((lambda (&x~0~5563 &sk~0~5564 &fk~0~5565) (if (pair? &x~0~5563) ((lambda (&x~0~5568 &sk~0~5569 &fk~0~5570) (if (ex:free=? &x~0~5568 'meta) (&sk~0~5569) (&fk~0~5570))) (car &x~0~5563) (lambda () ((lambda (&x~0~5575 &sk~0~5576 &fk~0~5577) (if (pair? &x~0~5575) ((lambda (&x~0~5580 &sk~0~5581 &fk~0~5582) (if (integer? &x~0~5580) ((lambda (&x~0~5585 &sk~0~5586 &fk~0~5587) (&sk~0~5586 &x~0~5585)) &x~0~5580 &sk~0~5581 &fk~0~5582) (&fk~0~5582))) (car &x~0~5575) (lambda (&n~0~5589) ((lambda (&x~0~5591 &sk~0~5592 &fk~0~5593) (if (null? &x~0~5591) (&sk~0~5592) (&fk~0~5593))) (cdr &x~0~5575) (lambda () (&sk~0~5576 &n~0~5589)) &fk~0~5577)) &fk~0~5577) (&fk~0~5577))) (cdr &x~0~5563) (lambda (&n~0~5597) (&sk~0~5564 &n~0~5597)) &fk~0~5565)) &fk~0~5565) (&fk~0~5565))) &level~0~5526 (lambda (&n~0~5599) &n~0~5599) (lambda () ((lambda (&x~0~5605 &sk~0~5606 &fk~0~5607) (&sk~0~5606)) &level~0~5526 (lambda () (&syntax-violation~0~3903 'for "Invalid level in for spec" &spec~0~5415 &level~0~5526)) (lambda () (ex:invalid-form &level~0~5526)))))))))) &levels~0~5518))) (lambda () ((lambda (&x~0~5617 &sk~0~5618 &fk~0~5619) (&sk~0~5618)) &spec~0~5415 (lambda () (values '(0) &spec~0~5415)) (lambda () (ex:invalid-form &spec~0~5415))))))) (set! &compose-levels~0~3893 (lambda (&levels~0~5408 &levels*~0~5409) (apply &unionv~0~3922 (map (lambda (&level~0~5411) (map (lambda (&level*~0~5413) (+ &level~0~5411 &level*~0~5413)) &levels*~0~5409)) &levels~0~5408)))) (set! &unify-imports~0~3894 (lambda (&imports~0~5374) ((lambda (&seen~0~5377) (((lambda (&loop~0~5383) ((lambda (&temp~0~5386) (set! &loop~0~5383 &temp~0~5386) ((lambda () &loop~0~5383))) (lambda (&imports~0~5391) (if (null? &imports~0~5391) &seen~0~5377 ((lambda (&mapping~0~5396) ((lambda (&probe~0~5399) (if &probe~0~5399 (begin (let ((x (eq? (&binding-name~0~3810 (cdr &mapping~0~5396)) (&binding-name~0~3810 (cdr &probe~0~5399))))) (if x x (&syntax-violation~0~3903 'import (string-append "Different bindings for identifier imported from libraries (" (&list->string~0~3924 (&binding-library~0~3814 (cdr &mapping~0~5396)) " ") ") and (" (&list->string~0~3924 (&binding-library~0~3814 (cdr &probe~0~5399)) " ") ")") (car &mapping~0~5396)))) (set-cdr! &probe~0~5399 (&make-binding~0~3808 (&binding-type~0~3809 (cdr &probe~0~5399)) (&binding-name~0~3810 (cdr &probe~0~5399)) (&unionv~0~3922 (&binding-levels~0~3811 (cdr &probe~0~5399)) (&binding-levels~0~3811 (cdr &mapping~0~5396))) (&binding-mutable?~0~3812 (cdr &probe~0~5399)) (&binding-library~0~3814 (cdr &probe~0~5399))))) (set! &seen~0~5377 (cons &mapping~0~5396 &seen~0~5377))) (&loop~0~5383 (cdr &imports~0~5391))) (assq (car &mapping~0~5396) &seen~0~5377))) (car &imports~0~5391)))))) ex:undefined) &imports~0~5374)) '()))) (set! &scan-library-name~0~3895 (lambda (&e~0~5372) (&library-ref-helper~0~3897 &e~0~5372 &version?~0~3898))) (set! &library-ref~0~3896 (lambda (&e~0~5289) (&library-ref-helper~0~3897 ((lambda (&x~0~5302 &sk~0~5303 &fk~0~5304) (if (pair? &x~0~5302) ((lambda (&x~0~5307 &sk~0~5308 &fk~0~5309) (if (ex:free=? &x~0~5307 'library) (&sk~0~5308) (&fk~0~5309))) (car &x~0~5302) (lambda () ((lambda (&x~0~5314 &sk~0~5315 &fk~0~5316) (if (pair? &x~0~5314) ((lambda (&x~0~5319 &sk~0~5320 &fk~0~5321) (&sk~0~5320 &x~0~5319)) (car &x~0~5314) (lambda (&name~0~5323) ((lambda (&x~0~5325 &sk~0~5326 &fk~0~5327) (if (null? &x~0~5325) (&sk~0~5326) (&fk~0~5327))) (cdr &x~0~5314) (lambda () (&sk~0~5315 &name~0~5323)) &fk~0~5316)) &fk~0~5316) (&fk~0~5316))) (cdr &x~0~5302) (lambda (&name~0~5331) (&sk~0~5303 &name~0~5331)) &fk~0~5304)) &fk~0~5304) (&fk~0~5304))) &e~0~5289 (lambda (&name~0~5333) &name~0~5333) (lambda () ((lambda (&x~0~5343 &sk~0~5344 &fk~0~5345) (if (pair? &x~0~5343) ((lambda (&x~0~5348 &sk~0~5349 &fk~0~5350) (if (ex:free=? &x~0~5348 'library) (&sk~0~5349) (&fk~0~5350))) (car &x~0~5343) (lambda () ((lambda (&x~0~5355 &sk~0~5356 &fk~0~5357) (&sk~0~5356)) (cdr &x~0~5343) (lambda () (&sk~0~5344)) &fk~0~5345)) &fk~0~5345) (&fk~0~5345))) &e~0~5289 (lambda () (&invalid-form~0~3927 &e~0~5289)) (lambda () ((lambda (&x~0~5365 &sk~0~5366 &fk~0~5367) (&sk~0~5366)) &e~0~5289 (lambda () &e~0~5289) (lambda () (ex:invalid-form &e~0~5289))))))) &version-reference?~0~3900))) (set! &library-ref-helper~0~3897 (lambda (&e~0~5105 &version?~0~5106) ((lambda (&x~0~5115 &sk~0~5116 &fk~0~5117) (((lambda (&loop~0~5123) ((lambda (&temp~0~5126) (set! &loop~0~5123 &temp~0~5126) ((lambda () &loop~0~5123))) (lambda (&x~0~5131 &result~0~5132) ((lambda (&match-tail~0~5133) (set! &match-tail~0~5133 (lambda () ((lambda (&x~0~5156 &sk~0~5157 &fk~0~5158) (if (null? &x~0~5156) (&sk~0~5157) (&fk~0~5158))) &x~0~5131 (lambda () (apply &sk~0~5116 (if (null? &result~0~5132) (map (lambda (&ignore~0~5163) '()) '(ids)) (apply map list (reverse &result~0~5132))))) (lambda () ((lambda (&x~0~5171 &sk~0~5172 &fk~0~5173) (&sk~0~5172)) &x~0~5131 (lambda () (&fk~0~5117)) (lambda () (ex:invalid-form &x~0~5131))))))) (if (null? &x~0~5131) (begin (&match-tail~0~5133)) (if (pair? &x~0~5131) (begin ((lambda (&x~0~5140 &sk~0~5141 &fk~0~5142) (if (&identifier?~0~3795 &x~0~5140) ((lambda (&x~0~5145 &sk~0~5146 &fk~0~5147) (&sk~0~5146 &x~0~5145)) &x~0~5140 &sk~0~5141 &fk~0~5142) (&fk~0~5142))) (car &x~0~5131) (lambda &car-vars~0~5149 (&loop~0~5123 (cdr &x~0~5131) (cons &car-vars~0~5149 &result~0~5132))) &match-tail~0~5133)) (begin (&fk~0~5117))))) ex:undefined)))) ex:undefined) &x~0~5115 '())) &e~0~5105 (lambda (&ids~0~5179) &ids~0~5179) (lambda () ((lambda (&x~0~5189 &sk~0~5190 &fk~0~5191) (((lambda (&loop~0~5197) ((lambda (&temp~0~5200) (set! &loop~0~5197 &temp~0~5200) ((lambda () &loop~0~5197))) (lambda (&x~0~5205 &result~0~5206) ((lambda (&match-tail~0~5207) (set! &match-tail~0~5207 (lambda () ((lambda (&x~0~5236 &sk~0~5237 &fk~0~5238) (if (pair? &x~0~5236) ((lambda (&x~0~5241 &sk~0~5242 &fk~0~5243) (if (&version?~0~5106 &x~0~5241) ((lambda (&x~0~5246 &sk~0~5247 &fk~0~5248) (&sk~0~5247)) &x~0~5241 &sk~0~5242 &fk~0~5243) (&fk~0~5243))) (car &x~0~5236) (lambda () ((lambda (&x~0~5251 &sk~0~5252 &fk~0~5253) (if (null? &x~0~5251) (&sk~0~5252) (&fk~0~5253))) (cdr &x~0~5236) (lambda () (&sk~0~5237)) &fk~0~5238)) &fk~0~5238) (&fk~0~5238))) &x~0~5205 (lambda () (apply &sk~0~5190 (if (null? &result~0~5206) (map (lambda (&ignore~0~5259) '()) '(ids)) (apply map list (reverse &result~0~5206))))) (lambda () ((lambda (&x~0~5267 &sk~0~5268 &fk~0~5269) (&sk~0~5268)) &x~0~5205 (lambda () (&fk~0~5191)) (lambda () (ex:invalid-form &x~0~5205))))))) (if (null? &x~0~5205) (begin (&match-tail~0~5207)) (if (pair? &x~0~5205) (begin ((lambda (&x~0~5214 &sk~0~5215 &fk~0~5216) (if (&identifier?~0~3795 &x~0~5214) ((lambda (&x~0~5219 &sk~0~5220 &fk~0~5221) (&sk~0~5220 &x~0~5219)) &x~0~5214 &sk~0~5215 &fk~0~5216) (&fk~0~5216))) (car &x~0~5205) (lambda &car-vars~0~5223 (&loop~0~5197 (cdr &x~0~5205) (cons &car-vars~0~5223 &result~0~5206))) &match-tail~0~5207)) (begin (&fk~0~5191))))) ex:undefined)))) ex:undefined) &x~0~5189 '())) &e~0~5105 (lambda (&ids~0~5275) &ids~0~5275) (lambda () ((lambda (&x~0~5281 &sk~0~5282 &fk~0~5283) (&sk~0~5282)) &e~0~5105 (lambda () (&syntax-violation~0~3903 'library "Invalid library reference" &e~0~5105)) (lambda () (ex:invalid-form &e~0~5105))))))))) (set! &version?~0~3898 (lambda (&e~0~5101) (if (list? &e~0~5101) (for-all &subversion?~0~3899 &e~0~5101) #f))) (set! &subversion?~0~3899 (lambda (&x~0~5097) (if (integer? &x~0~5097) (>= &x~0~5097 0) #f))) (set! &version-reference?~0~3900 (lambda (&e~0~4783) ((lambda (&x~0~4796 &sk~0~4797 &fk~0~4798) (if (pair? &x~0~4796) ((lambda (&x~0~4801 &sk~0~4802 &fk~0~4803) (if (ex:free=? &x~0~4801 'and) (&sk~0~4802) (&fk~0~4803))) (car &x~0~4796) (lambda () ((lambda (&x~0~4808 &sk~0~4809 &fk~0~4810) (((lambda (&loop~0~4816) ((lambda (&temp~0~4819) (set! &loop~0~4816 &temp~0~4819) ((lambda () &loop~0~4816))) (lambda (&x~0~4824 &result~0~4825) ((lambda (&match-tail~0~4826) (set! &match-tail~0~4826 (lambda () ((lambda (&x~0~4849 &sk~0~4850 &fk~0~4851) (if (null? &x~0~4849) (&sk~0~4850) (&fk~0~4851))) &x~0~4824 (lambda () (apply &sk~0~4809 (if (null? &result~0~4825) (map (lambda (&ignore~0~4856) '()) '()) (apply map list (reverse &result~0~4825))))) (lambda () ((lambda (&x~0~4864 &sk~0~4865 &fk~0~4866) (&sk~0~4865)) &x~0~4824 (lambda () (&fk~0~4810)) (lambda () (ex:invalid-form &x~0~4824))))))) (if (null? &x~0~4824) (begin (&match-tail~0~4826)) (if (pair? &x~0~4824) (begin ((lambda (&x~0~4833 &sk~0~4834 &fk~0~4835) (if (&version-reference?~0~3900 &x~0~4833) ((lambda (&x~0~4838 &sk~0~4839 &fk~0~4840) (&sk~0~4839)) &x~0~4833 &sk~0~4834 &fk~0~4835) (&fk~0~4835))) (car &x~0~4824) (lambda &car-vars~0~4842 (&loop~0~4816 (cdr &x~0~4824) (cons &car-vars~0~4842 &result~0~4825))) &match-tail~0~4826)) (begin (&fk~0~4810))))) ex:undefined)))) ex:undefined) &x~0~4808 '())) (cdr &x~0~4796) (lambda () (&sk~0~4797)) &fk~0~4798)) &fk~0~4798) (&fk~0~4798))) &e~0~4783 (lambda () #t) (lambda () ((lambda (&x~0~4886 &sk~0~4887 &fk~0~4888) (if (pair? &x~0~4886) ((lambda (&x~0~4891 &sk~0~4892 &fk~0~4893) (if (ex:free=? &x~0~4891 'or) (&sk~0~4892) (&fk~0~4893))) (car &x~0~4886) (lambda () ((lambda (&x~0~4898 &sk~0~4899 &fk~0~4900) (((lambda (&loop~0~4906) ((lambda (&temp~0~4909) (set! &loop~0~4906 &temp~0~4909) ((lambda () &loop~0~4906))) (lambda (&x~0~4914 &result~0~4915) ((lambda (&match-tail~0~4916) (set! &match-tail~0~4916 (lambda () ((lambda (&x~0~4939 &sk~0~4940 &fk~0~4941) (if (null? &x~0~4939) (&sk~0~4940) (&fk~0~4941))) &x~0~4914 (lambda () (apply &sk~0~4899 (if (null? &result~0~4915) (map (lambda (&ignore~0~4946) '()) '()) (apply map list (reverse &result~0~4915))))) (lambda () ((lambda (&x~0~4954 &sk~0~4955 &fk~0~4956) (&sk~0~4955)) &x~0~4914 (lambda () (&fk~0~4900)) (lambda () (ex:invalid-form &x~0~4914))))))) (if (null? &x~0~4914) (begin (&match-tail~0~4916)) (if (pair? &x~0~4914) (begin ((lambda (&x~0~4923 &sk~0~4924 &fk~0~4925) (if (&version-reference?~0~3900 &x~0~4923) ((lambda (&x~0~4928 &sk~0~4929 &fk~0~4930) (&sk~0~4929)) &x~0~4923 &sk~0~4924 &fk~0~4925) (&fk~0~4925))) (car &x~0~4914) (lambda &car-vars~0~4932 (&loop~0~4906 (cdr &x~0~4914) (cons &car-vars~0~4932 &result~0~4915))) &match-tail~0~4916)) (begin (&fk~0~4900))))) ex:undefined)))) ex:undefined) &x~0~4898 '())) (cdr &x~0~4886) (lambda () (&sk~0~4887)) &fk~0~4888)) &fk~0~4888) (&fk~0~4888))) &e~0~4783 (lambda () #t) (lambda () ((lambda (&x~0~4978 &sk~0~4979 &fk~0~4980) (if (pair? &x~0~4978) ((lambda (&x~0~4983 &sk~0~4984 &fk~0~4985) (if (ex:free=? &x~0~4983 'not) (&sk~0~4984) (&fk~0~4985))) (car &x~0~4978) (lambda () ((lambda (&x~0~4990 &sk~0~4991 &fk~0~4992) (if (pair? &x~0~4990) ((lambda (&x~0~4995 &sk~0~4996 &fk~0~4997) (if (&version-reference?~0~3900 &x~0~4995) ((lambda (&x~0~5000 &sk~0~5001 &fk~0~5002) (&sk~0~5001)) &x~0~4995 &sk~0~4996 &fk~0~4997) (&fk~0~4997))) (car &x~0~4990) (lambda () ((lambda (&x~0~5005 &sk~0~5006 &fk~0~5007) (if (null? &x~0~5005) (&sk~0~5006) (&fk~0~5007))) (cdr &x~0~4990) (lambda () (&sk~0~4991)) &fk~0~4992)) &fk~0~4992) (&fk~0~4992))) (cdr &x~0~4978) (lambda () (&sk~0~4979)) &fk~0~4980)) &fk~0~4980) (&fk~0~4980))) &e~0~4783 (lambda () #t) (lambda () ((lambda (&x~0~5021 &sk~0~5022 &fk~0~5023) (((lambda (&loop~0~5029) ((lambda (&temp~0~5032) (set! &loop~0~5029 &temp~0~5032) ((lambda () &loop~0~5029))) (lambda (&x~0~5037 &result~0~5038) ((lambda (&match-tail~0~5039) (set! &match-tail~0~5039 (lambda () ((lambda (&x~0~5062 &sk~0~5063 &fk~0~5064) (if (null? &x~0~5062) (&sk~0~5063) (&fk~0~5064))) &x~0~5037 (lambda () (apply &sk~0~5022 (if (null? &result~0~5038) (map (lambda (&ignore~0~5069) '()) '()) (apply map list (reverse &result~0~5038))))) (lambda () ((lambda (&x~0~5077 &sk~0~5078 &fk~0~5079) (&sk~0~5078)) &x~0~5037 (lambda () (&fk~0~5023)) (lambda () (ex:invalid-form &x~0~5037))))))) (if (null? &x~0~5037) (begin (&match-tail~0~5039)) (if (pair? &x~0~5037) (begin ((lambda (&x~0~5046 &sk~0~5047 &fk~0~5048) (if (&subversion-reference?~0~3901 &x~0~5046) ((lambda (&x~0~5051 &sk~0~5052 &fk~0~5053) (&sk~0~5052)) &x~0~5046 &sk~0~5047 &fk~0~5048) (&fk~0~5048))) (car &x~0~5037) (lambda &car-vars~0~5055 (&loop~0~5029 (cdr &x~0~5037) (cons &car-vars~0~5055 &result~0~5038))) &match-tail~0~5039)) (begin (&fk~0~5023))))) ex:undefined)))) ex:undefined) &x~0~5021 '())) &e~0~4783 (lambda () #t) (lambda () ((lambda (&x~0~5090 &sk~0~5091 &fk~0~5092) (&sk~0~5091)) &e~0~4783 (lambda () #f) (lambda () (ex:invalid-form &e~0~4783))))))))))))) (set! &subversion-reference?~0~3901 (lambda (&e~0~4779) (let ((x (&subversion?~0~3899 &e~0~4779))) (if x x (&subversion-condition?~0~3902 &e~0~4779))))) (set! &subversion-condition?~0~3902 (lambda (&e~0~4440) ((lambda (&x~0~4455 &sk~0~4456 &fk~0~4457) (if (pair? &x~0~4455) ((lambda (&x~0~4460 &sk~0~4461 &fk~0~4462) (if (ex:free=? &x~0~4460 '>=) (&sk~0~4461) (&fk~0~4462))) (car &x~0~4455) (lambda () ((lambda (&x~0~4467 &sk~0~4468 &fk~0~4469) (if (pair? &x~0~4467) ((lambda (&x~0~4472 &sk~0~4473 &fk~0~4474) (if (&subversion?~0~3899 &x~0~4472) ((lambda (&x~0~4477 &sk~0~4478 &fk~0~4479) (&sk~0~4478)) &x~0~4472 &sk~0~4473 &fk~0~4474) (&fk~0~4474))) (car &x~0~4467) (lambda () ((lambda (&x~0~4482 &sk~0~4483 &fk~0~4484) (if (null? &x~0~4482) (&sk~0~4483) (&fk~0~4484))) (cdr &x~0~4467) (lambda () (&sk~0~4468)) &fk~0~4469)) &fk~0~4469) (&fk~0~4469))) (cdr &x~0~4455) (lambda () (&sk~0~4456)) &fk~0~4457)) &fk~0~4457) (&fk~0~4457))) &e~0~4440 (lambda () #t) (lambda () ((lambda (&x~0~4504 &sk~0~4505 &fk~0~4506) (if (pair? &x~0~4504) ((lambda (&x~0~4509 &sk~0~4510 &fk~0~4511) (if (ex:free=? &x~0~4509 '<=) (&sk~0~4510) (&fk~0~4511))) (car &x~0~4504) (lambda () ((lambda (&x~0~4516 &sk~0~4517 &fk~0~4518) (if (pair? &x~0~4516) ((lambda (&x~0~4521 &sk~0~4522 &fk~0~4523) (if (&subversion?~0~3899 &x~0~4521) ((lambda (&x~0~4526 &sk~0~4527 &fk~0~4528) (&sk~0~4527)) &x~0~4521 &sk~0~4522 &fk~0~4523) (&fk~0~4523))) (car &x~0~4516) (lambda () ((lambda (&x~0~4531 &sk~0~4532 &fk~0~4533) (if (null? &x~0~4531) (&sk~0~4532) (&fk~0~4533))) (cdr &x~0~4516) (lambda () (&sk~0~4517)) &fk~0~4518)) &fk~0~4518) (&fk~0~4518))) (cdr &x~0~4504) (lambda () (&sk~0~4505)) &fk~0~4506)) &fk~0~4506) (&fk~0~4506))) &e~0~4440 (lambda () #t) (lambda () ((lambda (&x~0~4553 &sk~0~4554 &fk~0~4555) (if (pair? &x~0~4553) ((lambda (&x~0~4558 &sk~0~4559 &fk~0~4560) (if (ex:free=? &x~0~4558 'not) (&sk~0~4559) (&fk~0~4560))) (car &x~0~4553) (lambda () ((lambda (&x~0~4565 &sk~0~4566 &fk~0~4567) (if (pair? &x~0~4565) ((lambda (&x~0~4570 &sk~0~4571 &fk~0~4572) (if (&subversion?~0~3899 &x~0~4570) ((lambda (&x~0~4575 &sk~0~4576 &fk~0~4577) (&sk~0~4576)) &x~0~4570 &sk~0~4571 &fk~0~4572) (&fk~0~4572))) (car &x~0~4565) (lambda () ((lambda (&x~0~4580 &sk~0~4581 &fk~0~4582) (if (null? &x~0~4580) (&sk~0~4581) (&fk~0~4582))) (cdr &x~0~4565) (lambda () (&sk~0~4566)) &fk~0~4567)) &fk~0~4567) (&fk~0~4567))) (cdr &x~0~4553) (lambda () (&sk~0~4554)) &fk~0~4555)) &fk~0~4555) (&fk~0~4555))) &e~0~4440 (lambda () #t) (lambda () ((lambda (&x~0~4600 &sk~0~4601 &fk~0~4602) (if (pair? &x~0~4600) ((lambda (&x~0~4605 &sk~0~4606 &fk~0~4607) (if (ex:free=? &x~0~4605 'and) (&sk~0~4606) (&fk~0~4607))) (car &x~0~4600) (lambda () ((lambda (&x~0~4612 &sk~0~4613 &fk~0~4614) (((lambda (&loop~0~4620) ((lambda (&temp~0~4623) (set! &loop~0~4620 &temp~0~4623) ((lambda () &loop~0~4620))) (lambda (&x~0~4628 &result~0~4629) ((lambda (&match-tail~0~4630) (set! &match-tail~0~4630 (lambda () ((lambda (&x~0~4653 &sk~0~4654 &fk~0~4655) (if (null? &x~0~4653) (&sk~0~4654) (&fk~0~4655))) &x~0~4628 (lambda () (apply &sk~0~4613 (if (null? &result~0~4629) (map (lambda (&ignore~0~4660) '()) '()) (apply map list (reverse &result~0~4629))))) (lambda () ((lambda (&x~0~4668 &sk~0~4669 &fk~0~4670) (&sk~0~4669)) &x~0~4628 (lambda () (&fk~0~4614)) (lambda () (ex:invalid-form &x~0~4628))))))) (if (null? &x~0~4628) (begin (&match-tail~0~4630)) (if (pair? &x~0~4628) (begin ((lambda (&x~0~4637 &sk~0~4638 &fk~0~4639) (if (&subversion-reference?~0~3901 &x~0~4637) ((lambda (&x~0~4642 &sk~0~4643 &fk~0~4644) (&sk~0~4643)) &x~0~4637 &sk~0~4638 &fk~0~4639) (&fk~0~4639))) (car &x~0~4628) (lambda &car-vars~0~4646 (&loop~0~4620 (cdr &x~0~4628) (cons &car-vars~0~4646 &result~0~4629))) &match-tail~0~4630)) (begin (&fk~0~4614))))) ex:undefined)))) ex:undefined) &x~0~4612 '())) (cdr &x~0~4600) (lambda () (&sk~0~4601)) &fk~0~4602)) &fk~0~4602) (&fk~0~4602))) &e~0~4440 (lambda () #t) (lambda () ((lambda (&x~0~4690 &sk~0~4691 &fk~0~4692) (if (pair? &x~0~4690) ((lambda (&x~0~4695 &sk~0~4696 &fk~0~4697) (if (ex:free=? &x~0~4695 'or) (&sk~0~4696) (&fk~0~4697))) (car &x~0~4690) (lambda () ((lambda (&x~0~4702 &sk~0~4703 &fk~0~4704) (((lambda (&loop~0~4710) ((lambda (&temp~0~4713) (set! &loop~0~4710 &temp~0~4713) ((lambda () &loop~0~4710))) (lambda (&x~0~4718 &result~0~4719) ((lambda (&match-tail~0~4720) (set! &match-tail~0~4720 (lambda () ((lambda (&x~0~4743 &sk~0~4744 &fk~0~4745) (if (null? &x~0~4743) (&sk~0~4744) (&fk~0~4745))) &x~0~4718 (lambda () (apply &sk~0~4703 (if (null? &result~0~4719) (map (lambda (&ignore~0~4750) '()) '()) (apply map list (reverse &result~0~4719))))) (lambda () ((lambda (&x~0~4758 &sk~0~4759 &fk~0~4760) (&sk~0~4759)) &x~0~4718 (lambda () (&fk~0~4704)) (lambda () (ex:invalid-form &x~0~4718))))))) (if (null? &x~0~4718) (begin (&match-tail~0~4720)) (if (pair? &x~0~4718) (begin ((lambda (&x~0~4727 &sk~0~4728 &fk~0~4729) (if (&subversion-reference?~0~3901 &x~0~4727) ((lambda (&x~0~4732 &sk~0~4733 &fk~0~4734) (&sk~0~4733)) &x~0~4727 &sk~0~4728 &fk~0~4729) (&fk~0~4729))) (car &x~0~4718) (lambda &car-vars~0~4736 (&loop~0~4710 (cdr &x~0~4718) (cons &car-vars~0~4736 &result~0~4719))) &match-tail~0~4720)) (begin (&fk~0~4704))))) ex:undefined)))) ex:undefined) &x~0~4702 '())) (cdr &x~0~4690) (lambda () (&sk~0~4691)) &fk~0~4692)) &fk~0~4692) (&fk~0~4692))) &e~0~4440 (lambda () #t) (lambda () ((lambda (&x~0~4772 &sk~0~4773 &fk~0~4774) (&sk~0~4773)) &e~0~4440 (lambda () #f) (lambda () (ex:invalid-form &e~0~4440))))))))))))))) (set! &syntax-violation~0~3903 (lambda (&who~0~4408 &message~0~4409 &form~0~4410 . &maybe-subform~0~4411) (newline) (display "Syntax violation: ") ((lambda (&who~0~4414 &subform~0~4415) (display &who~0~4414) (newline) (newline) (display &message~0~4409) (newline) (newline) (if &subform~0~4415 (begin (display "Subform: ") (pretty-print (&syntax-debug~0~3904 &subform~0~4415)) (newline))) (display "Form: ") (pretty-print (&syntax-debug~0~3904 &form~0~4410)) (newline) (display "Trace: ") (newline) (newline) (for-each (lambda (&exp~0~4418) (display " ") (pretty-print (&syntax-debug~0~3904 &exp~0~4418)) (newline)) &*trace*~0~3785) (error 'syntax-violation "Integrate with host error handling here")) (if &who~0~4408 &who~0~4408 (if (&identifier?~0~3795 &form~0~4410) (begin (&syntax->datum~0~3834 &form~0~4410)) (if (if (list? &form~0~4410) (&identifier?~0~3795 (car &form~0~4410)) #f) (begin (&syntax->datum~0~3834 (car &form~0~4410))) (begin "")))) (if (null? &maybe-subform~0~4411) (begin #f) (if (if (pair? &maybe-subform~0~4411) (null? (cdr &maybe-subform~0~4411)) #f) (begin (car &maybe-subform~0~4411)) (begin (assertion-violation 'syntax-violation "Invalid subform in syntax violation" &maybe-subform~0~4411))))))) (set! &syntax-debug~0~3904 (lambda (&exp~0~4400) (&sexp-map~0~3914 (lambda (&leaf~0~4402) (if (&identifier?~0~3795 &leaf~0~4402) (begin (&id-name~0~3796 &leaf~0~4402)) (begin &leaf~0~4402))) &exp~0~4400))) (set! &eval-template~0~3905 (&make-identifier~0~3794 'eval-template '() '() 0 '(anonymous))) (set! &make-r6rs-environment~0~3906 (lambda (&imported-libraries~0~4392 &env~0~4393) (cons &imported-libraries~0~4392 &env~0~4393))) (set! &r6rs-environment-imported-libraries~0~3907 car) (set! &r6rs-environment-env~0~3908 cdr) (set! &environment~0~3909 (lambda &import-specs~0~4371 ((lambda (&saved~0~4375) (set! &*usage-env*~0~3764 (&make-unit-env~0~3822)) (call-with-values (lambda () (&env-import!~0~3885 &eval-template~0~3905 (&make-library-language~0~3939) &*usage-env*~0~3764) (call-with-values (lambda () (&scan-imports~0~3890 (map (lambda (&spec~0~4380) (&datum->syntax~0~3833 &eval-template~0~3905 &spec~0~4380)) &import-specs~0~4371))) (lambda (&imported-libraries~0~4382 &imports~0~4383) (&make-r6rs-environment~0~3906 &imported-libraries~0~4382 ((lambda (&env~0~4386) (&env-import!~0~3885 &eval-template~0~3905 &imports~0~4383 &env~0~4386) &env~0~4386) (&make-unit-env~0~3822)))))) (lambda &results~0~4388 (set! &*usage-env*~0~3764 &saved~0~4375) (apply values &results~0~4388)))) &*usage-env*~0~3764))) (set! &r6rs-eval~0~3910 (lambda (&exp~0~4351 &env~0~4352) ((lambda (&saved~0~4356) (set! &*usage-env*~0~3764 (&r6rs-environment-env~0~3908 &env~0~4352)) (call-with-values (lambda () ((lambda (&exp~0~4361 &imported-libraries~0~4362) (&import-libraries-for-expand~0~3887 (&r6rs-environment-imported-libraries~0~3907 &env~0~4352) (map not &imported-libraries~0~4362) 0) (ex:import-libraries-for-run (&r6rs-environment-imported-libraries~0~3907 &env~0~4352) (map not &imported-libraries~0~4362) 0) (eval (&expand-begin~0~3854 (list (&rename~0~3836 'macro 'begin) &exp~0~4361)) (interaction-environment))) (&datum->syntax~0~3833 &eval-template~0~3905 &exp~0~4351) (&r6rs-environment-imported-libraries~0~3907 &env~0~4352))) (lambda &results~0~4367 (set! &*usage-env*~0~3764 &saved~0~4356) (apply values &results~0~4367)))) &*usage-env*~0~3764))) (set! &environment-bindings~0~3911 (lambda (&r6rs-env~0~4349) (map &format-mapping~0~3912 (caar (&r6rs-environment-env~0~3908 &r6rs-env~0~4349))))) (set! &format-mapping~0~3912 (lambda (&mapping~0~4342) (list (list 'name (caar &mapping~0~4342)) (list 'type (&binding-type~0~3809 (cdr &mapping~0~4342))) (list 'from (&binding-library~0~3814 (cdr &mapping~0~4342))) (list 'levels (&binding-levels~0~3811 (cdr &mapping~0~4342)))))) (set! &flatten~0~3913 (lambda (&l~0~4334) (if (null? &l~0~4334) (begin &l~0~4334) (if (pair? &l~0~4334) (begin (cons (car &l~0~4334) (&flatten~0~3913 (cdr &l~0~4334)))) (begin (list &l~0~4334)))))) (set! &sexp-map~0~3914 (lambda (&f~0~4322 &s~0~4323) (if (null? &s~0~4323) (begin '()) (if (pair? &s~0~4323) (begin (cons (&sexp-map~0~3914 &f~0~4322 (car &s~0~4323)) (&sexp-map~0~3914 &f~0~4322 (cdr &s~0~4323)))) (if (vector? &s~0~4323) (begin (apply vector (&sexp-map~0~3914 &f~0~4322 (vector->list &s~0~4323)))) (begin (&f~0~4322 &s~0~4323))))))) (set! &dotted-memp~0~3915 (lambda (&proc~0~4310 &ls~0~4311) (if (null? &ls~0~4311) (begin #f) (if (pair? &ls~0~4311) (begin (if (&proc~0~4310 (car &ls~0~4311)) &ls~0~4311 (&dotted-memp~0~3915 &proc~0~4310 (cdr &ls~0~4311)))) (begin (if (&proc~0~4310 &ls~0~4311) &ls~0~4311 #f)))))) (set! &dotted-map~0~3916 (lambda (&f~0~4300 &lst~0~4301) (if (null? &lst~0~4301) (begin '()) (if (pair? &lst~0~4301) (begin (cons (&f~0~4300 (car &lst~0~4301)) (&dotted-map~0~3916 &f~0~4300 (cdr &lst~0~4301)))) (begin (&f~0~4300 &lst~0~4301)))))) (set! &dotted-length~0~3917 (lambda (&dl~0~4292) (if (null? &dl~0~4292) (begin 0) (if (pair? &dl~0~4292) (begin (+ 1 (&dotted-length~0~3917 (cdr &dl~0~4292)))) (begin 0))))) (set! &dotted-butlast~0~3918 (lambda (&ls~0~4266 &n~0~4267) (((lambda (&recurse~0~4273) ((lambda (&temp~0~4276) (set! &recurse~0~4273 &temp~0~4276) ((lambda () &recurse~0~4273))) (lambda (&ls~0~4281 &length-left~0~4282) (if (< &length-left~0~4282 &n~0~4267) (begin (assertion-violation 'dotted-butlast "List too short" &ls~0~4281 &n~0~4267)) (if (= &length-left~0~4282 &n~0~4267) (begin '()) (begin (cons (car &ls~0~4281) (&recurse~0~4273 (cdr &ls~0~4281) (- &length-left~0~4282 1))))))))) ex:undefined) &ls~0~4266 (&dotted-length~0~3917 &ls~0~4266)))) (set! &dotted-last~0~3919 (lambda (&ls~0~4241 &n~0~4242) (((lambda (&recurse~0~4248) ((lambda (&temp~0~4251) (set! &recurse~0~4248 &temp~0~4251) ((lambda () &recurse~0~4248))) (lambda (&ls~0~4256 &length-left~0~4257) (if (< &length-left~0~4257 &n~0~4242) (begin (assertion-violation 'dotted-last "List too short" &ls~0~4256 &n~0~4242)) (if (= &length-left~0~4257 &n~0~4242) (begin &ls~0~4256) (begin (&recurse~0~4248 (cdr &ls~0~4256) (- &length-left~0~4257 1)))))))) ex:undefined) &ls~0~4241 (&dotted-length~0~3917 &ls~0~4241)))) (set! &map-while~0~3920 (lambda (&f~0~4220 &lst~0~4221 &k~0~4222) (if (null? &lst~0~4221) (begin (&k~0~4222 '() '())) (if (pair? &lst~0~4221) (begin ((lambda (&head~0~4232) (if &head~0~4232 (&map-while~0~3920 &f~0~4220 (cdr &lst~0~4221) (lambda (&answer~0~4235 &rest~0~4236) (&k~0~4222 (cons &head~0~4232 &answer~0~4235) &rest~0~4236))) (&k~0~4222 '() &lst~0~4221))) (&f~0~4220 (car &lst~0~4221)))) (begin (&k~0~4222 '() &lst~0~4221)))))) (set! &check-set?~0~3921 (lambda (&ls~0~4211 &=~0~4212 &fail~0~4213) (let ((x (null? &ls~0~4211))) (if x x (if (memp (lambda (&x~0~4218) (&=~0~4212 &x~0~4218 (car &ls~0~4211))) (cdr &ls~0~4211)) (&fail~0~4213 (car &ls~0~4211)) (&check-set?~0~3921 (cdr &ls~0~4211) &=~0~4212 &fail~0~4213)))))) (set! &unionv~0~3922 (lambda &sets~0~4198 (if (null? &sets~0~4198) (begin '()) (if (null? (car &sets~0~4198)) (begin (apply &unionv~0~3922 (cdr &sets~0~4198))) (begin ((lambda (&rest~0~4208) (if (memv (car (car &sets~0~4198)) &rest~0~4208) &rest~0~4208 (cons (car (car &sets~0~4198)) &rest~0~4208))) (apply &unionv~0~3922 (cdr (car &sets~0~4198)) (cdr &sets~0~4198)))))))) (set! &drop-tail~0~3923 (lambda (&list~0~4187 &tail~0~4188) (if (null? &list~0~4187) (begin '()) (if (eq? &list~0~4187 &tail~0~4188) (begin '()) (begin (cons (car &list~0~4187) (&drop-tail~0~3923 (cdr &list~0~4187) &tail~0~4188))))))) (set! &list->string~0~3924 (lambda (&e~0~4171 &separator~0~4172) ((lambda (&tostring~0~4173) (set! &tostring~0~4173 (lambda (&x~0~4178) (if (symbol? &x~0~4178) (begin (symbol->string &x~0~4178)) (if (number? &x~0~4178) (begin (number->string &x~0~4178)) (begin (assertion-violation 'list->string "Invalid argument" &e~0~4171)))))) (if (null? &e~0~4171) "" (string-append (&tostring~0~4173 (car &e~0~4171)) (apply string-append (map (lambda (&x~0~4176) (string-append &separator~0~4172 (&tostring~0~4173 &x~0~4176))) (cdr &e~0~4171)))))) ex:undefined))) (set! &compose~0~3925 (lambda (&f~0~4166 &g~0~4167) (lambda (&x~0~4169) (&f~0~4166 (&g~0~4167 &x~0~4169))))) (set! &check~0~3926 (lambda (&x~0~4160 &p?~0~4161 &from~0~4162) (let ((x (&p?~0~4161 &x~0~4160))) (if x x (&syntax-violation~0~3903 &from~0~4162 "Invalid argument" &x~0~4160))))) (set! &invalid-form~0~3927 (lambda (&exp~0~4158) (&syntax-violation~0~3903 #f "Invalid form" &exp~0~4158))) (set! &repl~0~3928 (lambda (&exps~0~4149) (&reset-toplevel!~0~3929) (for-each (lambda (&exp~0~4151) (for-each (lambda (&exp~0~4153) (for-each (lambda (&result~0~4155) (display &result~0~4155) (newline)) (call-with-values (lambda () (eval &exp~0~4153 (interaction-environment))) list))) (&expand-toplevel-sequence~0~3930 (list &exp~0~4151)))) &exps~0~4149))) (set! &reset-toplevel!~0~3929 (lambda () (set! &*trace*~0~3785 '()) (set! &*current-library*~0~3779 '()) (set! &*phase*~0~3767 0) (set! &*used*~0~3782 (list '())) (set! &*color*~0~3770 (&generate-color~0~3807)) (set! &*usage-env*~0~3764 &*toplevel-env*~0~3761))) (set! &expand-toplevel-sequence~0~3930 (lambda (&forms~0~4131) (&scan-sequence~0~3863 'toplevel &make-toplevel-mapping~0~3818 (&source->syntax~0~3937 &forms~0~4131) (lambda (&forms~0~4134 &syntax-definitions~0~4135 &bound-variables~0~4136) (&emit-body~0~3864 &forms~0~4134 'define))))) (set! &expand-file~0~3931 (lambda (&filename~0~4128 &target-filename~0~4129) (&reset-toplevel!~0~3929) (&write-file~0~3935 (&expand-toplevel-sequence~0~3930 (&normalize~0~3933 (&read-file~0~3934 &filename~0~4128))) &target-filename~0~4129))) (set! &expand-r5rs-file~0~3932 (lambda (&filename~0~4086 &target-filename~0~4087 &r6rs-env~0~4088) (&reset-toplevel!~0~3929) ((lambda (&saved~0~4092) (set! &make-free-name~0~3806 (lambda (&symbol~0~4126) &symbol~0~4126)) (call-with-values (lambda () ((lambda (&saved~0~4097) (set! &*usage-env*~0~3764 (&r6rs-environment-env~0~3908 &r6rs-env~0~4088)) (call-with-values (lambda () ((lambda (&saved~0~4102) (set! &*macro-table*~0~3773 &*macro-table*~0~3773) (call-with-values (lambda () ((lambda (&imported-libraries~0~4107) (&import-libraries-for-expand~0~3887 (&r6rs-environment-imported-libraries~0~3907 &r6rs-env~0~4088) (map not &imported-libraries~0~4107) 0) (&write-file~0~3935 (cons (cons 'ex:import-libraries-for-run (cons (list 'quote (&r6rs-environment-imported-libraries~0~3907 &r6rs-env~0~4088)) (cons (list 'quote (¤t-builds~0~3886 &imported-libraries~0~4107)) '(0)))) (&expand-toplevel-sequence~0~3930 (&read-file~0~3934 &filename~0~4086))) &target-filename~0~4087)) (&r6rs-environment-imported-libraries~0~3907 &r6rs-env~0~4088))) (lambda &results~0~4114 (set! &*macro-table*~0~3773 &saved~0~4102) (apply values &results~0~4114)))) &*macro-table*~0~3773)) (lambda &results~0~4118 (set! &*usage-env*~0~3764 &saved~0~4097) (apply values &results~0~4118)))) &*usage-env*~0~3764)) (lambda &results~0~4122 (set! &make-free-name~0~3806 &saved~0~4092) (apply values &results~0~4122)))) &make-free-name~0~3806))) (set! &normalize~0~3933 (lambda (&exps~0~4047) ((lambda (&error~0~4048) (set! &error~0~4048 (lambda () ((lambda (&newline~0~4083) (&syntax-violation~0~3903 'expand-file (string-append "File should be of the form:" &newline~0~4083 " *" &newline~0~4083 " | * ") &exps~0~4047)) (string #\newline)))) (((lambda (&loop~0~4054) ((lambda (&temp~0~4057) (set! &loop~0~4054 &temp~0~4057) ((lambda () &loop~0~4054))) (lambda (&exps~0~4062 &normalized~0~4063) (if (null? &exps~0~4062) (reverse &normalized~0~4063) (if (pair? (car &exps~0~4062)) ((lambda (&t~0~4069) (if (memv &t~0~4069 '(library)) (begin (&loop~0~4054 (cdr &exps~0~4062) (cons (car &exps~0~4062) &normalized~0~4063))) (if (memv &t~0~4069 '(import)) (begin (&loop~0~4054 '() (cons (cons 'program &exps~0~4062) &normalized~0~4063))) (begin (&error~0~4048))))) (caar &exps~0~4062)) (&error~0~4048)))))) ex:undefined) &exps~0~4047 '())) ex:undefined))) (set! &read-file~0~3934 (lambda (&fn~0~4025) ((lambda (&p~0~4028) (((lambda (&f~0~4034) ((lambda (&temp~0~4037) (set! &f~0~4034 &temp~0~4037) ((lambda () &f~0~4034))) (lambda (&x~0~4042) (if (eof-object? &x~0~4042) (begin (close-input-port &p~0~4028) '()) (cons &x~0~4042 (&f~0~4034 (read &p~0~4028))))))) ex:undefined) (read &p~0~4028))) (open-input-file &fn~0~4025)))) (set! &write-file~0~3935 (lambda (&exps~0~4016 &fn~0~4017) (if (file-exists? &fn~0~4017) (delete-file &fn~0~4017)) ((lambda (&p~0~4020) (for-each (lambda (&exp~0~4022) (write &exp~0~4022 &p~0~4020)) &exps~0~4016) (close-output-port &p~0~4020)) (open-output-file &fn~0~4017)))) (set! &toplevel-template~0~3936 (&make-identifier~0~3794 'toplevel-template '() '() 0 #f)) (set! &source->syntax~0~3937 (lambda (&datum~0~4011) (&datum->syntax~0~3833 &toplevel-template~0~3936 &datum~0~4011))) (set! &library-language-names~0~3938 '(program library export import for run expand meta only except prefix rename primitives >= <= and or not)) (set! &make-library-language~0~3939 (lambda () (map (lambda (&name~0~4004) (cons &name~0~4004 (&make-binding~0~3808 'macro &name~0~4004 '(0) #f '()))) &library-language-names~0~3938))) (ex:register-library! ((lambda (&primitive-macro-mapping~0~3970) (ex:make-library '(core primitive-macros) (lambda () '()) (map (lambda (&mapping~0~3975) (cons (car &mapping~0~3975) (&make-binding~0~3808 'macro (car &mapping~0~3975) '(0) #f '()))) &primitive-macro-mapping~0~3970) '() '() (lambda () (for-each (lambda (&mapping~0~3983) (®ister-macro!~0~3845 (car &mapping~0~3983) (&make-expander~0~3840 (cdr &mapping~0~3983)))) &primitive-macro-mapping~0~3970) (values)) (lambda () (values)) 'system)) (list (cons 'lambda &expand-lambda~0~3858) (cons 'if &expand-if~0~3852) (cons 'set! &expand-set!~0~3853) (cons 'begin &expand-begin~0~3854) (cons 'syntax &expand-syntax~0~3873) (cons 'quote &expand-quote~0~3851) (cons 'let-syntax &expand-local-syntax~0~3855) (cons 'letrec-syntax &expand-local-syntax~0~3855) (cons 'syntax-case &expand-syntax-case~0~3871) (cons 'and &expand-and~0~3856) (cons 'or &expand-or~0~3857) (cons 'define &invalid-form~0~3927) (cons 'define-syntax &invalid-form~0~3927) (cons '_ &invalid-form~0~3927) (cons '... &invalid-form~0~3927)))) (set! &*toplevel-env*~0~3761 (&make-unit-env~0~3822)) (set! &*usage-env*~0~3764 &*toplevel-env*~0~3761) (&env-import!~0~3885 &toplevel-template~0~3936 (&make-library-language~0~3939) &*toplevel-env*~0~3761) (®ister-macro!~0~3845 'library (&make-expander~0~3840 &invalid-form~0~3927)) (®ister-macro!~0~3845 'program (&make-expander~0~3840 &invalid-form~0~3927)) (®ister-macro!~0~3845 'import (&make-expander~0~3840 &invalid-form~0~3927)) (set! ex:make-variable-transformer &make-variable-transformer~0~3842) (set! ex:identifier? &identifier?~0~3795) (set! ex:bound-identifier=? &bound-identifier=?~0~3802) (set! ex:free-identifier=? &free-identifier=?~0~3803) (set! ex:generate-temporaries &generate-temporaries~0~3835) (set! ex:datum->syntax &datum->syntax~0~3833) (set! ex:syntax->datum &syntax->datum~0~3834) (set! ex:environment &environment~0~3909) (set! ex:environment-bindings &environment-bindings~0~3911) (set! ex:eval &r6rs-eval~0~3910) (set! ex:syntax-violation &syntax-violation~0~3903) (set! ex:expand-file &expand-file~0~3931) (set! ex:repl &repl~0~3928) (set! ex:expand-r5rs-file &expand-r5rs-file~0~3932) (set! ex:invalid-form &invalid-form~0~3927) (set! ex:register-macro! ®ister-macro!~0~3845) (set! ex:syntax-rename &syntax-rename~0~3832) (set! ex:map-while &map-while~0~3920) (set! ex:dotted-length &dotted-length~0~3917) (set! ex:dotted-butlast &dotted-butlast~0~3918) (set! ex:dotted-last &dotted-last~0~3919) (set! ex:uncompress &uncompress~0~3830) (set! ex:free=? &free=?~0~3804)) ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined ex:undefined)) (record-constructor (make-record-constructor-descriptor &:identifier~0~3791 #f #f)))) (make-record-type-descriptor 'identifier #f #f #f #f '#5((immutable name) (immutable colors) (immutable transformer-envs) (immutable displacement) (immutable maybe-library))))) #f)) '())) (list '()))) '())) '())) '())) #f)) 0)) #f)) #f)