From 861ddac5bcc5710b9187efbc2bf6417491cfa6ea Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 12 Mar 2019 17:16:34 -0600 Subject: [PATCH] expander: sort submodule names in a linklet bundle --- racket/src/expander/compile/module.rkt | 4 +- .../src/expander/eval/reflect-submodule.rkt | 3 +- racket/src/racket/src/startup.inc | 3726 +++++++++-------- 3 files changed, 1876 insertions(+), 1857 deletions(-) diff --git a/racket/src/expander/compile/module.rkt b/racket/src/expander/compile/module.rkt index 81996527e1..beba6bf5dc 100644 --- a/racket/src/expander/compile/module.rkt +++ b/racket/src/expander/compile/module.rkt @@ -310,10 +310,10 @@ bundle)] [bundle (if (null? pre-submodules) bundle - (hash-set bundle 'pre (map car pre-submodules)))] + (hash-set bundle 'pre (sort (map car pre-submodules) symbollinklet-bundle (hash-set (linklet-bundle->hash b) (if pre? 'pre 'post) - (map module-compiled-immediate-name submods)))) - + (sort (map module-compiled-immediate-name submods) symbols-exp/intern fasl->s-exp/intern)" "(1/find-library-collection-links find-library-collection-links)" "(1/find-library-collection-paths find-library-collection-paths)" "(find-main-config find-main-config)" @@ -2951,1851 +2950,6 @@ static const char *startup_source = " for-loop_0)" " '#hasheq()" " lst_0))))))" -"(define-values" -"(truncate-path)" -"(lambda(p_0)" -"(begin" -"(let-values(((base1_0 name1_0 dir?_0)(split-path p_0)))" -"(if(path-for-some-system? base1_0)" -"(let-values()" -"(let-values(((base2_0 name2_0 dir?_1)(split-path base1_0)))" -"(if(not base2_0)" -"(let-values()(path-for-some-system->string p_0))" -"(if(symbol? name2_0)" -" (let-values () (string-append \".../\" (path-elem->string name1_0)))" -"(let-values()" -" (string-append \".../\" (path-for-some-system->string name2_0) \"/\" (path-elem->string name1_0)))))))" -"(if(eq? base1_0 'relative)" -"(let-values()(path-elem->string name1_0))" -"(let-values()(path-for-some-system->string p_0))))))))" -"(define-values" -"(path-elem->string)" -"(lambda(p_0)" -"(begin" -"(if(eq? p_0 'same)" -" (let-values () \".\")" -" (if (eq? p_0 'up) (let-values () \"..\") (let-values () (path-for-some-system->string p_0)))))))" -"(define-values" -"(path-for-some-system->string)" -"(lambda(p_0)" -"(begin" -"(if(path? p_0)" -"(let-values()(path->string p_0))" -"(let-values()(bytes->string/utf-8(path->bytes p_0) '#\\�))))))" -"(define-values" -"(make-path->relative-path-elements4.1)" -"(lambda(who1_0 wr-dir3_0)" -"(begin" -" 'make-path->relative-path-elements4" -"(let-values(((wr-dir_0)(if(eq? wr-dir3_0 unsafe-undefined)(current-write-relative-directory) wr-dir3_0)))" -"(let-values(((who_0) who1_0))" -"(let-values()" -"(begin" -"(if who_0" -"(let-values()" -"(if(let-values(((or-part_0)(not wr-dir_0)))" -"(if or-part_0" -" or-part_0" -"(let-values(((or-part_1)(if(path-string? wr-dir_0)(complete-path? wr-dir_0) #f)))" -"(if or-part_1" -" or-part_1" -"(if(pair? wr-dir_0)" -"(if(path-string?(car wr-dir_0))" -"(if(complete-path?(car wr-dir_0))" -"(if(path-string?(cdr wr-dir_0))(complete-path?(cdr wr-dir_0)) #f)" -" #f)" -" #f)" -" #f)))))" -"(void)" -"(let-values()" -"(raise-argument-error" -" who_0" -"(string-append" -" \"(or/c (and/c path-string? complete-path?)\\n\"" -" \" (cons/c (and/c path-string? complete-path?)\\n\"" -" \" (and/c path-string? complete-path?))\\n\"" -" \" #f)\")" -" wr-dir_0))))" -"(void))" -"(if(not wr-dir_0)" -"(let-values()(lambda(v_0) #f))" -"(let-values()" -"(let-values(((exploded-base-dir_0) 'not-ready))" -"(let-values(((exploded-wrt-rel-dir_0) 'not-ready))" -"(lambda(v_0)" -"(begin" -"(if(if(eq? exploded-base-dir_0 'not-ready)(path? v_0) #f)" -"(let-values()" -"(let-values(((wrt-dir_0)(if wr-dir_0(if(pair? wr-dir_0)(car wr-dir_0) wr-dir_0) #f)))" -"(let-values(((exploded-wrt-dir_0)(explode-path wrt-dir_0)))" -"(let-values(((base-dir_0)" -"(if wr-dir_0(if(pair? wr-dir_0)(cdr wr-dir_0) wr-dir_0) #f)))" -"(begin" -"(set! exploded-base-dir_0(if base-dir_0(explode-path base-dir_0) #f))" -"(set! exploded-wrt-rel-dir_0" -"(if(eq? base-dir_0 wrt-dir_0)" -"(let-values() '())" -"(let-values()" -"(let-values(((exploded-wrt-dir_1)(explode-path wrt-dir_0)))" -"(let-values(((base-len_0)(length exploded-base-dir_0)))" -"(begin" -"(if who_0" -"(let-values()" -"(if(if(>=(length exploded-wrt-dir_1) base-len_0)" -"(let-values(((lst_0) exploded-wrt-dir_1)" -"((lst_1) exploded-base-dir_0))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_0)))" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_1)))" -"((letrec-values(((for-loop_0)" -"(lambda(result_0 lst_2 lst_3)" -"(begin" -" 'for-loop" -"(if(if(pair? lst_2)" -"(pair? lst_3)" -" #f)" -"(let-values(((a_0)" -"(unsafe-car" -" lst_2))" -"((rest_0)" -"(unsafe-cdr" -" lst_2))" -"((b_0)" -"(unsafe-car" -" lst_3))" -"((rest_1)" -"(unsafe-cdr" -" lst_3)))" -"(let-values(((result_1)" -"(let-values()" -"(let-values(((result_1)" -"(let-values()" -"(let-values()" -"(equal?" -" a_0" -" b_0)))))" -"(values" -" result_1)))))" -"(if(if(not" -"((lambda x_0" -"(not result_1))" -" a_0))" -"(if(not" -"((lambda x_0" -"(not" -" result_1))" -" b_0))" -"(not #f)" -" #f)" -" #f)" -"(for-loop_0" -" result_1" -" rest_0" -" rest_1)" -" result_1)))" -" result_0)))))" -" for-loop_0)" -" #t" -" lst_0" -" lst_1)))" -" #f)" -"(void)" -"(let-values()" -"(raise-arguments-error" -" who_0" -" \"relative-directory pair's first path does not extend second path\"" -" \"first path\"" -" wrt-dir_0" -" \"second path\"" -" base-dir_0))))" -"(void))" -"(list-tail exploded-wrt-dir_1 base-len_0))))))))))))" -"(void))" -"(if exploded-base-dir_0" -"(if(path? v_0)" -"(let-values(((exploded_0)(explode-path v_0)))" -"(if(let-values(((lst_0) exploded-base-dir_0)((lst_1) exploded_0))" -"(begin" -"(if(variable-reference-from-unsafe?(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_0)))" -"(if(variable-reference-from-unsafe?(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_1)))" -"((letrec-values(((for-loop_0)" -"(lambda(result_0 lst_2 lst_3)" -"(begin" -" 'for-loop" -"(if(if(pair? lst_2)(pair? lst_3) #f)" -"(let-values(((base-p_0)(unsafe-car lst_2))" -"((rest_0)(unsafe-cdr lst_2))" -"((p_0)(unsafe-car lst_3))" -"((rest_1)(unsafe-cdr lst_3)))" -"(let-values(((result_1)" -"(let-values()" -"(let-values(((result_1)" -"(let-values()" -"(let-values()" -"(equal?" -" base-p_0" -" p_0)))))" -"(values result_1)))))" -"(if(if(not((lambda x_0(not result_1)) base-p_0))" -"(if(not((lambda x_0(not result_1)) p_0))" -"(not #f)" -" #f)" -" #f)" -"(for-loop_0 result_1 rest_0 rest_1)" -" result_1)))" -" result_0)))))" -" for-loop_0)" -" #t" -" lst_0" -" lst_1)))" -"(if(>=(length exploded_0)(length exploded-base-dir_0))" -"((letrec-values(((loop_0)" -"(lambda(exploded-wrt-rel-dir_1 rel_0)" -"(begin" -" 'loop" -"(if(null? exploded-wrt-rel-dir_1)" -"(let-values()" -"(reverse$1" -"(let-values(((lst_0) rel_0))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0 lst_1)" -"(begin" -" 'for-loop" -"(if(pair? lst_1)" -"(let-values(((p_0)" -"(unsafe-car" -" lst_1))" -"((rest_0)" -"(unsafe-cdr" -" lst_1)))" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -"(if(path?" -" p_0)" -"(path-element->bytes" -" p_0)" -" p_0))" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not #f)" -"(for-loop_0" -" fold-var_1" -" rest_0)" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" lst_0)))))" -"(if(if(pair? rel_0)" -"(equal?(car rel_0)(car exploded-wrt-rel-dir_1))" -" #f)" -"(let-values()" -"(loop_0(cdr exploded-wrt-rel-dir_1)(cdr rel_0)))" -"(let-values()" -"(append" -"(reverse$1" -"(let-values(((lst_0) exploded-wrt-rel-dir_1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0 lst_1)" -"(begin" -" 'for-loop" -"(if(pair? lst_1)" -"(let-values(((p_0)" -"(unsafe-car" -" lst_1))" -"((rest_0)" -"(unsafe-cdr" -" lst_1)))" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -" 'up)" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not #f)" -"(for-loop_0" -" fold-var_1" -" rest_0)" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" lst_0))))" -"(reverse$1" -"(let-values(((lst_0) rel_0))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()(check-list lst_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0 lst_1)" -"(begin" -" 'for-loop" -"(if(pair? lst_1)" -"(let-values(((p_0)" -"(unsafe-car" -" lst_1))" -"((rest_0)" -"(unsafe-cdr" -" lst_1)))" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -"(if(path?" -" p_0)" -"(path-element->bytes" -" p_0)" -" p_0))" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not #f)" -"(for-loop_0" -" fold-var_1" -" rest_0)" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" lst_0))))))))))))" -" loop_0)" -" exploded-wrt-rel-dir_0" -"(list-tail exploded_0(length exploded-base-dir_0)))" -" #f)" -" #f))" -" #f)" -" #f))))))))))))))" -"(define-values(1/write-byte)(lambda(byte_0 out_0)(begin 'write-byte(write-byte byte_0 out_0))))" -"(define-values" -"(1/write-bytes)" -"(let-values(((write-bytes5_0)" -"(lambda(bstr3_0 out4_0 start-pos1_0 end-pos2_0)" -"(begin" -" 'write-bytes5" -"(let-values(((bstr_0) bstr3_0))" -"(let-values(((out_0) out4_0))" -"(let-values(((start-pos_0) start-pos1_0))" -"(let-values(((end-pos_0)" -"(if(eq? end-pos2_0 unsafe-undefined)(bytes-length bstr_0) end-pos2_0)))" -"(let-values()(write-bytes bstr_0 out_0 start-pos_0 end-pos_0))))))))))" -"(case-lambda" -"((bstr_0 out_0)(begin 'write-bytes(write-bytes5_0 bstr_0 out_0 0 unsafe-undefined)))" -"((bstr_0 out_0 start-pos_0 end-pos2_0)(write-bytes5_0 bstr_0 out_0 start-pos_0 end-pos2_0))" -"((bstr_0 out_0 start-pos1_0)(write-bytes5_0 bstr_0 out_0 start-pos1_0 unsafe-undefined)))))" -"(define-values(fasl-graph-def-type) 1)" -"(define-values(fasl-graph-ref-type) 2)" -"(define-values(fasl-false-type) 3)" -"(define-values(fasl-true-type) 4)" -"(define-values(fasl-null-type) 5)" -"(define-values(fasl-void-type) 6)" -"(define-values(fasl-eof-type) 7)" -"(define-values(fasl-integer-type) 8)" -"(define-values(fasl-flonum-type) 9)" -"(define-values(fasl-single-flonum-type) 10)" -"(define-values(fasl-rational-type) 11)" -"(define-values(fasl-complex-type) 12)" -"(define-values(fasl-char-type) 13)" -"(define-values(fasl-symbol-type) 14)" -"(define-values(fasl-unreadable-symbol-type) 15)" -"(define-values(fasl-uninterned-symbol-type) 16)" -"(define-values(fasl-keyword-type) 17)" -"(define-values(fasl-string-type) 18)" -"(define-values(fasl-immutable-string-type) 19)" -"(define-values(fasl-bytes-type) 20)" -"(define-values(fasl-immutable-bytes-type) 21)" -"(define-values(fasl-path-type) 22)" -"(define-values(fasl-relative-path-type) 23)" -"(define-values(fasl-pregexp-type) 24)" -"(define-values(fasl-regexp-type) 25)" -"(define-values(fasl-byte-pregexp-type) 26)" -"(define-values(fasl-byte-regexp-type) 27)" -"(define-values(fasl-list-type) 28)" -"(define-values(fasl-list*-type) 29)" -"(define-values(fasl-pair-type) 30)" -"(define-values(fasl-vector-type) 31)" -"(define-values(fasl-immutable-vector-type) 32)" -"(define-values(fasl-box-type) 33)" -"(define-values(fasl-immutable-box-type) 34)" -"(define-values(fasl-prefab-type) 35)" -"(define-values(fasl-hash-type) 36)" -"(define-values(fasl-immutable-hash-type) 37)" -"(define-values(fasl-srcloc) 38)" -"(define-values(fasl-extflonum-type) 39)" -"(define-values(fasl-small-integer-start) 100)" -"(define-values(fasl-lowest-small-integer) -10)" -"(define-values(fasl-highest-small-integer)(- 255(- fasl-small-integer-start fasl-lowest-small-integer) 1))" -" (define-values (fasl-prefix) #\"racket/fasl:\")" -"(define-values(fasl-prefix-length)(bytes-length fasl-prefix))" -"(define-values(fasl-hash-eq-variant) 0)" -"(define-values(fasl-hash-equal-variant) 1)" -"(define-values(fasl-hash-eqv-variant) 2)" -"(define-values" -"(s-exp->fasl11.1)" -"(lambda(keep-mutable?7_0 v10_0 orig-o9_0)" -"(begin" -" 's-exp->fasl11" -"(let-values(((v_0) v10_0))" -"(let-values(((orig-o_0) orig-o9_0))" -"(let-values(((keep-mutable?_0) keep-mutable?7_0))" -"(let-values()" -"(let-values((()" -"(begin" -"(if orig-o_0" -"(let-values()" -"(if(output-port? orig-o_0)" -"(void)" -"(let-values()" -" (raise-argument-error 'fasl->s-exp \"(or/c output-port? #f)\" orig-o_0))))" -"(void))" -"(values))))" -"(let-values(((o_0)(let-values(((or-part_0) orig-o_0))(if or-part_0 or-part_0(open-output-bytes)))))" -"(let-values(((shared_0)(make-hasheq)))" -"(let-values(((shared-counter_0) 0))" -"(let-values((()" -"(begin" -"((letrec-values(((loop_0)" -"(lambda(v_1)" -"(begin" -" 'loop" -"(if(let-values(((or-part_0)(symbol? v_1)))" -"(if or-part_0" -" or-part_0" -"(let-values(((or-part_1)(keyword? v_1)))" -"(if or-part_1" -" or-part_1" -"(let-values(((or-part_2)(string? v_1)))" -"(if or-part_2" -" or-part_2" -"(let-values(((or-part_3)(bytes? v_1)))" -"(if or-part_3" -" or-part_3" -"(path? v_1)))))))))" -"(let-values()(hash-update! shared_0 v_1 add1 0))" -"(if(pair? v_1)" -"(let-values()" -"(begin(loop_0(car v_1))(loop_0(cdr v_1))))" -"(if(vector? v_1)" -"(let-values()" -"(begin" -"(let-values(((vec_0 len_0)" -"(let-values(((vec_0) v_1))" -"(begin" -"(check-vector vec_0)" -"(values" -" vec_0" -"(unsafe-vector-length" -" vec_0))))))" -"(begin" -" #f" -"((letrec-values(((for-loop_0)" -"(lambda(pos_0)" -"(begin" -" 'for-loop" -"(if(unsafe-fx<" -" pos_0" -" len_0)" -"(let-values(((e_0)" -"(unsafe-vector-ref" -" vec_0" -" pos_0)))" -"(let-values((()" -"(let-values()" -"(let-values((()" -"(let-values()" -"(begin" -"(let-values()" -"(loop_0" -" e_0))" -"(values)))))" -"(values)))))" -"(if(not #f)" -"(for-loop_0" -"(unsafe-fx+" -" 1" -" pos_0))" -"(values))))" -"(values))))))" -" for-loop_0)" -" 0)))" -"(void)))" -"(if(hash? v_1)" -"(let-values()" -"(hash-for-each" -" v_1" -"(lambda(k_0 v_2)" -"(begin(loop_0 k_0)(loop_0 v_2)))" -" #t))" -"(if(box? v_1)" -"(let-values()(loop_0(unbox v_1)))" -"(let-values(((c1_0)(prefab-struct-key v_1)))" -"(if c1_0" -"((lambda(k_0)" -"(begin" -"(loop_0 k_0)" -"(let-values(((v*_0" -" start*_0" -" stop*_0" -" step*_0)" -"(normalise-inputs" -" 'in-vector" -" \"vector\"" -"(lambda(x_0)" -"(vector? x_0))" -"(lambda(x_0)" -"(unsafe-vector-length" -" x_0))" -"(struct->vector v_1)" -" 1" -" #f" -" 1)))" -"(begin" -" #t" -"((letrec-values(((for-loop_0)" -"(lambda(idx_0)" -"(begin" -" 'for-loop" -"(if(unsafe-fx<" -" idx_0" -" stop*_0)" -"(let-values(((e_0)" -"(unsafe-vector-ref" -" v*_0" -" idx_0)))" -"(let-values((()" -"(let-values()" -"(let-values((()" -"(let-values()" -"(begin" -"(let-values()" -"(loop_0" -" e_0))" -"(values)))))" -"(values)))))" -"(if(not" -" #f)" -"(for-loop_0" -"(unsafe-fx+" -" idx_0" -" 1))" -"(values))))" -"(values))))))" -" for-loop_0)" -" start*_0)))" -"(void)))" -" c1_0)" -"(let-values()(void)))))))))))))" -" loop_0)" -" v_0)" -"(values))))" -"(let-values(((treat-immutable?_0)" -"(lambda(v_1)" -"(begin" -" 'treat-immutable?" -"(let-values(((or-part_0)(not keep-mutable?_0)))" -"(if or-part_0 or-part_0(immutable? v_1)))))))" -"(let-values(((path->relative-path-elements_0)" -"(let-values()(make-path->relative-path-elements4.1 #f unsafe-undefined))))" -"(let-values((()(begin(1/write-bytes fasl-prefix o_0)(values))))" -"(let-values(((bstr_0)" -"(let-values(((o_1)(open-output-bytes)))" -"(begin" -"((letrec-values(((loop_0)" -"(lambda(v_1)" -"(begin" -" 'loop" -"(if(not(eq?(hash-ref shared_0 v_1 1) 1))" -"(let-values()" -"(let-values(((c_0)(hash-ref shared_0 v_1)))" -"(if(negative? c_0)" -"(let-values()" -"(begin" -"(1/write-byte fasl-graph-ref-type o_1)" -"(write-fasl-integer" -"(sub1(- c_0))" -" o_1)))" -"(let-values()" -"(let-values(((pos_0) shared-counter_0))" -"(begin" -"(set! shared-counter_0" -"(add1 shared-counter_0))" -"(1/write-byte" -" fasl-graph-def-type" -" o_1)" -"(write-fasl-integer pos_0 o_1)" -"(hash-remove! shared_0 v_1)" -"(loop_0 v_1)" -"(hash-set!" -" shared_0" -" v_1" -"(-(add1 pos_0)))))))))" -"(if(not v_1)" -"(let-values()" -"(1/write-byte fasl-false-type o_1))" -"(if(eq? v_1 #t)" -"(let-values()" -"(1/write-byte fasl-true-type o_1))" -"(if(null? v_1)" -"(let-values()" -"(1/write-byte fasl-null-type o_1))" -"(if(void? v_1)" -"(let-values()" -"(1/write-byte fasl-void-type o_1))" -"(if(eof-object? v_1)" -"(let-values()" -"(1/write-byte fasl-eof-type o_1))" -"(if(exact-integer? v_1)" -"(let-values()" -"(if(<=" -" fasl-lowest-small-integer" -" v_1" -" fasl-highest-small-integer)" -"(let-values()" -"(1/write-byte" -"(+" -" fasl-small-integer-start" -"(-" -" v_1" -" fasl-lowest-small-integer))" -" o_1))" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-integer-type" -" o_1)" -"(write-fasl-integer" -" v_1" -" o_1)))))" -"(if(flonum? v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-flonum-type" -" o_1)" -"(1/write-bytes" -"(real->floating-point-bytes" -" v_1" -" 8" -" #f)" -" o_1)))" -"(if(single-flonum? v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-single-flonum-type" -" o_1)" -"(1/write-bytes" -"(real->floating-point-bytes" -" v_1" -" 4" -" #f)" -" o_1)))" -"(if(extflonum? v_1)" -"(let-values()" -"(let-values((()" -"(begin" -"(1/write-byte" -" fasl-extflonum-type" -" o_1)" -"(values))))" -"(let-values(((bstr_0)" -"(string->bytes/utf-8" -"(format" -" \"~a\"" -" v_1))))" -"(begin" -"(write-fasl-integer" -"(bytes-length bstr_0)" -" o_1)" -"(1/write-bytes" -" bstr_0" -" o_1)))))" -"(if(rational? v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-rational-type" -" o_1)" -"(loop_0(numerator v_1))" -"(loop_0" -"(denominator v_1))))" -"(if(complex? v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-complex-type" -" o_1)" -"(loop_0" -"(real-part v_1))" -"(loop_0" -"(imag-part v_1))))" -"(if(char? v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-char-type" -" o_1)" -"(write-fasl-integer" -"(char->integer v_1)" -" o_1)))" -"(if(symbol? v_1)" -"(let-values()" -"(let-values((()" -"(begin" -"(if(symbol-interned?" -" v_1)" -"(let-values()" -"(1/write-byte" -" fasl-symbol-type" -" o_1))" -"(if(symbol-unreadable?" -" v_1)" -"(let-values()" -"(1/write-byte" -" fasl-unreadable-symbol-type" -" o_1))" -"(let-values()" -"(1/write-byte" -" fasl-uninterned-symbol-type" -" o_1))))" -"(values))))" -"(let-values(((bstr_0)" -"(string->bytes/utf-8" -"(symbol->string" -" v_1))))" -"(begin" -"(write-fasl-integer" -"(bytes-length" -" bstr_0)" -" o_1)" -"(1/write-bytes" -" bstr_0" -" o_1)))))" -"(if(keyword? v_1)" -"(let-values()" -"(let-values((()" -"(begin" -"(1/write-byte" -" fasl-keyword-type" -" o_1)" -"(values))))" -"(let-values(((bstr_0)" -"(string->bytes/utf-8" -"(keyword->string" -" v_1))))" -"(begin" -"(write-fasl-integer" -"(bytes-length" -" bstr_0)" -" o_1)" -"(1/write-bytes" -" bstr_0" -" o_1)))))" -"(if(string? v_1)" -"(let-values()" -"(begin" -"(write-fasl-integer" -"(if(treat-immutable?_0" -" v_1)" -" fasl-immutable-string-type" -" fasl-string-type)" -" o_1)" -"(write-fasl-string" -" v_1" -" o_1)))" -"(if(bytes? v_1)" -"(let-values()" -"(begin" -"(write-fasl-integer" -"(if(treat-immutable?_0" -" v_1)" -" fasl-immutable-bytes-type" -" fasl-bytes-type)" -" o_1)" -"(write-fasl-bytes" -" v_1" -" o_1)))" -"(if(path-for-some-system?" -" v_1)" -"(let-values()" -"(let-values(((rel-elems_0)" -"(path->relative-path-elements_0" -" v_1)))" -"(if rel-elems_0" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-relative-path-type" -" o_1)" -"(loop_0" -" rel-elems_0)))" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-path-type" -" o_1)" -"(write-fasl-bytes" -"(path->bytes" -" v_1)" -" o_1)" -"(loop_0" -"(path-convention-type" -" v_1)))))))" -"(if(if(srcloc?" -" v_1)" -"(let-values(((src_0)" -"(srcloc-source" -" v_1)))" -"(let-values(((or-part_0)" -"(not" -" src_0)))" -"(if or-part_0" -" or-part_0" -"(let-values(((or-part_1)" -"(path-for-some-system?" -" src_0)))" -"(if or-part_1" -" or-part_1" -"(let-values(((or-part_2)" -"(string?" -" src_0)))" -"(if or-part_2" -" or-part_2" -"(let-values(((or-part_3)" -"(bytes?" -" src_0)))" -"(if or-part_3" -" or-part_3" -"(symbol?" -" src_0))))))))))" -" #f)" -"(let-values()" -"(let-values(((src_0)" -"(srcloc-source" -" v_1)))" -"(let-values(((new-src_0)" -"(if(if(path?" -" src_0)" -"(not" -"(path->relative-path-elements_0" -" src_0))" -" #f)" -"(let-values()" -"(truncate-path" -" src_0))" -"(let-values()" -" src_0))))" -"(begin" -"(write-fasl-integer" -" fasl-srcloc" -" o_1)" -"(loop_0" -" new-src_0)" -"(loop_0" -"(srcloc-line" -" v_1))" -"(loop_0" -"(srcloc-column" -" v_1))" -"(loop_0" -"(srcloc-position" -" v_1))" -"(loop_0" -"(srcloc-span" -" v_1))))))" -"(if(pair?" -" v_1)" -"(let-values()" -"(if(pair?" -"(cdr" -" v_1))" -"(let-values()" -"(let-values(((n_0" -" normal-list?_0)" -"((letrec-values(((loop_1)" -"(lambda(v_2" -" len_0)" -"(begin" -" 'loop" -"(if(null?" -" v_2)" -"(let-values()" -"(values" -" len_0" -" #t))" -"(if(pair?" -" v_2)" -"(let-values()" -"(loop_1" -"(cdr" -" v_2)" -"(add1" -" len_0)))" -"(let-values()" -"(values" -" len_0" -" #f))))))))" -" loop_1)" -" v_1" -" 0)))" -"(begin" -"(1/write-byte" -"(if normal-list?_0" -" fasl-list-type" -" fasl-list*-type)" -" o_1)" -"(write-fasl-integer" -" n_0" -" o_1)" -"((letrec-values(((ploop_0)" -"(lambda(v_2)" -"(begin" -" 'ploop" -"(if(pair?" -" v_2)" -"(let-values()" -"(begin" -"(loop_0" -"(car" -" v_2))" -"(ploop_0" -"(cdr" -" v_2))))" -"(let-values()" -"(if normal-list?_0" -"(void)" -"(let-values()" -"(loop_0" -" v_2)))))))))" -" ploop_0)" -" v_1))))" -"(let-values()" -"(begin" -"(1/write-byte" -" fasl-pair-type" -" o_1)" -"(loop_0" -"(car" -" v_1))" -"(loop_0" -"(cdr" -" v_1))))))" -"(if(vector?" -" v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -"(if(treat-immutable?_0" -" v_1)" -" fasl-immutable-vector-type" -" fasl-vector-type)" -" o_1)" -"(write-fasl-integer" -"(vector-length" -" v_1)" -" o_1)" -"(let-values(((vec_0" -" len_0)" -"(let-values(((vec_0)" -" v_1))" -"(begin" -"(check-vector" -" vec_0)" -"(values" -" vec_0" -"(unsafe-vector-length" -" vec_0))))))" -"(begin" -" #f" -"((letrec-values(((for-loop_0)" -"(lambda(pos_0)" -"(begin" -" 'for-loop" -"(if(unsafe-fx<" -" pos_0" -" len_0)" -"(let-values(((e_0)" -"(unsafe-vector-ref" -" vec_0" -" pos_0)))" -"(let-values((()" -"(let-values()" -"(let-values((()" -"(let-values()" -"(begin" -"(let-values()" -"(loop_0" -" e_0))" -"(values)))))" -"(values)))))" -"(if(not" -" #f)" -"(for-loop_0" -"(unsafe-fx+" -" 1" -" pos_0))" -"(values))))" -"(values))))))" -" for-loop_0)" -" 0)))" -"(void)))" -"(if(box?" -" v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -"(if(treat-immutable?_0" -" v_1)" -" fasl-immutable-box-type" -" fasl-box-type)" -" o_1)" -"(loop_0" -"(unbox" -" v_1))))" -"(let-values(((c2_0)" -"(prefab-struct-key" -" v_1)))" -"(if c2_0" -"((lambda(k_0)" -"(let-values((()" -"(begin" -"(1/write-byte" -" fasl-prefab-type" -" o_1)" -"(values))))" -"(let-values((()" -"(begin" -"(loop_0" -" k_0)" -"(values))))" -"(let-values(((vec_0)" -"(struct->vector" -" v_1)))" -"(begin" -"(write-fasl-integer" -"(sub1" -"(vector-length" -" vec_0))" -" o_1)" -"(let-values(((v*_0" -" start*_0" -" stop*_0" -" step*_0)" -"(normalise-inputs" -" 'in-vector" -" \"vector\"" -"(lambda(x_0)" -"(vector?" -" x_0))" -"(lambda(x_0)" -"(unsafe-vector-length" -" x_0))" -" vec_0" -" 1" -" #f" -" 1)))" -"(begin" -" #t" -"((letrec-values(((for-loop_0)" -"(lambda(idx_0)" -"(begin" -" 'for-loop" -"(if(unsafe-fx<" -" idx_0" -" stop*_0)" -"(let-values(((e_0)" -"(unsafe-vector-ref" -" v*_0" -" idx_0)))" -"(let-values((()" -"(let-values()" -"(let-values((()" -"(let-values()" -"(begin" -"(let-values()" -"(loop_0" -" e_0))" -"(values)))))" -"(values)))))" -"(if(not" -" #f)" -"(for-loop_0" -"(unsafe-fx+" -" idx_0" -" 1))" -"(values))))" -"(values))))))" -" for-loop_0)" -" start*_0)))" -"(void))))))" -" c2_0)" -"(if(hash?" -" v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -"(if(treat-immutable?_0" -" v_1)" -" fasl-immutable-hash-type" -" fasl-hash-type)" -" o_1)" -"(1/write-byte" -"(if(hash-eq?" -" v_1)" -"(let-values()" -" fasl-hash-eq-variant)" -"(if(hash-eqv?" -" v_1)" -"(let-values()" -" fasl-hash-eqv-variant)" -"(let-values()" -" fasl-hash-equal-variant)))" -" o_1)" -"(write-fasl-integer" -"(hash-count" -" v_1)" -" o_1)" -"(hash-for-each" -" v_1" -"(lambda(k_0" -" v_2)" -"(begin" -"(loop_0" -" k_0)" -"(loop_0" -" v_2)))" -" #t)))" -"(if(regexp?" -" v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -"(if(pregexp?" -" v_1)" -" fasl-pregexp-type" -" fasl-regexp-type)" -" o_1)" -"(write-fasl-string" -"(object-name" -" v_1)" -" o_1)))" -"(if(byte-regexp?" -" v_1)" -"(let-values()" -"(begin" -"(1/write-byte" -"(if(byte-pregexp?" -" v_1)" -" fasl-byte-pregexp-type" -" fasl-byte-regexp-type)" -" o_1)" -"(write-fasl-bytes" -"(object-name" -" v_1)" -" o_1)))" -"(let-values()" -"(raise-arguments-error" -" 'fasl-write" -" \"cannot write value\"" -" \"value\"" -" v_1)))))))))))))))))))))))))))))))))" -" loop_0)" -" v_0)" -"(get-output-bytes o_1 #t)))))" -"(begin" -"(write-fasl-integer shared-counter_0 o_0)" -"(write-fasl-integer(bytes-length bstr_0) o_0)" -"(1/write-bytes bstr_0 o_0)" -"(if orig-o_0(void)(get-output-bytes o_0)))))))))))))))))))" -"(define-values" -"(fasl->s-exp17.1)" -"(lambda(datum-intern?14_0 orig-i16_0)" -"(begin" -" 'fasl->s-exp17" -"(let-values(((orig-i_0) orig-i16_0))" -"(let-values(((intern?_0) datum-intern?14_0))" -"(let-values()" -"(let-values(((init-i_0)" -"(if(bytes? orig-i_0)" -"(let-values()(mcons orig-i_0 0))" -"(if(input-port? orig-i_0)" -"(let-values() orig-i_0)" -"(let-values()" -" (raise-argument-error 'fasl->s-exp \"(or/c bytes? input-port?)\" orig-i_0))))))" -"(let-values((()" -"(begin" -"(if(bytes=?(read-bytes/exactly fasl-prefix-length init-i_0) fasl-prefix)" -"(void)" -" (let-values () (read-error \"unrecognized prefix\")))" -"(values))))" -"(let-values(((shared-count_0)(read-fasl-integer init-i_0)))" -"(let-values(((shared_0)(make-vector shared-count_0)))" -"(let-values(((len_0)(read-fasl-integer init-i_0)))" -"(let-values(((i_0)" -"(if(mpair? init-i_0)" -" init-i_0" -"(let-values(((bstr_0)(read-bytes/exactly len_0 init-i_0)))(mcons bstr_0 0)))))" -"(let-values(((intern_0)" -"(lambda(v_0)(begin 'intern(if intern?_0(datum-intern-literal v_0) v_0)))))" -"((letrec-values(((loop_0)" -"(lambda()" -"(begin" -" 'loop" -"(let-values(((type_0)(read-byte/no-eof i_0)))" -"(let-values(((tmp_0) type_0))" -"(let-values(((index_0)" -"(if(fixnum? tmp_0)" -"(if(if(unsafe-fx>= tmp_0 1)" -"(unsafe-fx< tmp_0 40)" -" #f)" -"(let-values(((tbl_0)" -" '#(1" -" 2" -" 3" -" 4" -" 5" -" 6" -" 7" -" 8" -" 9" -" 10" -" 12" -" 13" -" 14" -" 15" -" 16" -" 17" -" 18" -" 19" -" 20" -" 21" -" 22" -" 23" -" 24" -" 25" -" 26" -" 27" -" 28" -" 29" -" 31" -" 30" -" 32" -" 32" -" 33" -" 34" -" 35" -" 36" -" 37" -" 38" -" 11)))" -"(unsafe-vector*-ref tbl_0(unsafe-fx- tmp_0 1)))" -" 0)" -" 0)))" -"(if(unsafe-fx< index_0 19)" -"(if(unsafe-fx< index_0 9)" -"(if(unsafe-fx< index_0 4)" -"(if(unsafe-fx< index_0 1)" -"(let-values()" -"(if(>= type_0 fasl-small-integer-start)" -"(let-values()" -"(+" -"(- type_0 fasl-small-integer-start)" -" fasl-lowest-small-integer))" -"(let-values()" -" (read-error \"unrecognized fasl tag\" \"tag\" type_0))))" -"(if(unsafe-fx< index_0 2)" -"(let-values()" -"(let-values(((pos_0)(read-fasl-integer i_0)))" -"(let-values(((v_0)(loop_0)))" -"(begin" -"(if(< pos_0 shared-count_0)" -"(void)" -"(let-values()" -" (read-error \"bad graph index\")))" -"(vector-set! shared_0 pos_0 v_0)" -" v_0))))" -"(if(unsafe-fx< index_0 3)" -"(let-values()" -"(let-values(((pos_0)(read-fasl-integer i_0)))" -"(begin" -"(if(< pos_0 shared-count_0)" -"(void)" -"(let-values()" -" (read-error \"bad graph index\")))" -"(vector-ref shared_0 pos_0))))" -"(let-values() #f))))" -"(if(unsafe-fx< index_0 6)" -"(if(unsafe-fx< index_0 5)" -"(let-values() #t)" -"(let-values() null))" -"(if(unsafe-fx< index_0 7)" -"(let-values()(void))" -"(if(unsafe-fx< index_0 8)" -"(let-values() eof)" -"(let-values()(intern_0(read-fasl-integer i_0)))))))" -"(if(unsafe-fx< index_0 13)" -"(if(unsafe-fx< index_0 10)" -"(let-values()" -"(floating-point-bytes->real" -"(read-bytes/exactly 8 i_0)" -" #f))" -"(if(unsafe-fx< index_0 11)" -"(let-values()" -"(real->single-flonum" -"(floating-point-bytes->real" -"(read-bytes/exactly 4 i_0)" -" #f)))" -"(if(unsafe-fx< index_0 12)" -"(let-values()" -"(let-values(((bstr_0)" -"(read-bytes/exactly" -"(read-fasl-integer i_0)" -" i_0)))" -"(1/string->number" -"(bytes->string/utf-8 bstr_0)" -" 10" -" 'read)))" -"(let-values()(intern_0(/(loop_0)(loop_0)))))))" -"(if(unsafe-fx< index_0 15)" -"(if(unsafe-fx< index_0 14)" -"(let-values()" -"(intern_0(make-rectangular(loop_0)(loop_0))))" -"(let-values()" -"(intern_0(integer->char(read-fasl-integer i_0)))))" -"(if(unsafe-fx< index_0 16)" -"(let-values()(string->symbol(read-fasl-string i_0)))" -"(if(unsafe-fx< index_0 17)" -"(let-values()" -"(string->unreadable-symbol(read-fasl-string i_0)))" -"(if(unsafe-fx< index_0 18)" -"(let-values()" -"(string->uninterned-symbol" -"(read-fasl-string i_0)))" -"(let-values()" -"(string->keyword(read-fasl-string i_0)))))))))" -"(if(unsafe-fx< index_0 28)" -"(if(unsafe-fx< index_0 23)" -"(if(unsafe-fx< index_0 20)" -"(let-values()(read-fasl-string i_0))" -"(if(unsafe-fx< index_0 21)" -"(let-values()" -"(intern_0" -"(string->immutable-string(read-fasl-string i_0))))" -"(if(unsafe-fx< index_0 22)" -"(let-values()(read-fasl-bytes i_0))" -"(let-values()" -"(intern_0" -"(bytes->immutable-bytes(read-fasl-bytes i_0)))))))" -"(if(unsafe-fx< index_0 25)" -"(if(unsafe-fx< index_0 24)" -"(let-values()" -"(bytes->path(read-fasl-bytes i_0)(loop_0)))" -"(let-values()" -"(let-values(((wrt-dir_0)" -"(current-load-relative-directory)))" -"(let-values(((rel-elems_0)" -"(reverse$1" -"(let-values(((lst_0)(loop_0)))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-list lst_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0" -" lst_1)" -"(begin" -" 'for-loop" -"(if(pair?" -" lst_1)" -"(let-values(((p_0)" -"(unsafe-car" -" lst_1))" -"((rest_0)" -"(unsafe-cdr" -" lst_1)))" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -"(if(bytes?" -" p_0)" -"(bytes->path-element" -" p_0)" -" p_0))" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not" -" #f)" -"(for-loop_0" -" fold-var_1" -" rest_0)" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" lst_0))))))" -"(if wrt-dir_0" -"(let-values()" -"(apply build-path wrt-dir_0 rel-elems_0))" -"(if(null? rel-elems_0)" -"(let-values()(build-path 'same))" -"(let-values()" -"(apply build-path rel-elems_0))))))))" -"(if(unsafe-fx< index_0 26)" -"(let-values()" -"(intern_0(pregexp(read-fasl-string i_0))))" -"(if(unsafe-fx< index_0 27)" -"(let-values()" -"(intern_0(regexp(read-fasl-string i_0))))" -"(let-values()" -"(intern_0(byte-pregexp(read-fasl-bytes i_0))))))))" -"(if(unsafe-fx< index_0 33)" -"(if(unsafe-fx< index_0 30)" -"(if(unsafe-fx< index_0 29)" -"(let-values()" -"(intern_0(byte-regexp(read-fasl-bytes i_0))))" -"(let-values()" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"(reverse$1" -"(let-values(((start_0) 0)" -"((end_0) len_1)" -"((inc_0) 1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-range start_0 end_0 inc_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0 pos_0)" -"(begin" -" 'for-loop" -"(if(< pos_0 end_0)" -"(let-values()" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -"(loop_0))" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not #f)" -"(for-loop_0" -" fold-var_1" -"(+ pos_0 inc_0))" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" start_0)))))))" -"(if(unsafe-fx< index_0 31)" -"(let-values()(cons(loop_0)(loop_0)))" -"(if(unsafe-fx< index_0 32)" -"(let-values()" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"((letrec-values(((ploop_0)" -"(lambda(len_2)" -"(begin" -" 'ploop" -"(if(zero? len_2)" -"(loop_0)" -"(cons" -"(loop_0)" -"(ploop_0" -"(sub1 len_2))))))))" -" ploop_0)" -" len_1)))" -"(let-values()" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"(let-values(((vec_0)" -"(let-values(((len_2) len_1))" -"(begin" -"(if(exact-nonnegative-integer?" -" len_2)" -"(void)" -"(let-values()" -"(raise-argument-error" -" 'for/vector" -" \"exact-nonnegative-integer?\"" -" len_2)))" -"(let-values(((v_0)" -"(make-vector" -" len_2" -" 0)))" -"(begin" -"(if(zero? len_2)" -"(void)" -"(let-values()" -"(let-values(((start_0)" -" 0)" -"((end_0)" -" len_1)" -"((inc_0)" -" 1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-range" -" start_0" -" end_0" -" inc_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(i_1" -" pos_0)" -"(begin" -" 'for-loop" -"(if(<" -" pos_0" -" end_0)" -"(let-values(((j_0)" -" pos_0))" -"(let-values(((i_2)" -"(let-values(((i_2)" -" i_1))" -"(let-values(((i_3)" -"(let-values()" -"(begin" -"(unsafe-vector*-set!" -" v_0" -" i_2" -"(let-values()" -"(loop_0)))" -"(unsafe-fx+" -" 1" -" i_2)))))" -"(values" -" i_3)))))" -"(if(if(not" -"((lambda x_0" -"(unsafe-fx=" -" i_2" -" len_2))" -" j_0))" -"(not" -" #f)" -" #f)" -"(for-loop_0" -" i_2" -"(+" -" pos_0" -" inc_0))" -" i_2)))" -" i_1)))))" -" for-loop_0)" -" 0" -" start_0)))))" -" v_0))))))" -"(if(eqv? type_0 fasl-immutable-vector-type)" -"(vector->immutable-vector vec_0)" -" vec_0)))))))" -"(if(unsafe-fx< index_0 35)" -"(if(unsafe-fx< index_0 34)" -"(let-values()(box(loop_0)))" -"(let-values()(box-immutable(loop_0))))" -"(if(unsafe-fx< index_0 36)" -"(let-values()" -"(let-values(((key_0)(loop_0)))" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"(apply" -" make-prefab-struct" -" key_0" -"(reverse$1" -"(let-values(((start_0) 0)" -"((end_0) len_1)" -"((inc_0) 1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-range start_0 end_0 inc_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(fold-var_0 pos_0)" -"(begin" -" 'for-loop" -"(if(< pos_0 end_0)" -"(let-values()" -"(let-values(((fold-var_1)" -"(let-values(((fold-var_1)" -" fold-var_0))" -"(let-values(((fold-var_2)" -"(let-values()" -"(cons" -"(let-values()" -"(loop_0))" -" fold-var_1))))" -"(values" -" fold-var_2)))))" -"(if(not #f)" -"(for-loop_0" -" fold-var_1" -"(+" -" pos_0" -" inc_0))" -" fold-var_1)))" -" fold-var_0)))))" -" for-loop_0)" -" null" -" start_0))))))))" -"(if(unsafe-fx< index_0 37)" -"(let-values()" -"(let-values(((ht_0)" -"(let-values(((tmp_1)" -"(read-byte/no-eof i_0)))" -"(if(equal? tmp_1 0)" -"(let-values()(make-hasheq))" -"(if(equal? tmp_1 2)" -"(let-values()(make-hasheqv))" -"(let-values()(make-hash)))))))" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"(begin" -"(let-values(((start_0) 0)" -"((end_0) len_1)" -"((inc_0) 1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-range start_0 end_0 inc_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(pos_0)" -"(begin" -" 'for-loop" -"(if(< pos_0 end_0)" -"(let-values()" -"(let-values((()" -"(let-values()" -"(let-values((()" -"(let-values()" -"(begin" -"(let-values()" -"(hash-set!" -" ht_0" -"(loop_0)" -"(loop_0)))" -"(values)))))" -"(values)))))" -"(if(not #f)" -"(for-loop_0" -"(+" -" pos_0" -" inc_0))" -"(values))))" -"(values))))))" -" for-loop_0)" -" start_0)))" -"(void)" -" ht_0))))" -"(if(unsafe-fx< index_0 38)" -"(let-values()" -"(let-values(((ht_0)" -"(let-values(((tmp_1)" -"(read-byte/no-eof" -" i_0)))" -"(if(equal? tmp_1 0)" -"(let-values() '#hasheq())" -"(if(equal? tmp_1 2)" -"(let-values() '#hasheqv())" -"(let-values() '#hash()))))))" -"(let-values(((len_1)(read-fasl-integer i_0)))" -"(let-values(((start_0) 0)" -"((end_0) len_1)" -"((inc_0) 1))" -"(begin" -"(if(variable-reference-from-unsafe?" -"(#%variable-reference))" -"(void)" -"(let-values()" -"(check-range start_0 end_0 inc_0)))" -"((letrec-values(((for-loop_0)" -"(lambda(ht_1 pos_0)" -"(begin" -" 'for-loop" -"(if(< pos_0 end_0)" -"(let-values()" -"(let-values(((ht_2)" -"(let-values(((ht_2)" -" ht_1))" -"(let-values(((ht_3)" -"(let-values()" -"(hash-set" -" ht_2" -"(loop_0)" -"(loop_0)))))" -"(values" -" ht_3)))))" -"(if(not #f)" -"(for-loop_0" -" ht_2" -"(+" -" pos_0" -" inc_0))" -" ht_2)))" -" ht_1)))))" -" for-loop_0)" -" ht_0" -" start_0))))))" -"(let-values()" -"(srcloc" -"(loop_0)" -"(loop_0)" -"(loop_0)" -"(loop_0)" -"(loop_0)))))))))))))))))" -" loop_0)))))))))))))))" -"(define-values" -"(write-fasl-integer)" -"(lambda(i_0 o_0)" -"(begin" -"(if(<= -124 i_0 127)" -"(let-values()(if(negative? i_0)(1/write-byte(+ i_0 256) o_0)(1/write-byte i_0 o_0)))" -"(if(<= -32768 i_0 32767)" -"(let-values()(begin(1/write-byte 128 o_0)(1/write-bytes(integer->integer-bytes i_0 2 #t #f) o_0)))" -"(if(<= -2147483648 i_0 2147483647)" -"(let-values()(begin(1/write-byte 129 o_0)(1/write-bytes(integer->integer-bytes i_0 4 #t #f) o_0)))" -"(if(<= -9223372036854775808 i_0 9223372036854775807)" -"(let-values()(begin(1/write-byte 130 o_0)(1/write-bytes(integer->integer-bytes i_0 8 #t #f) o_0)))" -"(let-values()" -"(let-values((()(begin(1/write-byte 131 o_0)(values))))" -" (let-values (((s_0) (format \"~x\" i_0)))" -"(begin(write-fasl-integer(string-length s_0) o_0)(write-string s_0 o_0))))))))))))" -"(define-values" -"(write-fasl-string)" -"(lambda(v_0 o_0)" -"(begin" -"(let-values(((bstr_0)(string->bytes/utf-8 v_0)))" -"(begin(write-fasl-integer(bytes-length bstr_0) o_0)(1/write-bytes bstr_0 o_0))))))" -"(define-values" -"(write-fasl-bytes)" -"(lambda(v_0 o_0)(begin(begin(write-fasl-integer(bytes-length v_0) o_0)(1/write-bytes v_0 o_0)))))" -"(define-values" -"(read-error)" -"(lambda(s_0 . args_0)" -" (begin (apply raise-arguments-error 'fasl-read (string-append \"error parsing fasl stream;\\n\" \" \" s_0) args_0))))" -"(define-values" -"(read-byte/no-eof)" -"(lambda(i_0)" -"(begin" -"(if(mpair? i_0)" -"(let-values()" -"(let-values(((pos_0)(mcdr i_0)))" -"(begin" -" (if (< pos_0 (bytes-length (mcar i_0))) (void) (let-values () (read-error \"truncated stream\")))" -"(set-mcdr! i_0(add1 pos_0))" -"(bytes-ref(mcar i_0) pos_0))))" -"(let-values()" -"(let-values(((b_0)(read-byte i_0)))" -" (begin (if (eof-object? b_0) (let-values () (read-error \"truncated stream\")) (void)) b_0)))))))" -"(define-values" -"(read-bytes/exactly)" -"(lambda(n_0 i_0)" -"(begin" -"(if(mpair? i_0)" -"(let-values()" -"(let-values(((pos_0)(mcdr i_0)))" -"(begin" -" (if (<= (+ pos_0 n_0) (bytes-length (mcar i_0))) (void) (let-values () (read-error \"truncated stream\")))" -"(set-mcdr! i_0(+ pos_0 n_0))" -"(subbytes(mcar i_0) pos_0(+ pos_0 n_0)))))" -"(let-values()" -"(let-values(((bstr_0)(read-bytes n_0 i_0)))" -"(begin" -"(if(if(bytes? bstr_0)(= n_0(bytes-length bstr_0)) #f)" -"(void)" -" (let-values () (read-error \"truncated stream\")))" -" bstr_0)))))))" -"(define-values" -"(read-fasl-integer)" -"(lambda(i_0)" -"(begin" -"(let-values(((b_0)(read-byte/no-eof i_0)))" -"(if(<= b_0 127)" -"(let-values() b_0)" -"(if(>= b_0 132)" -"(let-values()(- b_0 256))" -"(if(eqv? b_0 128)" -"(let-values()(integer-bytes->integer(read-bytes/exactly 2 i_0) #t #f))" -"(if(eqv? b_0 129)" -"(let-values()(integer-bytes->integer(read-bytes/exactly 4 i_0) #t #f))" -"(if(eqv? b_0 130)" -"(let-values()(integer-bytes->integer(read-bytes/exactly 8 i_0) #t #f))" -"(if(eqv? b_0 131)" -"(let-values()" -"(let-values(((len_0)(read-fasl-integer i_0)))" -"(let-values(((str_0)(read-fasl-string i_0 len_0)))" -"(begin" -"(if(if(string? str_0)(= len_0(string-length str_0)) #f)" -"(void)" -" (let-values () (read-error \"truncated stream at number\")))" -"(1/string->number str_0 16)))))" -" (let-values () (read-error \"internal error on integer mode\"))))))))))))" -"(define-values" -"(read-fasl-string)" -"(let-values(((read-fasl-string22_0)" -"(lambda(i21_0 len20_0)" -"(begin" -" 'read-fasl-string22" -"(let-values(((i_0) i21_0))" -"(let-values(((len_0)(if(eq? len20_0 unsafe-undefined)(read-fasl-integer i_0) len20_0)))" -"(let-values()" -"(let-values(((bstr_0)(read-bytes/exactly len_0 i_0)))(bytes->string/utf-8 bstr_0)))))))))" -"(case-lambda" -"((i_0)(begin(read-fasl-string22_0 i_0 unsafe-undefined)))" -"((i_0 len20_0)(read-fasl-string22_0 i_0 len20_0)))))" -"(define-values" -"(read-fasl-bytes)" -"(lambda(i_0)(begin(let-values(((len_0)(read-fasl-integer i_0)))(read-bytes/exactly len_0 i_0)))))" -"(define-values" -"(1/fasl->s-exp/intern)" -"(lambda(s_0)(begin 'fasl->s-exp/intern(let-values(((s1_0) s_0)((temp2_0) #t))(fasl->s-exp17.1 temp2_0 s1_0)))))" "(define-values(start-atomic)(lambda()(begin(unsafe-start-atomic))))" "(define-values(end-atomic)(lambda()(begin(unsafe-end-atomic))))" "(define-values(start-breakable-atomic)(lambda()(begin(unsafe-start-breakable-atomic))))" @@ -19708,6 +17862,1852 @@ static const char *startup_source = " lazy-syntax-literals?_0" " #f))))))))))))" "(define-values" +"(truncate-path)" +"(lambda(p_0)" +"(begin" +"(let-values(((base1_0 name1_0 dir?_0)(split-path p_0)))" +"(if(path-for-some-system? base1_0)" +"(let-values()" +"(let-values(((base2_0 name2_0 dir?_1)(split-path base1_0)))" +"(if(not base2_0)" +"(let-values()(path-for-some-system->string p_0))" +"(if(symbol? name2_0)" +" (let-values () (string-append \".../\" (path-elem->string name1_0)))" +"(let-values()" +" (string-append \".../\" (path-for-some-system->string name2_0) \"/\" (path-elem->string name1_0)))))))" +"(if(eq? base1_0 'relative)" +"(let-values()(path-elem->string name1_0))" +"(let-values()(path-for-some-system->string p_0))))))))" +"(define-values" +"(path-elem->string)" +"(lambda(p_0)" +"(begin" +"(if(eq? p_0 'same)" +" (let-values () \".\")" +" (if (eq? p_0 'up) (let-values () \"..\") (let-values () (path-for-some-system->string p_0)))))))" +"(define-values" +"(path-for-some-system->string)" +"(lambda(p_0)" +"(begin" +"(if(path? p_0)" +"(let-values()(path->string p_0))" +"(let-values()(bytes->string/utf-8(path->bytes p_0) '#\\�))))))" +"(define-values" +"(make-path->relative-path-elements4.1)" +"(lambda(who1_0 wr-dir3_0)" +"(begin" +" 'make-path->relative-path-elements4" +"(let-values(((wr-dir_0)(if(eq? wr-dir3_0 unsafe-undefined)(current-write-relative-directory) wr-dir3_0)))" +"(let-values(((who_0) who1_0))" +"(let-values()" +"(begin" +"(if who_0" +"(let-values()" +"(if(let-values(((or-part_0)(not wr-dir_0)))" +"(if or-part_0" +" or-part_0" +"(let-values(((or-part_1)(if(path-string? wr-dir_0)(complete-path? wr-dir_0) #f)))" +"(if or-part_1" +" or-part_1" +"(if(pair? wr-dir_0)" +"(if(path-string?(car wr-dir_0))" +"(if(complete-path?(car wr-dir_0))" +"(if(path-string?(cdr wr-dir_0))(complete-path?(cdr wr-dir_0)) #f)" +" #f)" +" #f)" +" #f)))))" +"(void)" +"(let-values()" +"(raise-argument-error" +" who_0" +"(string-append" +" \"(or/c (and/c path-string? complete-path?)\\n\"" +" \" (cons/c (and/c path-string? complete-path?)\\n\"" +" \" (and/c path-string? complete-path?))\\n\"" +" \" #f)\")" +" wr-dir_0))))" +"(void))" +"(if(not wr-dir_0)" +"(let-values()(lambda(v_0) #f))" +"(let-values()" +"(let-values(((exploded-base-dir_0) 'not-ready))" +"(let-values(((exploded-wrt-rel-dir_0) 'not-ready))" +"(lambda(v_0)" +"(begin" +"(if(if(eq? exploded-base-dir_0 'not-ready)(path? v_0) #f)" +"(let-values()" +"(let-values(((wrt-dir_0)(if wr-dir_0(if(pair? wr-dir_0)(car wr-dir_0) wr-dir_0) #f)))" +"(let-values(((exploded-wrt-dir_0)(explode-path wrt-dir_0)))" +"(let-values(((base-dir_0)" +"(if wr-dir_0(if(pair? wr-dir_0)(cdr wr-dir_0) wr-dir_0) #f)))" +"(begin" +"(set! exploded-base-dir_0(if base-dir_0(explode-path base-dir_0) #f))" +"(set! exploded-wrt-rel-dir_0" +"(if(eq? base-dir_0 wrt-dir_0)" +"(let-values() '())" +"(let-values()" +"(let-values(((exploded-wrt-dir_1)(explode-path wrt-dir_0)))" +"(let-values(((base-len_0)(length exploded-base-dir_0)))" +"(begin" +"(if who_0" +"(let-values()" +"(if(if(>=(length exploded-wrt-dir_1) base-len_0)" +"(let-values(((lst_0) exploded-wrt-dir_1)" +"((lst_1) exploded-base-dir_0))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_0)))" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_1)))" +"((letrec-values(((for-loop_0)" +"(lambda(result_0 lst_2 lst_3)" +"(begin" +" 'for-loop" +"(if(if(pair? lst_2)" +"(pair? lst_3)" +" #f)" +"(let-values(((a_0)" +"(unsafe-car" +" lst_2))" +"((rest_0)" +"(unsafe-cdr" +" lst_2))" +"((b_0)" +"(unsafe-car" +" lst_3))" +"((rest_1)" +"(unsafe-cdr" +" lst_3)))" +"(let-values(((result_1)" +"(let-values()" +"(let-values(((result_1)" +"(let-values()" +"(let-values()" +"(equal?" +" a_0" +" b_0)))))" +"(values" +" result_1)))))" +"(if(if(not" +"((lambda x_0" +"(not result_1))" +" a_0))" +"(if(not" +"((lambda x_0" +"(not" +" result_1))" +" b_0))" +"(not #f)" +" #f)" +" #f)" +"(for-loop_0" +" result_1" +" rest_0" +" rest_1)" +" result_1)))" +" result_0)))))" +" for-loop_0)" +" #t" +" lst_0" +" lst_1)))" +" #f)" +"(void)" +"(let-values()" +"(raise-arguments-error" +" who_0" +" \"relative-directory pair's first path does not extend second path\"" +" \"first path\"" +" wrt-dir_0" +" \"second path\"" +" base-dir_0))))" +"(void))" +"(list-tail exploded-wrt-dir_1 base-len_0))))))))))))" +"(void))" +"(if exploded-base-dir_0" +"(if(path? v_0)" +"(let-values(((exploded_0)(explode-path v_0)))" +"(if(let-values(((lst_0) exploded-base-dir_0)((lst_1) exploded_0))" +"(begin" +"(if(variable-reference-from-unsafe?(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_0)))" +"(if(variable-reference-from-unsafe?(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_1)))" +"((letrec-values(((for-loop_0)" +"(lambda(result_0 lst_2 lst_3)" +"(begin" +" 'for-loop" +"(if(if(pair? lst_2)(pair? lst_3) #f)" +"(let-values(((base-p_0)(unsafe-car lst_2))" +"((rest_0)(unsafe-cdr lst_2))" +"((p_0)(unsafe-car lst_3))" +"((rest_1)(unsafe-cdr lst_3)))" +"(let-values(((result_1)" +"(let-values()" +"(let-values(((result_1)" +"(let-values()" +"(let-values()" +"(equal?" +" base-p_0" +" p_0)))))" +"(values result_1)))))" +"(if(if(not((lambda x_0(not result_1)) base-p_0))" +"(if(not((lambda x_0(not result_1)) p_0))" +"(not #f)" +" #f)" +" #f)" +"(for-loop_0 result_1 rest_0 rest_1)" +" result_1)))" +" result_0)))))" +" for-loop_0)" +" #t" +" lst_0" +" lst_1)))" +"(if(>=(length exploded_0)(length exploded-base-dir_0))" +"((letrec-values(((loop_0)" +"(lambda(exploded-wrt-rel-dir_1 rel_0)" +"(begin" +" 'loop" +"(if(null? exploded-wrt-rel-dir_1)" +"(let-values()" +"(reverse$1" +"(let-values(((lst_0) rel_0))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0 lst_1)" +"(begin" +" 'for-loop" +"(if(pair? lst_1)" +"(let-values(((p_0)" +"(unsafe-car" +" lst_1))" +"((rest_0)" +"(unsafe-cdr" +" lst_1)))" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +"(if(path?" +" p_0)" +"(path-element->bytes" +" p_0)" +" p_0))" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not #f)" +"(for-loop_0" +" fold-var_1" +" rest_0)" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" lst_0)))))" +"(if(if(pair? rel_0)" +"(equal?(car rel_0)(car exploded-wrt-rel-dir_1))" +" #f)" +"(let-values()" +"(loop_0(cdr exploded-wrt-rel-dir_1)(cdr rel_0)))" +"(let-values()" +"(append" +"(reverse$1" +"(let-values(((lst_0) exploded-wrt-rel-dir_1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0 lst_1)" +"(begin" +" 'for-loop" +"(if(pair? lst_1)" +"(let-values(((p_0)" +"(unsafe-car" +" lst_1))" +"((rest_0)" +"(unsafe-cdr" +" lst_1)))" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +" 'up)" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not #f)" +"(for-loop_0" +" fold-var_1" +" rest_0)" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" lst_0))))" +"(reverse$1" +"(let-values(((lst_0) rel_0))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()(check-list lst_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0 lst_1)" +"(begin" +" 'for-loop" +"(if(pair? lst_1)" +"(let-values(((p_0)" +"(unsafe-car" +" lst_1))" +"((rest_0)" +"(unsafe-cdr" +" lst_1)))" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +"(if(path?" +" p_0)" +"(path-element->bytes" +" p_0)" +" p_0))" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not #f)" +"(for-loop_0" +" fold-var_1" +" rest_0)" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" lst_0))))))))))))" +" loop_0)" +" exploded-wrt-rel-dir_0" +"(list-tail exploded_0(length exploded-base-dir_0)))" +" #f)" +" #f))" +" #f)" +" #f))))))))))))))" +"(define-values(1/write-byte)(lambda(byte_0 out_0)(begin 'write-byte(write-byte byte_0 out_0))))" +"(define-values" +"(1/write-bytes)" +"(let-values(((write-bytes5_0)" +"(lambda(bstr3_0 out4_0 start-pos1_0 end-pos2_0)" +"(begin" +" 'write-bytes5" +"(let-values(((bstr_0) bstr3_0))" +"(let-values(((out_0) out4_0))" +"(let-values(((start-pos_0) start-pos1_0))" +"(let-values(((end-pos_0)" +"(if(eq? end-pos2_0 unsafe-undefined)(bytes-length bstr_0) end-pos2_0)))" +"(let-values()(write-bytes bstr_0 out_0 start-pos_0 end-pos_0))))))))))" +"(case-lambda" +"((bstr_0 out_0)(begin 'write-bytes(write-bytes5_0 bstr_0 out_0 0 unsafe-undefined)))" +"((bstr_0 out_0 start-pos_0 end-pos2_0)(write-bytes5_0 bstr_0 out_0 start-pos_0 end-pos2_0))" +"((bstr_0 out_0 start-pos1_0)(write-bytes5_0 bstr_0 out_0 start-pos1_0 unsafe-undefined)))))" +"(define-values(fasl-graph-def-type) 1)" +"(define-values(fasl-graph-ref-type) 2)" +"(define-values(fasl-false-type) 3)" +"(define-values(fasl-true-type) 4)" +"(define-values(fasl-null-type) 5)" +"(define-values(fasl-void-type) 6)" +"(define-values(fasl-eof-type) 7)" +"(define-values(fasl-integer-type) 8)" +"(define-values(fasl-flonum-type) 9)" +"(define-values(fasl-single-flonum-type) 10)" +"(define-values(fasl-rational-type) 11)" +"(define-values(fasl-complex-type) 12)" +"(define-values(fasl-char-type) 13)" +"(define-values(fasl-symbol-type) 14)" +"(define-values(fasl-unreadable-symbol-type) 15)" +"(define-values(fasl-uninterned-symbol-type) 16)" +"(define-values(fasl-keyword-type) 17)" +"(define-values(fasl-string-type) 18)" +"(define-values(fasl-immutable-string-type) 19)" +"(define-values(fasl-bytes-type) 20)" +"(define-values(fasl-immutable-bytes-type) 21)" +"(define-values(fasl-path-type) 22)" +"(define-values(fasl-relative-path-type) 23)" +"(define-values(fasl-pregexp-type) 24)" +"(define-values(fasl-regexp-type) 25)" +"(define-values(fasl-byte-pregexp-type) 26)" +"(define-values(fasl-byte-regexp-type) 27)" +"(define-values(fasl-list-type) 28)" +"(define-values(fasl-list*-type) 29)" +"(define-values(fasl-pair-type) 30)" +"(define-values(fasl-vector-type) 31)" +"(define-values(fasl-immutable-vector-type) 32)" +"(define-values(fasl-box-type) 33)" +"(define-values(fasl-immutable-box-type) 34)" +"(define-values(fasl-prefab-type) 35)" +"(define-values(fasl-hash-type) 36)" +"(define-values(fasl-immutable-hash-type) 37)" +"(define-values(fasl-srcloc) 38)" +"(define-values(fasl-extflonum-type) 39)" +"(define-values(fasl-small-integer-start) 100)" +"(define-values(fasl-lowest-small-integer) -10)" +"(define-values(fasl-highest-small-integer)(- 255(- fasl-small-integer-start fasl-lowest-small-integer) 1))" +" (define-values (fasl-prefix) #\"racket/fasl:\")" +"(define-values(fasl-prefix-length)(bytes-length fasl-prefix))" +"(define-values(fasl-hash-eq-variant) 0)" +"(define-values(fasl-hash-equal-variant) 1)" +"(define-values(fasl-hash-eqv-variant) 2)" +"(define-values" +"(s-exp->fasl11.1)" +"(lambda(keep-mutable?7_0 v10_0 orig-o9_0)" +"(begin" +" 's-exp->fasl11" +"(let-values(((v_0) v10_0))" +"(let-values(((orig-o_0) orig-o9_0))" +"(let-values(((keep-mutable?_0) keep-mutable?7_0))" +"(let-values()" +"(let-values((()" +"(begin" +"(if orig-o_0" +"(let-values()" +"(if(output-port? orig-o_0)" +"(void)" +"(let-values()" +" (raise-argument-error 'fasl->s-exp \"(or/c output-port? #f)\" orig-o_0))))" +"(void))" +"(values))))" +"(let-values(((o_0)(let-values(((or-part_0) orig-o_0))(if or-part_0 or-part_0(open-output-bytes)))))" +"(let-values(((shared_0)(make-hasheq)))" +"(let-values(((shared-counter_0) 0))" +"(let-values((()" +"(begin" +"((letrec-values(((loop_0)" +"(lambda(v_1)" +"(begin" +" 'loop" +"(if(let-values(((or-part_0)(symbol? v_1)))" +"(if or-part_0" +" or-part_0" +"(let-values(((or-part_1)(keyword? v_1)))" +"(if or-part_1" +" or-part_1" +"(let-values(((or-part_2)(string? v_1)))" +"(if or-part_2" +" or-part_2" +"(let-values(((or-part_3)(bytes? v_1)))" +"(if or-part_3" +" or-part_3" +"(path? v_1)))))))))" +"(let-values()(hash-update! shared_0 v_1 add1 0))" +"(if(pair? v_1)" +"(let-values()" +"(begin(loop_0(car v_1))(loop_0(cdr v_1))))" +"(if(vector? v_1)" +"(let-values()" +"(begin" +"(let-values(((vec_0 len_0)" +"(let-values(((vec_0) v_1))" +"(begin" +"(check-vector vec_0)" +"(values" +" vec_0" +"(unsafe-vector-length" +" vec_0))))))" +"(begin" +" #f" +"((letrec-values(((for-loop_0)" +"(lambda(pos_0)" +"(begin" +" 'for-loop" +"(if(unsafe-fx<" +" pos_0" +" len_0)" +"(let-values(((e_0)" +"(unsafe-vector-ref" +" vec_0" +" pos_0)))" +"(let-values((()" +"(let-values()" +"(let-values((()" +"(let-values()" +"(begin" +"(let-values()" +"(loop_0" +" e_0))" +"(values)))))" +"(values)))))" +"(if(not #f)" +"(for-loop_0" +"(unsafe-fx+" +" 1" +" pos_0))" +"(values))))" +"(values))))))" +" for-loop_0)" +" 0)))" +"(void)))" +"(if(hash? v_1)" +"(let-values()" +"(hash-for-each" +" v_1" +"(lambda(k_0 v_2)" +"(begin(loop_0 k_0)(loop_0 v_2)))" +" #t))" +"(if(box? v_1)" +"(let-values()(loop_0(unbox v_1)))" +"(let-values(((c1_0)(prefab-struct-key v_1)))" +"(if c1_0" +"((lambda(k_0)" +"(begin" +"(loop_0 k_0)" +"(let-values(((v*_0" +" start*_0" +" stop*_0" +" step*_0)" +"(normalise-inputs" +" 'in-vector" +" \"vector\"" +"(lambda(x_0)" +"(vector? x_0))" +"(lambda(x_0)" +"(unsafe-vector-length" +" x_0))" +"(struct->vector v_1)" +" 1" +" #f" +" 1)))" +"(begin" +" #t" +"((letrec-values(((for-loop_0)" +"(lambda(idx_0)" +"(begin" +" 'for-loop" +"(if(unsafe-fx<" +" idx_0" +" stop*_0)" +"(let-values(((e_0)" +"(unsafe-vector-ref" +" v*_0" +" idx_0)))" +"(let-values((()" +"(let-values()" +"(let-values((()" +"(let-values()" +"(begin" +"(let-values()" +"(loop_0" +" e_0))" +"(values)))))" +"(values)))))" +"(if(not" +" #f)" +"(for-loop_0" +"(unsafe-fx+" +" idx_0" +" 1))" +"(values))))" +"(values))))))" +" for-loop_0)" +" start*_0)))" +"(void)))" +" c1_0)" +"(let-values()(void)))))))))))))" +" loop_0)" +" v_0)" +"(values))))" +"(let-values(((treat-immutable?_0)" +"(lambda(v_1)" +"(begin" +" 'treat-immutable?" +"(let-values(((or-part_0)(not keep-mutable?_0)))" +"(if or-part_0 or-part_0(immutable? v_1)))))))" +"(let-values(((path->relative-path-elements_0)" +"(let-values()(make-path->relative-path-elements4.1 #f unsafe-undefined))))" +"(let-values((()(begin(1/write-bytes fasl-prefix o_0)(values))))" +"(let-values(((bstr_0)" +"(let-values(((o_1)(open-output-bytes)))" +"(begin" +"((letrec-values(((loop_0)" +"(lambda(v_1)" +"(begin" +" 'loop" +"(if(not(eq?(hash-ref shared_0 v_1 1) 1))" +"(let-values()" +"(let-values(((c_0)(hash-ref shared_0 v_1)))" +"(if(negative? c_0)" +"(let-values()" +"(begin" +"(1/write-byte fasl-graph-ref-type o_1)" +"(write-fasl-integer" +"(sub1(- c_0))" +" o_1)))" +"(let-values()" +"(let-values(((pos_0) shared-counter_0))" +"(begin" +"(set! shared-counter_0" +"(add1 shared-counter_0))" +"(1/write-byte" +" fasl-graph-def-type" +" o_1)" +"(write-fasl-integer pos_0 o_1)" +"(hash-remove! shared_0 v_1)" +"(loop_0 v_1)" +"(hash-set!" +" shared_0" +" v_1" +"(-(add1 pos_0)))))))))" +"(if(not v_1)" +"(let-values()" +"(1/write-byte fasl-false-type o_1))" +"(if(eq? v_1 #t)" +"(let-values()" +"(1/write-byte fasl-true-type o_1))" +"(if(null? v_1)" +"(let-values()" +"(1/write-byte fasl-null-type o_1))" +"(if(void? v_1)" +"(let-values()" +"(1/write-byte fasl-void-type o_1))" +"(if(eof-object? v_1)" +"(let-values()" +"(1/write-byte fasl-eof-type o_1))" +"(if(exact-integer? v_1)" +"(let-values()" +"(if(<=" +" fasl-lowest-small-integer" +" v_1" +" fasl-highest-small-integer)" +"(let-values()" +"(1/write-byte" +"(+" +" fasl-small-integer-start" +"(-" +" v_1" +" fasl-lowest-small-integer))" +" o_1))" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-integer-type" +" o_1)" +"(write-fasl-integer" +" v_1" +" o_1)))))" +"(if(flonum? v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-flonum-type" +" o_1)" +"(1/write-bytes" +"(if(eqv? v_1 +nan.0)" +" #\"\\0\\0\\0\\0\\0\\0\\370\\177\"" +"(real->floating-point-bytes" +" v_1" +" 8" +" #f))" +" o_1)))" +"(if(single-flonum? v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-single-flonum-type" +" o_1)" +"(1/write-bytes" +"(if(eqv? v_1 +nan.f)" +" #\"\\0\\0\\300\\177\"" +"(real->floating-point-bytes" +" v_1" +" 4" +" #f))" +" o_1)))" +"(if(extflonum? v_1)" +"(let-values()" +"(let-values((()" +"(begin" +"(1/write-byte" +" fasl-extflonum-type" +" o_1)" +"(values))))" +"(let-values(((bstr_0)" +"(string->bytes/utf-8" +"(format" +" \"~a\"" +" v_1))))" +"(begin" +"(write-fasl-integer" +"(bytes-length bstr_0)" +" o_1)" +"(1/write-bytes" +" bstr_0" +" o_1)))))" +"(if(rational? v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-rational-type" +" o_1)" +"(loop_0(numerator v_1))" +"(loop_0" +"(denominator v_1))))" +"(if(complex? v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-complex-type" +" o_1)" +"(loop_0" +"(real-part v_1))" +"(loop_0" +"(imag-part v_1))))" +"(if(char? v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-char-type" +" o_1)" +"(write-fasl-integer" +"(char->integer v_1)" +" o_1)))" +"(if(symbol? v_1)" +"(let-values()" +"(let-values((()" +"(begin" +"(if(symbol-interned?" +" v_1)" +"(let-values()" +"(1/write-byte" +" fasl-symbol-type" +" o_1))" +"(if(symbol-unreadable?" +" v_1)" +"(let-values()" +"(1/write-byte" +" fasl-unreadable-symbol-type" +" o_1))" +"(let-values()" +"(1/write-byte" +" fasl-uninterned-symbol-type" +" o_1))))" +"(values))))" +"(let-values(((bstr_0)" +"(string->bytes/utf-8" +"(symbol->string" +" v_1))))" +"(begin" +"(write-fasl-integer" +"(bytes-length" +" bstr_0)" +" o_1)" +"(1/write-bytes" +" bstr_0" +" o_1)))))" +"(if(keyword? v_1)" +"(let-values()" +"(let-values((()" +"(begin" +"(1/write-byte" +" fasl-keyword-type" +" o_1)" +"(values))))" +"(let-values(((bstr_0)" +"(string->bytes/utf-8" +"(keyword->string" +" v_1))))" +"(begin" +"(write-fasl-integer" +"(bytes-length" +" bstr_0)" +" o_1)" +"(1/write-bytes" +" bstr_0" +" o_1)))))" +"(if(string? v_1)" +"(let-values()" +"(begin" +"(write-fasl-integer" +"(if(treat-immutable?_0" +" v_1)" +" fasl-immutable-string-type" +" fasl-string-type)" +" o_1)" +"(write-fasl-string" +" v_1" +" o_1)))" +"(if(bytes? v_1)" +"(let-values()" +"(begin" +"(write-fasl-integer" +"(if(treat-immutable?_0" +" v_1)" +" fasl-immutable-bytes-type" +" fasl-bytes-type)" +" o_1)" +"(write-fasl-bytes" +" v_1" +" o_1)))" +"(if(path-for-some-system?" +" v_1)" +"(let-values()" +"(let-values(((rel-elems_0)" +"(path->relative-path-elements_0" +" v_1)))" +"(if rel-elems_0" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-relative-path-type" +" o_1)" +"(loop_0" +" rel-elems_0)))" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-path-type" +" o_1)" +"(write-fasl-bytes" +"(path->bytes" +" v_1)" +" o_1)" +"(loop_0" +"(path-convention-type" +" v_1)))))))" +"(if(if(srcloc?" +" v_1)" +"(let-values(((src_0)" +"(srcloc-source" +" v_1)))" +"(let-values(((or-part_0)" +"(not" +" src_0)))" +"(if or-part_0" +" or-part_0" +"(let-values(((or-part_1)" +"(path-for-some-system?" +" src_0)))" +"(if or-part_1" +" or-part_1" +"(let-values(((or-part_2)" +"(string?" +" src_0)))" +"(if or-part_2" +" or-part_2" +"(let-values(((or-part_3)" +"(bytes?" +" src_0)))" +"(if or-part_3" +" or-part_3" +"(symbol?" +" src_0))))))))))" +" #f)" +"(let-values()" +"(let-values(((src_0)" +"(srcloc-source" +" v_1)))" +"(let-values(((new-src_0)" +"(if(if(path?" +" src_0)" +"(not" +"(path->relative-path-elements_0" +" src_0))" +" #f)" +"(let-values()" +"(truncate-path" +" src_0))" +"(let-values()" +" src_0))))" +"(begin" +"(write-fasl-integer" +" fasl-srcloc" +" o_1)" +"(loop_0" +" new-src_0)" +"(loop_0" +"(srcloc-line" +" v_1))" +"(loop_0" +"(srcloc-column" +" v_1))" +"(loop_0" +"(srcloc-position" +" v_1))" +"(loop_0" +"(srcloc-span" +" v_1))))))" +"(if(pair?" +" v_1)" +"(let-values()" +"(if(pair?" +"(cdr" +" v_1))" +"(let-values()" +"(let-values(((n_0" +" normal-list?_0)" +"((letrec-values(((loop_1)" +"(lambda(v_2" +" len_0)" +"(begin" +" 'loop" +"(if(null?" +" v_2)" +"(let-values()" +"(values" +" len_0" +" #t))" +"(if(pair?" +" v_2)" +"(let-values()" +"(loop_1" +"(cdr" +" v_2)" +"(add1" +" len_0)))" +"(let-values()" +"(values" +" len_0" +" #f))))))))" +" loop_1)" +" v_1" +" 0)))" +"(begin" +"(1/write-byte" +"(if normal-list?_0" +" fasl-list-type" +" fasl-list*-type)" +" o_1)" +"(write-fasl-integer" +" n_0" +" o_1)" +"((letrec-values(((ploop_0)" +"(lambda(v_2)" +"(begin" +" 'ploop" +"(if(pair?" +" v_2)" +"(let-values()" +"(begin" +"(loop_0" +"(car" +" v_2))" +"(ploop_0" +"(cdr" +" v_2))))" +"(let-values()" +"(if normal-list?_0" +"(void)" +"(let-values()" +"(loop_0" +" v_2)))))))))" +" ploop_0)" +" v_1))))" +"(let-values()" +"(begin" +"(1/write-byte" +" fasl-pair-type" +" o_1)" +"(loop_0" +"(car" +" v_1))" +"(loop_0" +"(cdr" +" v_1))))))" +"(if(vector?" +" v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +"(if(treat-immutable?_0" +" v_1)" +" fasl-immutable-vector-type" +" fasl-vector-type)" +" o_1)" +"(write-fasl-integer" +"(vector-length" +" v_1)" +" o_1)" +"(let-values(((vec_0" +" len_0)" +"(let-values(((vec_0)" +" v_1))" +"(begin" +"(check-vector" +" vec_0)" +"(values" +" vec_0" +"(unsafe-vector-length" +" vec_0))))))" +"(begin" +" #f" +"((letrec-values(((for-loop_0)" +"(lambda(pos_0)" +"(begin" +" 'for-loop" +"(if(unsafe-fx<" +" pos_0" +" len_0)" +"(let-values(((e_0)" +"(unsafe-vector-ref" +" vec_0" +" pos_0)))" +"(let-values((()" +"(let-values()" +"(let-values((()" +"(let-values()" +"(begin" +"(let-values()" +"(loop_0" +" e_0))" +"(values)))))" +"(values)))))" +"(if(not" +" #f)" +"(for-loop_0" +"(unsafe-fx+" +" 1" +" pos_0))" +"(values))))" +"(values))))))" +" for-loop_0)" +" 0)))" +"(void)))" +"(if(box?" +" v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +"(if(treat-immutable?_0" +" v_1)" +" fasl-immutable-box-type" +" fasl-box-type)" +" o_1)" +"(loop_0" +"(unbox" +" v_1))))" +"(let-values(((c2_0)" +"(prefab-struct-key" +" v_1)))" +"(if c2_0" +"((lambda(k_0)" +"(let-values((()" +"(begin" +"(1/write-byte" +" fasl-prefab-type" +" o_1)" +"(values))))" +"(let-values((()" +"(begin" +"(loop_0" +" k_0)" +"(values))))" +"(let-values(((vec_0)" +"(struct->vector" +" v_1)))" +"(begin" +"(write-fasl-integer" +"(sub1" +"(vector-length" +" vec_0))" +" o_1)" +"(let-values(((v*_0" +" start*_0" +" stop*_0" +" step*_0)" +"(normalise-inputs" +" 'in-vector" +" \"vector\"" +"(lambda(x_0)" +"(vector?" +" x_0))" +"(lambda(x_0)" +"(unsafe-vector-length" +" x_0))" +" vec_0" +" 1" +" #f" +" 1)))" +"(begin" +" #t" +"((letrec-values(((for-loop_0)" +"(lambda(idx_0)" +"(begin" +" 'for-loop" +"(if(unsafe-fx<" +" idx_0" +" stop*_0)" +"(let-values(((e_0)" +"(unsafe-vector-ref" +" v*_0" +" idx_0)))" +"(let-values((()" +"(let-values()" +"(let-values((()" +"(let-values()" +"(begin" +"(let-values()" +"(loop_0" +" e_0))" +"(values)))))" +"(values)))))" +"(if(not" +" #f)" +"(for-loop_0" +"(unsafe-fx+" +" idx_0" +" 1))" +"(values))))" +"(values))))))" +" for-loop_0)" +" start*_0)))" +"(void))))))" +" c2_0)" +"(if(hash?" +" v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +"(if(treat-immutable?_0" +" v_1)" +" fasl-immutable-hash-type" +" fasl-hash-type)" +" o_1)" +"(1/write-byte" +"(if(hash-eq?" +" v_1)" +"(let-values()" +" fasl-hash-eq-variant)" +"(if(hash-eqv?" +" v_1)" +"(let-values()" +" fasl-hash-eqv-variant)" +"(let-values()" +" fasl-hash-equal-variant)))" +" o_1)" +"(write-fasl-integer" +"(hash-count" +" v_1)" +" o_1)" +"(hash-for-each" +" v_1" +"(lambda(k_0" +" v_2)" +"(begin" +"(loop_0" +" k_0)" +"(loop_0" +" v_2)))" +" #t)))" +"(if(regexp?" +" v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +"(if(pregexp?" +" v_1)" +" fasl-pregexp-type" +" fasl-regexp-type)" +" o_1)" +"(write-fasl-string" +"(object-name" +" v_1)" +" o_1)))" +"(if(byte-regexp?" +" v_1)" +"(let-values()" +"(begin" +"(1/write-byte" +"(if(byte-pregexp?" +" v_1)" +" fasl-byte-pregexp-type" +" fasl-byte-regexp-type)" +" o_1)" +"(write-fasl-bytes" +"(object-name" +" v_1)" +" o_1)))" +"(let-values()" +"(raise-arguments-error" +" 'fasl-write" +" \"cannot write value\"" +" \"value\"" +" v_1)))))))))))))))))))))))))))))))))" +" loop_0)" +" v_0)" +"(get-output-bytes o_1 #t)))))" +"(begin" +"(write-fasl-integer shared-counter_0 o_0)" +"(write-fasl-integer(bytes-length bstr_0) o_0)" +"(1/write-bytes bstr_0 o_0)" +"(if orig-o_0(void)(get-output-bytes o_0)))))))))))))))))))" +"(define-values" +"(fasl->s-exp17.1)" +"(lambda(datum-intern?14_0 orig-i16_0)" +"(begin" +" 'fasl->s-exp17" +"(let-values(((orig-i_0) orig-i16_0))" +"(let-values(((intern?_0) datum-intern?14_0))" +"(let-values()" +"(let-values(((init-i_0)" +"(if(bytes? orig-i_0)" +"(let-values()(mcons orig-i_0 0))" +"(if(input-port? orig-i_0)" +"(let-values() orig-i_0)" +"(let-values()" +" (raise-argument-error 'fasl->s-exp \"(or/c bytes? input-port?)\" orig-i_0))))))" +"(let-values((()" +"(begin" +"(if(bytes=?(read-bytes/exactly fasl-prefix-length init-i_0) fasl-prefix)" +"(void)" +" (let-values () (read-error \"unrecognized prefix\")))" +"(values))))" +"(let-values(((shared-count_0)(read-fasl-integer init-i_0)))" +"(let-values(((shared_0)(make-vector shared-count_0)))" +"(let-values(((len_0)(read-fasl-integer init-i_0)))" +"(let-values(((i_0)" +"(if(mpair? init-i_0)" +" init-i_0" +"(let-values(((bstr_0)(read-bytes/exactly len_0 init-i_0)))(mcons bstr_0 0)))))" +"(let-values(((intern_0)" +"(lambda(v_0)(begin 'intern(if intern?_0(datum-intern-literal v_0) v_0)))))" +"((letrec-values(((loop_0)" +"(lambda()" +"(begin" +" 'loop" +"(let-values(((type_0)(read-byte/no-eof i_0)))" +"(let-values(((tmp_0) type_0))" +"(let-values(((index_0)" +"(if(fixnum? tmp_0)" +"(if(if(unsafe-fx>= tmp_0 1)" +"(unsafe-fx< tmp_0 40)" +" #f)" +"(let-values(((tbl_0)" +" '#(1" +" 2" +" 3" +" 4" +" 5" +" 6" +" 7" +" 8" +" 9" +" 10" +" 12" +" 13" +" 14" +" 15" +" 16" +" 17" +" 18" +" 19" +" 20" +" 21" +" 22" +" 23" +" 24" +" 25" +" 26" +" 27" +" 28" +" 29" +" 31" +" 30" +" 32" +" 32" +" 33" +" 34" +" 35" +" 36" +" 37" +" 38" +" 11)))" +"(unsafe-vector*-ref tbl_0(unsafe-fx- tmp_0 1)))" +" 0)" +" 0)))" +"(if(unsafe-fx< index_0 19)" +"(if(unsafe-fx< index_0 9)" +"(if(unsafe-fx< index_0 4)" +"(if(unsafe-fx< index_0 1)" +"(let-values()" +"(if(>= type_0 fasl-small-integer-start)" +"(let-values()" +"(+" +"(- type_0 fasl-small-integer-start)" +" fasl-lowest-small-integer))" +"(let-values()" +" (read-error \"unrecognized fasl tag\" \"tag\" type_0))))" +"(if(unsafe-fx< index_0 2)" +"(let-values()" +"(let-values(((pos_0)(read-fasl-integer i_0)))" +"(let-values(((v_0)(loop_0)))" +"(begin" +"(if(< pos_0 shared-count_0)" +"(void)" +"(let-values()" +" (read-error \"bad graph index\")))" +"(vector-set! shared_0 pos_0 v_0)" +" v_0))))" +"(if(unsafe-fx< index_0 3)" +"(let-values()" +"(let-values(((pos_0)(read-fasl-integer i_0)))" +"(begin" +"(if(< pos_0 shared-count_0)" +"(void)" +"(let-values()" +" (read-error \"bad graph index\")))" +"(vector-ref shared_0 pos_0))))" +"(let-values() #f))))" +"(if(unsafe-fx< index_0 6)" +"(if(unsafe-fx< index_0 5)" +"(let-values() #t)" +"(let-values() null))" +"(if(unsafe-fx< index_0 7)" +"(let-values()(void))" +"(if(unsafe-fx< index_0 8)" +"(let-values() eof)" +"(let-values()(intern_0(read-fasl-integer i_0)))))))" +"(if(unsafe-fx< index_0 13)" +"(if(unsafe-fx< index_0 10)" +"(let-values()" +"(floating-point-bytes->real" +"(read-bytes/exactly 8 i_0)" +" #f))" +"(if(unsafe-fx< index_0 11)" +"(let-values()" +"(real->single-flonum" +"(floating-point-bytes->real" +"(read-bytes/exactly 4 i_0)" +" #f)))" +"(if(unsafe-fx< index_0 12)" +"(let-values()" +"(let-values(((bstr_0)" +"(read-bytes/exactly" +"(read-fasl-integer i_0)" +" i_0)))" +"(1/string->number" +"(bytes->string/utf-8 bstr_0)" +" 10" +" 'read)))" +"(let-values()(intern_0(/(loop_0)(loop_0)))))))" +"(if(unsafe-fx< index_0 15)" +"(if(unsafe-fx< index_0 14)" +"(let-values()" +"(intern_0(make-rectangular(loop_0)(loop_0))))" +"(let-values()" +"(intern_0(integer->char(read-fasl-integer i_0)))))" +"(if(unsafe-fx< index_0 16)" +"(let-values()(string->symbol(read-fasl-string i_0)))" +"(if(unsafe-fx< index_0 17)" +"(let-values()" +"(string->unreadable-symbol(read-fasl-string i_0)))" +"(if(unsafe-fx< index_0 18)" +"(let-values()" +"(string->uninterned-symbol" +"(read-fasl-string i_0)))" +"(let-values()" +"(string->keyword(read-fasl-string i_0)))))))))" +"(if(unsafe-fx< index_0 28)" +"(if(unsafe-fx< index_0 23)" +"(if(unsafe-fx< index_0 20)" +"(let-values()(read-fasl-string i_0))" +"(if(unsafe-fx< index_0 21)" +"(let-values()" +"(intern_0" +"(string->immutable-string(read-fasl-string i_0))))" +"(if(unsafe-fx< index_0 22)" +"(let-values()(read-fasl-bytes i_0))" +"(let-values()" +"(intern_0" +"(bytes->immutable-bytes(read-fasl-bytes i_0)))))))" +"(if(unsafe-fx< index_0 25)" +"(if(unsafe-fx< index_0 24)" +"(let-values()" +"(bytes->path(read-fasl-bytes i_0)(loop_0)))" +"(let-values()" +"(let-values(((wrt-dir_0)" +"(current-load-relative-directory)))" +"(let-values(((rel-elems_0)" +"(reverse$1" +"(let-values(((lst_0)(loop_0)))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-list lst_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0" +" lst_1)" +"(begin" +" 'for-loop" +"(if(pair?" +" lst_1)" +"(let-values(((p_0)" +"(unsafe-car" +" lst_1))" +"((rest_0)" +"(unsafe-cdr" +" lst_1)))" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +"(if(bytes?" +" p_0)" +"(bytes->path-element" +" p_0)" +" p_0))" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not" +" #f)" +"(for-loop_0" +" fold-var_1" +" rest_0)" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" lst_0))))))" +"(if wrt-dir_0" +"(let-values()" +"(apply build-path wrt-dir_0 rel-elems_0))" +"(if(null? rel-elems_0)" +"(let-values()(build-path 'same))" +"(let-values()" +"(apply build-path rel-elems_0))))))))" +"(if(unsafe-fx< index_0 26)" +"(let-values()" +"(intern_0(pregexp(read-fasl-string i_0))))" +"(if(unsafe-fx< index_0 27)" +"(let-values()" +"(intern_0(regexp(read-fasl-string i_0))))" +"(let-values()" +"(intern_0(byte-pregexp(read-fasl-bytes i_0))))))))" +"(if(unsafe-fx< index_0 33)" +"(if(unsafe-fx< index_0 30)" +"(if(unsafe-fx< index_0 29)" +"(let-values()" +"(intern_0(byte-regexp(read-fasl-bytes i_0))))" +"(let-values()" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"(reverse$1" +"(let-values(((start_0) 0)" +"((end_0) len_1)" +"((inc_0) 1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-range start_0 end_0 inc_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0 pos_0)" +"(begin" +" 'for-loop" +"(if(< pos_0 end_0)" +"(let-values()" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +"(loop_0))" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not #f)" +"(for-loop_0" +" fold-var_1" +"(+ pos_0 inc_0))" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" start_0)))))))" +"(if(unsafe-fx< index_0 31)" +"(let-values()(cons(loop_0)(loop_0)))" +"(if(unsafe-fx< index_0 32)" +"(let-values()" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"((letrec-values(((ploop_0)" +"(lambda(len_2)" +"(begin" +" 'ploop" +"(if(zero? len_2)" +"(loop_0)" +"(cons" +"(loop_0)" +"(ploop_0" +"(sub1 len_2))))))))" +" ploop_0)" +" len_1)))" +"(let-values()" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"(let-values(((vec_0)" +"(let-values(((len_2) len_1))" +"(begin" +"(if(exact-nonnegative-integer?" +" len_2)" +"(void)" +"(let-values()" +"(raise-argument-error" +" 'for/vector" +" \"exact-nonnegative-integer?\"" +" len_2)))" +"(let-values(((v_0)" +"(make-vector" +" len_2" +" 0)))" +"(begin" +"(if(zero? len_2)" +"(void)" +"(let-values()" +"(let-values(((start_0)" +" 0)" +"((end_0)" +" len_1)" +"((inc_0)" +" 1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-range" +" start_0" +" end_0" +" inc_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(i_1" +" pos_0)" +"(begin" +" 'for-loop" +"(if(<" +" pos_0" +" end_0)" +"(let-values(((j_0)" +" pos_0))" +"(let-values(((i_2)" +"(let-values(((i_2)" +" i_1))" +"(let-values(((i_3)" +"(let-values()" +"(begin" +"(unsafe-vector*-set!" +" v_0" +" i_2" +"(let-values()" +"(loop_0)))" +"(unsafe-fx+" +" 1" +" i_2)))))" +"(values" +" i_3)))))" +"(if(if(not" +"((lambda x_0" +"(unsafe-fx=" +" i_2" +" len_2))" +" j_0))" +"(not" +" #f)" +" #f)" +"(for-loop_0" +" i_2" +"(+" +" pos_0" +" inc_0))" +" i_2)))" +" i_1)))))" +" for-loop_0)" +" 0" +" start_0)))))" +" v_0))))))" +"(if(eqv? type_0 fasl-immutable-vector-type)" +"(vector->immutable-vector vec_0)" +" vec_0)))))))" +"(if(unsafe-fx< index_0 35)" +"(if(unsafe-fx< index_0 34)" +"(let-values()(box(loop_0)))" +"(let-values()(box-immutable(loop_0))))" +"(if(unsafe-fx< index_0 36)" +"(let-values()" +"(let-values(((key_0)(loop_0)))" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"(apply" +" make-prefab-struct" +" key_0" +"(reverse$1" +"(let-values(((start_0) 0)" +"((end_0) len_1)" +"((inc_0) 1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-range start_0 end_0 inc_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(fold-var_0 pos_0)" +"(begin" +" 'for-loop" +"(if(< pos_0 end_0)" +"(let-values()" +"(let-values(((fold-var_1)" +"(let-values(((fold-var_1)" +" fold-var_0))" +"(let-values(((fold-var_2)" +"(let-values()" +"(cons" +"(let-values()" +"(loop_0))" +" fold-var_1))))" +"(values" +" fold-var_2)))))" +"(if(not #f)" +"(for-loop_0" +" fold-var_1" +"(+" +" pos_0" +" inc_0))" +" fold-var_1)))" +" fold-var_0)))))" +" for-loop_0)" +" null" +" start_0))))))))" +"(if(unsafe-fx< index_0 37)" +"(let-values()" +"(let-values(((ht_0)" +"(let-values(((tmp_1)" +"(read-byte/no-eof i_0)))" +"(if(equal? tmp_1 0)" +"(let-values()(make-hasheq))" +"(if(equal? tmp_1 2)" +"(let-values()(make-hasheqv))" +"(let-values()(make-hash)))))))" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"(begin" +"(let-values(((start_0) 0)" +"((end_0) len_1)" +"((inc_0) 1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-range start_0 end_0 inc_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(pos_0)" +"(begin" +" 'for-loop" +"(if(< pos_0 end_0)" +"(let-values()" +"(let-values((()" +"(let-values()" +"(let-values((()" +"(let-values()" +"(begin" +"(let-values()" +"(hash-set!" +" ht_0" +"(loop_0)" +"(loop_0)))" +"(values)))))" +"(values)))))" +"(if(not #f)" +"(for-loop_0" +"(+" +" pos_0" +" inc_0))" +"(values))))" +"(values))))))" +" for-loop_0)" +" start_0)))" +"(void)" +" ht_0))))" +"(if(unsafe-fx< index_0 38)" +"(let-values()" +"(let-values(((ht_0)" +"(let-values(((tmp_1)" +"(read-byte/no-eof" +" i_0)))" +"(if(equal? tmp_1 0)" +"(let-values() '#hasheq())" +"(if(equal? tmp_1 2)" +"(let-values() '#hasheqv())" +"(let-values() '#hash()))))))" +"(let-values(((len_1)(read-fasl-integer i_0)))" +"(let-values(((start_0) 0)" +"((end_0) len_1)" +"((inc_0) 1))" +"(begin" +"(if(variable-reference-from-unsafe?" +"(#%variable-reference))" +"(void)" +"(let-values()" +"(check-range start_0 end_0 inc_0)))" +"((letrec-values(((for-loop_0)" +"(lambda(ht_1 pos_0)" +"(begin" +" 'for-loop" +"(if(< pos_0 end_0)" +"(let-values()" +"(let-values(((ht_2)" +"(let-values(((ht_2)" +" ht_1))" +"(let-values(((ht_3)" +"(let-values()" +"(hash-set" +" ht_2" +"(loop_0)" +"(loop_0)))))" +"(values" +" ht_3)))))" +"(if(not #f)" +"(for-loop_0" +" ht_2" +"(+" +" pos_0" +" inc_0))" +" ht_2)))" +" ht_1)))))" +" for-loop_0)" +" ht_0" +" start_0))))))" +"(let-values()" +"(srcloc" +"(loop_0)" +"(loop_0)" +"(loop_0)" +"(loop_0)" +"(loop_0)))))))))))))))))" +" loop_0)))))))))))))))" +"(define-values" +"(write-fasl-integer)" +"(lambda(i_0 o_0)" +"(begin" +"(if(<= -124 i_0 127)" +"(let-values()(if(negative? i_0)(1/write-byte(+ i_0 256) o_0)(1/write-byte i_0 o_0)))" +"(if(<= -32768 i_0 32767)" +"(let-values()(begin(1/write-byte 128 o_0)(1/write-bytes(integer->integer-bytes i_0 2 #t #f) o_0)))" +"(if(<= -2147483648 i_0 2147483647)" +"(let-values()(begin(1/write-byte 129 o_0)(1/write-bytes(integer->integer-bytes i_0 4 #t #f) o_0)))" +"(if(<= -9223372036854775808 i_0 9223372036854775807)" +"(let-values()(begin(1/write-byte 130 o_0)(1/write-bytes(integer->integer-bytes i_0 8 #t #f) o_0)))" +"(let-values()" +"(let-values((()(begin(1/write-byte 131 o_0)(values))))" +" (let-values (((s_0) (format \"~x\" i_0)))" +"(begin(write-fasl-integer(string-length s_0) o_0)(write-string s_0 o_0))))))))))))" +"(define-values" +"(write-fasl-string)" +"(lambda(v_0 o_0)" +"(begin" +"(let-values(((bstr_0)(string->bytes/utf-8 v_0)))" +"(begin(write-fasl-integer(bytes-length bstr_0) o_0)(1/write-bytes bstr_0 o_0))))))" +"(define-values" +"(write-fasl-bytes)" +"(lambda(v_0 o_0)(begin(begin(write-fasl-integer(bytes-length v_0) o_0)(1/write-bytes v_0 o_0)))))" +"(define-values" +"(read-error)" +"(lambda(s_0 . args_0)" +" (begin (apply raise-arguments-error 'fasl-read (string-append \"error parsing fasl stream;\\n\" \" \" s_0) args_0))))" +"(define-values" +"(read-byte/no-eof)" +"(lambda(i_0)" +"(begin" +"(if(mpair? i_0)" +"(let-values()" +"(let-values(((pos_0)(mcdr i_0)))" +"(begin" +" (if (< pos_0 (bytes-length (mcar i_0))) (void) (let-values () (read-error \"truncated stream\")))" +"(set-mcdr! i_0(add1 pos_0))" +"(bytes-ref(mcar i_0) pos_0))))" +"(let-values()" +"(let-values(((b_0)(read-byte i_0)))" +" (begin (if (eof-object? b_0) (let-values () (read-error \"truncated stream\")) (void)) b_0)))))))" +"(define-values" +"(read-bytes/exactly)" +"(lambda(n_0 i_0)" +"(begin" +"(if(mpair? i_0)" +"(let-values()" +"(let-values(((pos_0)(mcdr i_0)))" +"(begin" +" (if (<= (+ pos_0 n_0) (bytes-length (mcar i_0))) (void) (let-values () (read-error \"truncated stream\")))" +"(set-mcdr! i_0(+ pos_0 n_0))" +"(subbytes(mcar i_0) pos_0(+ pos_0 n_0)))))" +"(let-values()" +"(let-values(((bstr_0)(read-bytes n_0 i_0)))" +"(begin" +"(if(if(bytes? bstr_0)(= n_0(bytes-length bstr_0)) #f)" +"(void)" +" (let-values () (read-error \"truncated stream\")))" +" bstr_0)))))))" +"(define-values" +"(read-fasl-integer)" +"(lambda(i_0)" +"(begin" +"(let-values(((b_0)(read-byte/no-eof i_0)))" +"(if(<= b_0 127)" +"(let-values() b_0)" +"(if(>= b_0 132)" +"(let-values()(- b_0 256))" +"(if(eqv? b_0 128)" +"(let-values()(integer-bytes->integer(read-bytes/exactly 2 i_0) #t #f))" +"(if(eqv? b_0 129)" +"(let-values()(integer-bytes->integer(read-bytes/exactly 4 i_0) #t #f))" +"(if(eqv? b_0 130)" +"(let-values()(integer-bytes->integer(read-bytes/exactly 8 i_0) #t #f))" +"(if(eqv? b_0 131)" +"(let-values()" +"(let-values(((len_0)(read-fasl-integer i_0)))" +"(let-values(((str_0)(read-fasl-string i_0 len_0)))" +"(begin" +"(if(if(string? str_0)(= len_0(string-length str_0)) #f)" +"(void)" +" (let-values () (read-error \"truncated stream at number\")))" +"(1/string->number str_0 16)))))" +" (let-values () (read-error \"internal error on integer mode\"))))))))))))" +"(define-values" +"(read-fasl-string)" +"(let-values(((read-fasl-string22_0)" +"(lambda(i21_0 len20_0)" +"(begin" +" 'read-fasl-string22" +"(let-values(((i_0) i21_0))" +"(let-values(((len_0)(if(eq? len20_0 unsafe-undefined)(read-fasl-integer i_0) len20_0)))" +"(let-values()" +"(let-values(((bstr_0)(read-bytes/exactly len_0 i_0)))(bytes->string/utf-8 bstr_0)))))))))" +"(case-lambda" +"((i_0)(begin(read-fasl-string22_0 i_0 unsafe-undefined)))" +"((i_0 len20_0)(read-fasl-string22_0 i_0 len20_0)))))" +"(define-values" +"(read-fasl-bytes)" +"(lambda(i_0)(begin(let-values(((len_0)(read-fasl-integer i_0)))(read-bytes/exactly len_0 i_0)))))" +"(define-values" "(struct:mpi-intern-table mpi-intern-table1.1 mpi-intern-table? mpi-intern-table-normal mpi-intern-table-fast)" "(let-values(((struct:_0 make-_0 ?_0 -ref_0 -set!_0)" "(let-values()" @@ -38935,7 +38935,11 @@ static const char *startup_source = "(lambda(b_0 pre?_0 submods_0)" "(begin" "(hash->linklet-bundle" -"(hash-set(linklet-bundle->hash b_0)(if pre?_0 'pre 'post)(map2 module-compiled-immediate-name submods_0))))))" +"(hash-set" +"(linklet-bundle->hash b_0)" +"(if pre?_0 'pre 'post)" +"(let-values(((temp10_0)(map2 module-compiled-immediate-name submods_0))((symbolnamespace?_0"