compiler fixes around 'once'

glider runs when used inside (body)!
This commit is contained in:
ESL 2024-06-30 14:37:22 -04:00
parent 2a2498d5a2
commit 608fb8063a
2 changed files with 200 additions and 173 deletions

View file

@ -748,8 +748,8 @@
(if (null? files) (if (null? files)
(cons begin-id (apply append (reverse! exp-lists))) (cons begin-id (apply append (reverse! exp-lists)))
(let* ([filepath (file-resolve-relative-to-current (car files))] (let* ([filepath (file-resolve-relative-to-current (car files))]
[sexps (read-file-sexps filepath ci?)] [sexps (read-file-sexps filepath ci?)]
[wrapped-sexps `((,push-cf-id ,filepath) ,@sexps (,pop-cf-id))]) [wrapped-sexps `((,push-cf-id ,filepath) ,@sexps (,pop-cf-id))])
(loop (cdr files) (cons wrapped-sexps exp-lists))))))) (loop (cdr files) (cons wrapped-sexps exp-lists)))))))
@ -870,6 +870,10 @@
(record-case x (record-case x
[quote (obj) [quote (obj)
'()] '()]
[gref (gid)
'()]
[gset! (gid exp)
(find-free exp b)]
[(ref const) (id) [(ref const) (id)
(if (set-member? id b) '() (list id))] (if (set-member? id b) '() (list id))]
[set! (id exp) [set! (id exp)
@ -916,12 +920,16 @@
(record-case x (record-case x
[quote (obj) [quote (obj)
'()] '()]
[gref (gid)
'()]
[gset! (gid exp)
(find-sets exp v)]
[(ref const) (id) [(ref const) (id)
'()] '()]
[set! (id x) [set! (id exp)
(set-union (set-union
(if (set-member? id v) (list id) '()) (if (set-member? id v) (list id) '())
(find-sets x v))] (find-sets exp v))]
[set& (id) [set& (id)
(if (set-member? id v) (list id) '())] (if (set-member? id v) (list id) '())]
[lambda (idsi exp) [lambda (idsi exp)
@ -945,7 +953,7 @@
[asm (cstr) [asm (cstr)
'()] '()]
[once (gid exp) [once (gid exp)
(find-sets exp)] (find-sets exp v)]
[(define define-syntax) tail [(define define-syntax) tail
(c-error "misplaced definition form" x)]))) (c-error "misplaced definition form" x)])))
@ -966,6 +974,15 @@
[(()) (write-char #\n port)] [(()) (write-char #\n port)]
[else (write-char #\' port) (write-serialized-arg obj port)]) [else (write-char #\' port) (write-serialized-arg obj port)])
(when k (write-char #\] port) (write-serialized-arg k port))] (when k (write-char #\] port) (write-serialized-arg k port))]
[gref (gid)
(write-char #\@ port)
(write-serialized-arg gid port)
(when k (write-char #\] port) (write-serialized-arg k port))]
[gset! (gid x)
(codegen x l f s g #f port)
(write-char #\@ port) (write-char #\! port)
(write-serialized-arg gid port)
(when k (write-char #\] port) (write-serialized-arg k port))]
[(ref const) (id) [(ref const) (id)
(cond [(posq id l) => ; local (cond [(posq id l) => ; local
(lambda (n) (lambda (n)
@ -1231,9 +1248,9 @@
(write-string cstr port) (write-string cstr port)
(when k (write-char #\] port) (write-serialized-arg k port))] (when k (write-char #\] port) (write-serialized-arg k port))]
[once (gid exp) [once (gid exp)
(codegen `(if (integrable ,(lookup-integrable 'eq?) (ref ,gid) (quote #t)) (codegen `(if (integrable ,(lookup-integrable 'eq?) (gref ,gid) (quote #t))
(begin) (begin)
(begin (set! ,gid (quote #t)) ,exp)) (begin (gset! ,gid (quote #t)) ,exp))
l f s g k port)] l f s g k port)]
[(define define-syntax) tail [(define define-syntax) tail
(c-error "misplaced definition form" x)]))) (c-error "misplaced definition form" x)])))

342
t.c
View file

@ -465,183 +465,193 @@ char *t_code[] = {
",@(y9:set-union)[22", ",@(y9:set-union)[22",
"P", "find-free", "P", "find-free",
"%2'(y5:quote),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(l2:y3:ref;" "%2'(y5:quote),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:gref),."
"y5:const;),.1aA0?{.0d,.2,&1{%1${:0,.3,@(y11:set-member?)[02}?{n]1}.0,l" "1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y5:gset!),.1aq?{.0d,.2,&1"
"1]1},@(y13:apply-to-list)[22}'(y4:set!),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9" "{%2:0,.2,@(y9:find-free)[22},@(y13:apply-to-list)[22}'(l2:y3:ref;y5:co"
":find-free)[02},${:0,.4,@(y11:set-member?)[02}?{n}{.1,l1},@(y9:set-uni" "nst;),.1aA0?{.0d,.2,&1{%1${:0,.3,@(y11:set-member?)[02}?{n]1}.0,l1]1},"
"on)[22},@(y13:apply-to-list)[22}'(y4:set&),.1aq?{.0d,.2,&1{%1${:0,.3,@" "@(y13:apply-to-list)[22}'(y4:set!),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9:find"
"(y11:set-member?)[02}?{n]1}.0,l1]1},@(y13:apply-to-list)[22}'(y6:lambd" "-free)[02},${:0,.4,@(y11:set-member?)[02}?{n}{.1,l1},@(y9:set-union)[2"
"a),.1aq?{.0d,.2,&1{%2${:0,${.5,@(y15:flatten-idslist)[01},@(y9:set-uni" "2},@(y13:apply-to-list)[22}'(y4:set&),.1aq?{.0d,.2,&1{%1${:0,.3,@(y11:"
"on)[02},.2,@(y9:find-free)[22},@(y13:apply-to-list)[22}'(y7:lambda*),." "set-member?)[02}?{n]1}.0,l1]1},@(y13:apply-to-list)[22}'(y6:lambda),.1"
"1aq?{.0d,.2,&1{%!0:0,${.3,@(y4:cadr),@(y5:%25map1)[02},@(y10:find-free" "aq?{.0d,.2,&1{%2${:0,${.5,@(y15:flatten-idslist)[01},@(y9:set-union)[0"
"*)[12},@(y13:apply-to-list)[22}'(y5:letcc),.1aq?{.0d,.2,&1{%2${:0,.3,l" "2},.2,@(y9:find-free)[22},@(y13:apply-to-list)[22}'(y7:lambda*),.1aq?{"
"1,@(y9:set-union)[02},.2,@(y9:find-free)[22},@(y13:apply-to-list)[22}'" ".0d,.2,&1{%!0:0,${.3,@(y4:cadr),@(y5:%25map1)[02},@(y10:find-free*)[12"
"(y6:withcc),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9:find-free)[02},${:0,.4,@(y9" "},@(y13:apply-to-list)[22}'(y5:letcc),.1aq?{.0d,.2,&1{%2${:0,.3,l1,@(y"
":find-free)[02},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y2:if),." "9:set-union)[02},.2,@(y9:find-free)[22},@(y13:apply-to-list)[22}'(y6:w"
"1aq?{.0d,.2,&1{%3${${:0,.7,@(y9:find-free)[02},${:0,.7,@(y9:find-free)" "ithcc),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9:find-free)[02},${:0,.4,@(y9:find"
"[02},@(y9:set-union)[02},${:0,.4,@(y9:find-free)[02},@(y9:set-union)[3" "-free)[02},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y2:if),.1aq?{"
"2},@(y13:apply-to-list)[22}'(y5:begin),.1aq?{.0d,.2,&1{%!0:0,.1,@(y10:" ".0d,.2,&1{%3${${:0,.7,@(y9:find-free)[02},${:0,.7,@(y9:find-free)[02},"
"find-free*)[12},@(y13:apply-to-list)[22}'(y10:integrable),.1aq?{.0d,.2" "@(y9:set-union)[02},${:0,.4,@(y9:find-free)[02},@(y9:set-union)[32},@("
",&1{%!1:0,.1,@(y10:find-free*)[22},@(y13:apply-to-list)[22}'(y4:call)," "y13:apply-to-list)[22}'(y5:begin),.1aq?{.0d,.2,&1{%!0:0,.1,@(y10:find-"
".1aq?{.0d,.2,&1{%!1${:0,.3,@(y10:find-free*)[02},${:0,.5,@(y9:find-fre" "free*)[12},@(y13:apply-to-list)[22}'(y10:integrable),.1aq?{.0d,.2,&1{%"
"e)[02},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y3:asm),.1aq?{.0d" "!1:0,.1,@(y10:find-free*)[22},@(y13:apply-to-list)[22}'(y4:call),.1aq?"
",&0{%1n]1},@(y13:apply-to-list)[22}'(y4:once),.1aq?{.0d,.2,&1{%2:0,.2," "{.0d,.2,&1{%!1${:0,.3,@(y10:find-free*)[02},${:0,.5,@(y9:find-free)[02"
"@(y9:find-free)[22},@(y13:apply-to-list)[22}'(l2:y6:define;y13:define-" "},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y3:asm),.1aq?{.0d,&0{%"
"syntax;),.1aA0?{.0d,.1,&1{%!0:0,'(s25:misplaced definition form),@(y7:" "1n]1},@(y13:apply-to-list)[22}'(y4:once),.1aq?{.0d,.2,&1{%2:0,.2,@(y9:"
"c-error)[12},@(y13:apply-to-list)[22}'(y16:record-case-miss)]2", "find-free)[22},@(y13:apply-to-list)[22}'(l2:y6:define;y13:define-synta"
"x;),.1aA0?{.0d,.1,&1{%!0:0,'(s25:misplaced definition form),@(y7:c-err"
"or)[12},@(y13:apply-to-list)[22}'(y16:record-case-miss)]2",
"P", "find-sets*", "P", "find-sets*",
"%2.0u?{n]2}${.3,.3d,@(y10:find-sets*)[02},${.4,.4a,@(y9:find-sets)[02}" "%2.0u?{n]2}${.3,.3d,@(y10:find-sets*)[02},${.4,.4a,@(y9:find-sets)[02}"
",@(y9:set-union)[22", ",@(y9:set-union)[22",
"P", "find-sets", "P", "find-sets",
"%2'(y5:quote),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(l2:y3:ref;" "%2'(y5:quote),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:gref),."
"y5:const;),.1aA0?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:set!),.1a" "1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y5:gset!),.1aq?{.0d,.2,&1"
"q?{.0d,.2,&1{%2${:0,.4,@(y9:find-sets)[02},${:0,.4,@(y11:set-member?)[" "{%2:0,.2,@(y9:find-sets)[22},@(y13:apply-to-list)[22}'(l2:y3:ref;y5:co"
"02}?{.1,l1}{n},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y4:set&)," "nst;),.1aA0?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:set!),.1aq?{.0"
".1aq?{.0d,.2,&1{%1${:0,.3,@(y11:set-member?)[02}?{.0,l1]1}n]1},@(y13:a" "d,.2,&1{%2${:0,.4,@(y9:find-sets)[02},${:0,.4,@(y11:set-member?)[02}?{"
"pply-to-list)[22}'(y6:lambda),.1aq?{.0d,.2,&1{%2${${.4,@(y15:flatten-i" ".1,l1}{n},@(y9:set-union)[22},@(y13:apply-to-list)[22}'(y4:set&),.1aq?"
"dslist)[01},:0,@(y9:set-minus)[02},.2,@(y9:find-sets)[22},@(y13:apply-" "{.0d,.2,&1{%1${:0,.3,@(y11:set-member?)[02}?{.0,l1]1}n]1},@(y13:apply-"
"to-list)[22}'(y7:lambda*),.1aq?{.0d,.2,&1{%!0:0,${.3,@(y4:cadr),@(y5:%" "to-list)[22}'(y6:lambda),.1aq?{.0d,.2,&1{%2${${.4,@(y15:flatten-idslis"
"25map1)[02},@(y10:find-sets*)[12},@(y13:apply-to-list)[22}'(y5:letcc)," "t)[01},:0,@(y9:set-minus)[02},.2,@(y9:find-sets)[22},@(y13:apply-to-li"
".1aq?{.0d,.2,&1{%2${.2,l1,:0,@(y9:set-minus)[02},.2,@(y9:find-sets)[22" "st)[22}'(y7:lambda*),.1aq?{.0d,.2,&1{%!0:0,${.3,@(y4:cadr),@(y5:%25map"
"},@(y13:apply-to-list)[22}'(y6:withcc),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9:" "1)[02},@(y10:find-sets*)[12},@(y13:apply-to-list)[22}'(y5:letcc),.1aq?"
"find-sets)[02},${:0,.4,@(y9:find-sets)[02},@(y9:set-union)[22},@(y13:a" "{.0d,.2,&1{%2${.2,l1,:0,@(y9:set-minus)[02},.2,@(y9:find-sets)[22},@(y"
"pply-to-list)[22}'(y5:begin),.1aq?{.0d,.2,&1{%!0:0,.1,@(y10:find-sets*" "13:apply-to-list)[22}'(y6:withcc),.1aq?{.0d,.2,&1{%2${:0,.4,@(y9:find-"
")[12},@(y13:apply-to-list)[22}'(y2:if),.1aq?{.0d,.2,&1{%3${${:0,.7,@(y" "sets)[02},${:0,.4,@(y9:find-sets)[02},@(y9:set-union)[22},@(y13:apply-"
"9:find-sets)[02},${:0,.7,@(y9:find-sets)[02},@(y9:set-union)[02},${:0," "to-list)[22}'(y5:begin),.1aq?{.0d,.2,&1{%!0:0,.1,@(y10:find-sets*)[12}"
".4,@(y9:find-sets)[02},@(y9:set-union)[32},@(y13:apply-to-list)[22}'(y" ",@(y13:apply-to-list)[22}'(y2:if),.1aq?{.0d,.2,&1{%3${${:0,.7,@(y9:fin"
"10:integrable),.1aq?{.0d,.2,&1{%!1:0,.1,@(y10:find-sets*)[22},@(y13:ap" "d-sets)[02},${:0,.7,@(y9:find-sets)[02},@(y9:set-union)[02},${:0,.4,@("
"ply-to-list)[22}'(y4:call),.1aq?{.0d,.2,&1{%!1${:0,.3,@(y10:find-sets*" "y9:find-sets)[02},@(y9:set-union)[32},@(y13:apply-to-list)[22}'(y10:in"
")[02},${:0,.5,@(y9:find-sets)[02},@(y9:set-union)[22},@(y13:apply-to-l" "tegrable),.1aq?{.0d,.2,&1{%!1:0,.1,@(y10:find-sets*)[22},@(y13:apply-t"
"ist)[22}'(y3:asm),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:onc" "o-list)[22}'(y4:call),.1aq?{.0d,.2,&1{%!1${:0,.3,@(y10:find-sets*)[02}"
"e),.1aq?{.0d,&0{%2.1,@(y9:find-sets)[21},@(y13:apply-to-list)[22}'(l2:" ",${:0,.5,@(y9:find-sets)[02},@(y9:set-union)[22},@(y13:apply-to-list)["
"y6:define;y13:define-syntax;),.1aA0?{.0d,.1,&1{%!0:0,'(s25:misplaced d" "22}'(y3:asm),.1aq?{.0d,&0{%1n]1},@(y13:apply-to-list)[22}'(y4:once),.1"
"efinition form),@(y7:c-error)[12},@(y13:apply-to-list)[22}'(y16:record" "aq?{.0d,.2,&1{%2:0,.2,@(y9:find-sets)[22},@(y13:apply-to-list)[22}'(l2"
"-case-miss)]2", ":y6:define;y13:define-syntax;),.1aA0?{.0d,.1,&1{%!0:0,'(s25:misplaced "
"definition form),@(y7:c-error)[12},@(y13:apply-to-list)[22}'(y16:recor"
"d-case-miss)]2",
"P", "codegen", "P", "codegen",
"%7'(y5:quote),.1aq?{.0d,.6,.8,&2{%1.0,t,.1v?{:0,'(ct)W0}{f,.1v?{:0,'(c" "%7'(y5:quote),.1aq?{.0d,.6,.8,&2{%1.0,t,.1v?{:0,'(ct)W0}{f,.1v?{:0,'(c"
"f)W0}{n,.1v?{:0,'(cn)W0}{:0,'(c')W0${:0,.4,@(y20:write-serialized-arg)" "f)W0}{n,.1v?{:0,'(cn)W0}{:0,'(c')W0${:0,.4,@(y20:write-serialized-arg)"
"[02}}}}_1:1?{:0,'(c])W0:0,:1,@(y20:write-serialized-arg)[12}]1},@(y13:" "[02}}}}_1:1?{:0,'(c])W0:0,:1,@(y20:write-serialized-arg)[12}]1},@(y13:"
"apply-to-list)[72}'(l2:y3:ref;y5:const;),.1aA0?{.0d,.6,.8,.5,.7,.6,&5{" "apply-to-list)[72}'(y4:gref),.1aq?{.0d,.6,.8,&2{%1:0,'(c@)W0${:0,.3,@("
"%1${:0,.3,@(y4:posq)[02},.0?{.0,:3,'(c.)W0${:3,.3,@(y20:write-serializ" "y20:write-serialized-arg)[02}:1?{:0,'(c])W0:0,:1,@(y20:write-serialize"
"ed-arg)[02}${:1,.5,@(y11:set-member?)[02}?{:3,'(c^)W0}_1}{${:2,.4,@(y4" "d-arg)[12}]1},@(y13:apply-to-list)[72}'(y5:gset!),.1aq?{.0d,.6,.8,.4,."
":posq)[02},.0?{.0,:3,'(c:)W0${:3,.3,@(y20:write-serialized-arg)[02}${:" "6,.8,.(i10),&6{%2${:4,f,:0,:1,:2,:3,.9,@(y7:codegen)[07}:4,'(c@)W0:4,'"
"1,.6,@(y11:set-member?)[02}?{:3,'(c^)W0}_1}{:3,'(c@)W0${:3,.5,@(y20:wr" "(c!)W0${:4,.3,@(y20:write-serialized-arg)[02}:5?{:4,'(c])W0:4,:5,@(y20"
"ite-serialized-arg)[02}}_1}_1:4?{:3,'(c])W0:3,:4,@(y20:write-serialize" ":write-serialized-arg)[22}]2},@(y13:apply-to-list)[72}'(l2:y3:ref;y5:c"
"d-arg)[12}]1},@(y13:apply-to-list)[72}'(y4:set!),.1aq?{.0d,.6,.8,.5,.5" "onst;),.1aA0?{.0d,.6,.8,.5,.7,.6,&5{%1${:0,.3,@(y4:posq)[02},.0?{.0,:3"
",.8,.(i10),&6{%2${:4,f,:0,:1,:3,:2,.9,@(y7:codegen)[07}${:2,.3,@(y4:po" ",'(c.)W0${:3,.3,@(y20:write-serialized-arg)[02}${:1,.5,@(y11:set-membe"
"sq)[02},.0?{.0,:4,'(c.)W0:4,'(c!)W0${:4,.3,@(y20:write-serialized-arg)" "r?)[02}?{:3,'(c^)W0}_1}{${:2,.4,@(y4:posq)[02},.0?{.0,:3,'(c:)W0${:3,."
"[02}_1}{${:3,.4,@(y4:posq)[02},.0?{.0,:4,'(c:)W0:4,'(c!)W0${:4,.3,@(y2" "3,@(y20:write-serialized-arg)[02}${:1,.6,@(y11:set-member?)[02}?{:3,'("
"0:write-serialized-arg)[02}_1}{:4,'(c@)W0:4,'(c!)W0${:4,.5,@(y20:write" "c^)W0}_1}{:3,'(c@)W0${:3,.5,@(y20:write-serialized-arg)[02}}_1}_1:4?{:"
"-serialized-arg)[02}}_1}_1:5?{:4,'(c])W0:4,:5,@(y20:write-serialized-a" "3,'(c])W0:3,:4,@(y20:write-serialized-arg)[12}]1},@(y13:apply-to-list)"
"rg)[22}]2},@(y13:apply-to-list)[72}'(y4:set&),.1aq?{.0d,.6,.8,.5,.5,&4" "[72}'(y4:set!),.1aq?{.0d,.6,.8,.5,.5,.8,.(i10),&6{%2${:4,f,:0,:1,:3,:2"
"{%1${:0,.3,@(y4:posq)[02},.0?{.0,:2,'(c.)W0${:2,.3,@(y20:write-seriali" ",.9,@(y7:codegen)[07}${:2,.3,@(y4:posq)[02},.0?{.0,:4,'(c.)W0:4,'(c!)W"
"zed-arg)[02}_1}{${:1,.4,@(y4:posq)[02},.0?{.0,:2,'(c:)W0${:2,.3,@(y20:" "0${:4,.3,@(y20:write-serialized-arg)[02}_1}{${:3,.4,@(y4:posq)[02},.0?"
"write-serialized-arg)[02}_1}{:2,'(c`)W0${:2,.5,@(y20:write-serialized-" "{.0,:4,'(c:)W0:4,'(c!)W0${:4,.3,@(y20:write-serialized-arg)[02}_1}{:4,"
"arg)[02}}_1}_1:3?{:2,'(c])W0:2,:3,@(y20:write-serialized-arg)[12}]1},@" "'(c@)W0:4,'(c!)W0${:4,.5,@(y20:write-serialized-arg)[02}}_1}_1:5?{:4,'"
"(y13:apply-to-list)[72}'(y5:begin),.1aq?{.0d,.6,.8,.4,.6,.8,.(i10),&6{" "(c])W0:4,:5,@(y20:write-serialized-arg)[22}]2},@(y13:apply-to-list)[72"
"%!0${.2,,#0.0,:3,:2,:1,:0,:4,:5,&7{%1.0p?{.0dp?{f}{:0},${:1,.3,:2,:3,:" "}'(y4:set&),.1aq?{.0d,.6,.8,.5,.5,&4{%1${:0,.3,@(y4:posq)[02},.0?{.0,:"
"4,:5,.9a,@(y7:codegen)[07}.1d,:6^[21}]1}.!0.0^_1[01}:5?{.0u}{f}?{:4,'(" "2,'(c.)W0${:2,.3,@(y20:write-serialized-arg)[02}_1}{${:1,.4,@(y4:posq)"
"c])W0:4,:5,@(y20:write-serialized-arg)[12}]1},@(y13:apply-to-list)[72}" "[02},.0?{.0,:2,'(c:)W0${:2,.3,@(y20:write-serialized-arg)[02}_1}{:2,'("
"'(y2:if),.1aq?{.0d,.6,.6,.6,.6,.6,.(i12),&6{%3${:0,f,:4,:3,:2,:1,.8,@(" "c`)W0${:2,.5,@(y20:write-serialized-arg)[02}}_1}_1:3?{:2,'(c])W0:2,:3,"
"y7:codegen)[07}:0,'(c?)W0:0,'(c{)W0${:0,:5,:4,:3,:2,:1,.9,@(y7:codegen" "@(y20:write-serialized-arg)[12}]1},@(y13:apply-to-list)[72}'(y5:begin)"
")[07}:0,'(c})W0:5?{:0,:5,:4,:3,:2,:1,.8,@(y7:codegen)[37}'(l1:y5:begin" ",.1aq?{.0d,.6,.8,.4,.6,.8,.(i10),&6{%!0${.2,,#0.0,:3,:2,:1,:0,:4,:5,&7"
";),.3e,.0?{.0]4}.3?{:0,'(c{)W0${:0,:5,:4,:3,:2,:1,.(i11),@(y7:codegen)" "{%1.0p?{.0dp?{f}{:0},${:1,.3,:2,:3,:4,:5,.9a,@(y7:codegen)[07}.1d,:6^["
"[07}:0,'(c})W0]4}f]4},@(y13:apply-to-list)[72}'(y6:lambda),.1aq?{.0d,." "21}]1}.!0.0^_1[01}:5?{.0u}{f}?{:4,'(c])W0:4,:5,@(y20:write-serialized-"
"6,.8,.7,.7,.7,.7,&6{%2${.2,@(y15:flatten-idslist)[01},${:3,${.5,.8,@(y" "arg)[12}]1},@(y13:apply-to-list)[72}'(y2:if),.1aq?{.0d,.6,.6,.6,.6,.6,"
"9:find-free)[02},@(y9:set-minus)[02},${.3,.6,@(y9:find-sets)[02},${:0," ".(i12),&6{%3${:0,f,:4,:3,:2,:1,.8,@(y7:codegen)[07}:0,'(c?)W0:0,'(c{)W"
".4A8,,#0.0,:4,:1,:3,&4{%2.0u?{]2}${:2,f,:0,n,:1,.8,.8a,'(y3:ref),l2,@(" "0${:0,:5,:4,:3,:2,:1,.9,@(y7:codegen)[07}:0,'(c})W0:5?{:0,:5,:4,:3,:2,"
"y7:codegen)[07}:2,'(c,)W0.1,fc,.1d,:3^[22}.!0.0^_1[02}:4,'(c&)W0${:4,." ":1,.8,@(y7:codegen)[37}'(l1:y5:begin;),.3e,.0?{.0]4}.3?{:0,'(c{)W0${:0"
"4g,@(y20:write-serialized-arg)[02}:4,'(c{)W0.3L0?{:4,'(c%25)W0${:4,.6g" ",:5,:4,:3,:2,:1,.(i11),@(y7:codegen)[07}:0,'(c})W0]4}f]4},@(y13:apply-"
",@(y20:write-serialized-arg)[02}}{:4,'(c%25)W0:4,'(c!)W0${:4,${.8,@(y1" "to-list)[72}'(y6:lambda),.1aq?{.0d,.6,.8,.7,.7,.7,.7,&6{%2${.2,@(y15:f"
"7:idslist-req-count)[01},@(y20:write-serialized-arg)[02}}${'0,.5,,#0.0" "latten-idslist)[01},${:3,${.5,.8,@(y9:find-free)[02},@(y9:set-minus)[0"
",.6,:4,&3{%2.0u?{]2}${:1,.3a,@(y11:set-member?)[02}?{:0,'(c#)W0${:0,.4" "2},${.3,.6,@(y9:find-sets)[02},${:0,.4A8,,#0.0,:4,:1,:3,&4{%2.0u?{]2}$"
",@(y20:write-serialized-arg)[02}}'1,.2I+,.1d,:2^[22}.!0.0^_1[02}${:4,." "{:2,f,:0,n,:1,.8,.8a,'(y3:ref),l2,@(y7:codegen)[07}:2,'(c,)W0.1,fc,.1d"
"5g,:3,${${.(i10),:2,@(y13:set-intersect)[02},.8,@(y9:set-union)[02},.7" ",:3^[22}.!0.0^_1[02}:4,'(c&)W0${:4,.4g,@(y20:write-serialized-arg)[02}"
",.9,.(i12),@(y7:codegen)[07}:4,'(c})W0_1_1_1:5?{:4,'(c])W0:4,:5,@(y20:" ":4,'(c{)W0.3L0?{:4,'(c%25)W0${:4,.6g,@(y20:write-serialized-arg)[02}}{"
"write-serialized-arg)[22}]2},@(y13:apply-to-list)[72}'(y7:lambda*),.1a" ":4,'(c%25)W0:4,'(c!)W0${:4,${.8,@(y17:idslist-req-count)[01},@(y20:wri"
"q?{.0d,.6,.8,.5,.7,.9,.7,&6{%!0${:0,.3A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]" "te-serialized-arg)[02}}${'0,.5,,#0.0,.6,:4,&3{%2.0u?{]2}${:1,.3a,@(y11"
"2}${:3,f,:0,:1,:2,.8,.8ada,@(y7:codegen)[07}:3,'(c%25)W0:3,'(cx)W0:3,'" ":set-member?)[02}?{:0,'(c#)W0${:0,.4,@(y20:write-serialized-arg)[02}}'"
"(c,)W0.1,fc,.1d,:4^[22}.!0.0^_1[02}:4,'(c&)W0${:4,.3g,@(y20:write-seri" "1,.2I+,.1d,:2^[22}.!0.0^_1[02}${:4,.5g,:3,${${.(i10),:2,@(y13:set-inte"
"alized-arg)[02}:4,'(c{)W0${'0,.3,,#0.0,:4,&2{%2.0u?{]2}.0aa,.0a,.1da,:" "rsect)[02},.8,@(y9:set-union)[02},.7,.9,.(i12),@(y7:codegen)[07}:4,'(c"
"0,'(c|)W0.0?{:0,'(c!)W0}${:0,.4,@(y20:write-serialized-arg)[02}${:0,.7" "})W0_1_1_1:5?{:4,'(c])W0:4,:5,@(y20:write-serialized-arg)[22}]2},@(y13"
",@(y20:write-serialized-arg)[02}_1_1_1'1,.2I+,.1d,:1^[22}.!0.0^_1[02}:" ":apply-to-list)[72}'(y7:lambda*),.1aq?{.0d,.6,.8,.5,.7,.9,.7,&6{%!0${:"
"4,'(c%25)W0:4,'(c%25)W0:4,'(c})W0:5?{:4,'(c])W0:4,:5,@(y20:write-seria" "0,.3A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8ada,@(y7:co"
"lized-arg)[12}]1},@(y13:apply-to-list)[72}'(y5:letcc),.1aq?{.0d,.4,.7," "degen)[07}:3,'(c%25)W0:3,'(cx)W0:3,'(c,)W0.1,fc,.1d,:4^[22}.!0.0^_1[02"
".7,.6,.6,.(i12),&6{%2.0,l1,${.2,.5,@(y9:find-sets)[02},${.2,${.6,:5,@(" "}:4,'(c&)W0${:4,.3g,@(y20:write-serialized-arg)[02}:4,'(c{)W0${'0,.3,,"
"y9:set-minus)[02},@(y9:set-union)[02},:4?{:0,'(ck)W0${:0,:4,@(y20:writ" "#0.0,:4,&2{%2.0u?{]2}.0aa,.0a,.1da,:0,'(c|)W0.0?{:0,'(c!)W0}${:0,.4,@("
"e-serialized-arg)[02}:0,'(c,)W0${.3,.6,@(y11:set-member?)[02}?{:0,'(c#" "y20:write-serialized-arg)[02}${:0,.7,@(y20:write-serialized-arg)[02}_1"
")W0:0,'(c0)W0}:0,'1,:4I+,:3,.3,:2,:1,.9c,.(i10),@(y7:codegen)[57}:0,'(" "_1_1'1,.2I+,.1d,:1^[22}.!0.0^_1[02}:4,'(c%25)W0:4,'(c%25)W0:4,'(c})W0:"
"c$)W0:0,'(c{)W0:0,'(ck)W0:0,'(c0)W0:0,'(c,)W0${.3,.6,@(y11:set-member?" "5?{:4,'(c])W0:4,:5,@(y20:write-serialized-arg)[12}]1},@(y13:apply-to-l"
")[02}?{:0,'(c#)W0:0,'(c0)W0}${:0,f,:3,.5,:2,:1,fc,fc,.(i11)c,.(i12),@(" "ist)[72}'(y5:letcc),.1aq?{.0d,.4,.7,.7,.6,.6,.(i12),&6{%2.0,l1,${.2,.5"
"y7:codegen)[07}:0,'(c_)W0${:0,'3,@(y20:write-serialized-arg)[02}:0,'(c" ",@(y9:find-sets)[02},${.2,${.6,:5,@(y9:set-minus)[02},@(y9:set-union)["
"})W0]5},@(y13:apply-to-list)[72}'(y6:withcc),.1aq?{.0d,.7,.3,.5,.7,.9," "02},:4?{:0,'(ck)W0${:0,:4,@(y20:write-serialized-arg)[02}:0,'(c,)W0${."
"&5{%2'(l3:y5:quote;y3:ref;y6:lambda;),.2aA0?{${:4,f,:0,:1,:2,:3,.9,@(y" "3,.6,@(y11:set-member?)[02}?{:0,'(c#)W0:0,'(c0)W0}:0,'1,:4I+,:3,.3,:2,"
"7:codegen)[07}:4,'(c,)W0${:4,f,:0,:1,:2,:3,fc,.8,@(y7:codegen)[07}:4,'" ":1,.9c,.(i10),@(y7:codegen)[57}:0,'(c$)W0:0,'(c{)W0:0,'(ck)W0:0,'(c0)W"
"(cw)W0:4,'(c!)W0]2}${:4,f,:0,:1,:2,:3,.9,n,'(y6:lambda),l3,@(y7:codege" "0:0,'(c,)W0${.3,.6,@(y11:set-member?)[02}?{:0,'(c#)W0:0,'(c0)W0}${:0,f"
"n)[07}:4,'(c,)W0${:4,f,:0,:1,:2,:3,fc,.8,@(y7:codegen)[07}:4,'(cw)W0]2" ",:3,.5,:2,:1,fc,fc,.(i11)c,.(i12),@(y7:codegen)[07}:0,'(c_)W0${:0,'3,@"
"},@(y13:apply-to-list)[72}'(y10:integrable),.1aq?{.0d,.6,.8,.5,.7,.9,." "(y20:write-serialized-arg)[02}:0,'(c})W0]5},@(y13:apply-to-list)[72}'("
"7,&6{%!1'0,.2U8,.2U6,.0,'(l4:c0;c1;c2;c3;),.1A1?{${:0,.6A8,,#0.0,:4,:3" "y6:withcc),.1aq?{.0d,.7,.3,.5,.7,.9,&5{%2'(l3:y5:quote;y3:ref;y6:lambd"
",:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}.0du~?{:3," "a;),.2aA0?{${:4,f,:0,:1,:2,:3,.9,@(y7:codegen)[07}:4,'(c,)W0${:4,f,:0,"
"'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1[02}${:4,.5,@(y12:write-string)[02}}{" ":1,:2,:3,fc,.8,@(y7:codegen)[07}:4,'(cw)W0:4,'(c!)W0]2}${:4,f,:0,:1,:2"
"'(cp),.1v?{.3u?{'1,.5U8,${:4,.3,@(y12:write-string)[02}_1}{'1,.4gI-,${" ",:3,.9,n,'(y6:lambda),l3,@(y7:codegen)[07}:4,'(c,)W0${:4,f,:0,:1,:2,:3"
":0,.7A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:cod" ",fc,.8,@(y7:codegen)[07}:4,'(cw)W0]2},@(y13:apply-to-list)[72}'(y10:in"
"egen)[07}.0du~?{:3,'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1[02}${'0,,#0.0,.8," "tegrable),.1aq?{.0d,.6,.8,.5,.7,.9,.7,&6{%!1'0,.2U8,.2U6,.0,'(l4:c0;c1"
":4,.7,&4{%1:0,.1I<!?{]1}${:1,:2,@(y12:write-string)[02}'1,.1I+,:3^[11}" ";c2;c3;),.1A1?{${:0,.6A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:"
".!0.0^_1[01}_1}}{'(cm),.1v?{.3du?{'1,.5U8,${:4,f,:1,:2,:3,:0,.(i12)a,@" "2,.8,.8a,@(y7:codegen)[07}.0du~?{:3,'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1["
"(y7:codegen)[07}${:4,.3,@(y12:write-string)[02}_1}{'1,.4gI-,${:0,.7A8," "02}${:4,.5,@(y12:write-string)[02}}{'(cp),.1v?{.3u?{'1,.5U8,${:4,.3,@("
",#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07" "y12:write-string)[02}_1}{'1,.4gI-,${:0,.7A8,,#0.0,:4,:3,:2,:1,&5{%2.0u"
"}.0du~?{:3,'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1[02}${'0,,#0.0,.8,:4,.7,&4" "?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}.0du~?{:3,'(c,)W0}.1,fc,."
"{%1:0,.1I<!?{]1}${:1,:2,@(y12:write-string)[02}'1,.1I+,:3^[11}.!0.0^_1" "1d,:4^[22}.!0.0^_1[02}${'0,,#0.0,.8,:4,.7,&4{%1:0,.1I<!?{]1}${:1,:2,@("
"[01}_1}}{'(cc),.1v?{.3A8,'1,.5gI-,${:4,f,:1,:2,:3,:0,.9a,@(y7:codegen)" "y12:write-string)[02}'1,.1I+,:3^[11}.!0.0^_1[01}_1}}{'(cm),.1v?{.3du?{"
"[07}:4,'(c,)W0${:0,fc,.4d,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1," "'1,.5U8,${:4,f,:1,:2,:3,:0,.(i12)a,@(y7:codegen)[07}${:4,.3,@(y12:writ"
":2,.8,.8a,@(y7:codegen)[07}.0du~?{:3,'(c,)W0:3,'(c,)W0}.1,fc,fc,.1d,:4" "e-string)[02}_1}{'1,.4gI-,${:0,.7A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:"
"^[22}.!0.0^_1[02}${'0,,#0.0,.9,:4,.7,&4{%1:0,.1I<!?{]1}.0I=0~?{:1,'(c;" "3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}.0du~?{:3,'(c,)W0}.1,fc,.1d,:4^[2"
")W0}${:1,:2,@(y12:write-string)[02}'1,.1I+,:3^[11}.!0.0^_1[01}_2}{'(cx" "2}.!0.0^_1[02}${'0,,#0.0,.8,:4,.7,&4{%1:0,.1I<!?{]1}${:1,:2,@(y12:writ"
"),.1v?{'1,.4gI-,${:0,.7A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1," "e-string)[02}'1,.1I+,:3^[11}.!0.0^_1[01}_1}}{'(cc),.1v?{.3A8,'1,.5gI-,"
":2,.8,.8a,@(y7:codegen)[07}.0du~?{:3,'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1" "${:4,f,:1,:2,:3,:0,.9a,@(y7:codegen)[07}:4,'(c,)W0${:0,fc,.4d,,#0.0,:4"
"[02}${'0,,#0.0,.8,:4,.7,&4{%1:0,.1I<!?{]1}${:1,:2,@(y12:write-string)[" ",:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}.0du~?{"
"02}'1,.1I+,:3^[11}.!0.0^_1[01}_1}{'(cu),.1v?{.3u?{${:4,'1,.8U8,@(y12:w" ":3,'(c,)W0:3,'(c,)W0}.1,fc,fc,.1d,:4^[22}.!0.0^_1[02}${'0,,#0.0,.9,:4,"
"rite-string)[02}}{${:4,f,:1,:2,:3,:0,.(i11)a,@(y7:codegen)[07}}${:4,.5" ".7,&4{%1:0,.1I<!?{]1}.0I=0~?{:1,'(c;)W0}${:1,:2,@(y12:write-string)[02"
",@(y12:write-string)[02}}{'(cb),.1v?{.3du?{${:4,'1,.8U8,@(y12:write-st" "}'1,.1I+,:3^[11}.!0.0^_1[01}_2}{'(cx),.1v?{'1,.4gI-,${:0,.7A8,,#0.0,:4"
"ring)[02}}{${:4,f,:1,:2,:3,:0,.(i11)da,@(y7:codegen)[07}}:4,'(c,)W0${:" ",:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}.0du~?{"
"4,f,:1,:2,:3,:0,fc,.(i11)a,@(y7:codegen)[07}${:4,.5,@(y12:write-string" ":3,'(c,)W0}.1,fc,.1d,:4^[22}.!0.0^_1[02}${'0,,#0.0,.8,:4,.7,&4{%1:0,.1"
")[02}}{'(ct),.1v?{.3ddu?{${:4,'1,.8U8,@(y12:write-string)[02}}{${:4,f," "I<!?{]1}${:1,:2,@(y12:write-string)[02}'1,.1I+,:3^[11}.!0.0^_1[01}_1}{"
":1,:2,:3,:0,.(i11)dda,@(y7:codegen)[07}}:4,'(c,)W0${:4,f,:1,:2,:3,:0,f" "'(cu),.1v?{.3u?{${:4,'1,.8U8,@(y12:write-string)[02}}{${:4,f,:1,:2,:3,"
"c,.(i11)da,@(y7:codegen)[07}:4,'(c,)W0${:4,f,:1,:2,:3,:0,fc,fc,.(i11)a" ":0,.(i11)a,@(y7:codegen)[07}}${:4,.5,@(y12:write-string)[02}}{'(cb),.1"
",@(y7:codegen)[07}${:4,.5,@(y12:write-string)[02}}{'(c#),.1v?{${:0,.6A" "v?{.3du?{${:4,'1,.8U8,@(y12:write-string)[02}}{${:4,f,:1,:2,:3,:0,.(i1"
"8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[" "1)da,@(y7:codegen)[07}}:4,'(c,)W0${:4,f,:1,:2,:3,:0,fc,.(i11)a,@(y7:co"
"07}:3,'(c,)W0.1,fc,.1d,:4^[22}.!0.0^_1[02}${:4,.5,@(y12:write-string)[" "degen)[07}${:4,.5,@(y12:write-string)[02}}{'(ct),.1v?{.3ddu?{${:4,'1,."
"02}${:4,.6g,@(y20:write-serialized-arg)[02}}{${.3,'(s27:unsupported in" "8U8,@(y12:write-string)[02}}{${:4,f,:1,:2,:3,:0,.(i11)dda,@(y7:codegen"
"tegrable type),@(y7:c-error)[02}}}}}}}}}}_1_2:5?{:4,'(c])W0:4,:5,@(y20" ")[07}}:4,'(c,)W0${:4,f,:1,:2,:3,:0,fc,.(i11)da,@(y7:codegen)[07}:4,'(c"
":write-serialized-arg)[22}]2},@(y13:apply-to-list)[72}'(y4:call),.1aq?" ",)W0${:4,f,:1,:2,:3,:0,fc,fc,.(i11)a,@(y7:codegen)[07}${:4,.5,@(y12:wr"
"{.0d,.7,.4,.6,.8,.6,.(i11),&6{%!1'(y6:lambda),.2aq?{.1daL0?{.1dag,.1gI" "ite-string)[02}}{'(c#),.1v?{${:0,.6A8,,#0.0,:4,:3,:2,:1,&5{%2.0u?{]2}$"
"=}{f}}{f}?{${:1,.3A8,,#0.0,:5,:4,:3,:2,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8" "{:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}:3,'(c,)W0.1,fc,.1d,:4^[22}.!0."
",.8a,@(y7:codegen)[07}:3,'(c,)W0.1,fc,.1d,:4^[22}.!0.0^_1[02}.1da,.2dd" "0^_1[02}${:4,.5,@(y12:write-string)[02}${:4,.6g,@(y20:write-serialized"
"a,${.3,.3,@(y9:find-sets)[02},${.2,${.7,:3,@(y9:set-minus)[02},@(y9:se" "-arg)[02}}{${.3,'(s27:unsupported integrable type),@(y7:c-error)[02}}}"
"t-union)[02},:1,.4L6,${'0,.7,,#0.0,.8,:5,&3{%2.0u?{]2}${:1,.3a,@(y11:s" "}}}}}}}_1_2:5?{:4,'(c])W0:4,:5,@(y20:write-serialized-arg)[22}]2},@(y1"
"et-member?)[02}?{:0,'(c#)W0${:0,.4,@(y20:write-serialized-arg)[02}}'1," "3:apply-to-list)[72}'(y4:call),.1aq?{.0d,.7,.4,.6,.8,.6,.(i11),&6{%!1'"
".2I+,.1d,:2^[22}.!0.0^_1[02}:0?{:5,.6g,:0I+,:2,.4,:4,.5,.9,@(y7:codege" "(y6:lambda),.2aq?{.1daL0?{.1dag,.1gI=}{f}}{f}?{${:1,.3A8,,#0.0,:5,:4,:"
"n)[77}${:5,f,:2,.6,:4,.7,.(i11),@(y7:codegen)[07}:5,'(c_)W0:5,.6g,@(y2" "3,:2,&5{%2.0u?{]2}${:3,f,:0,:1,:2,.8,.8a,@(y7:codegen)[07}:3,'(c,)W0.1"
"0:write-serialized-arg)[72}:0?{${:1,.3A8,,#0.0,:5,:4,:3,:2,.(i11),&6{%" ",fc,.1d,:4^[22}.!0.0^_1[02}.1da,.2dda,${.3,.3,@(y9:find-sets)[02},${.2"
"2.0u?{:4,f,:1,:2,:3,.6,:0,@(y7:codegen)[27}${:4,f,:1,:2,:3,.8,.8a,@(y7" ",${.7,:3,@(y9:set-minus)[02},@(y9:set-union)[02},:1,.4L6,${'0,.7,,#0.0"
":codegen)[07}:4,'(c,)W0.1,fc,.1d,:5^[22}.!0.0^_1[02}:5,'(c[)W0${:5,:0," ",.8,:5,&3{%2.0u?{]2}${:1,.3a,@(y11:set-member?)[02}?{:0,'(c#)W0${:0,.4"
"@(y20:write-serialized-arg)[02}:5,.1g,@(y20:write-serialized-arg)[22}:" ",@(y20:write-serialized-arg)[02}}'1,.2I+,.1d,:2^[22}.!0.0^_1[02}:0?{:5"
"5,'(c$)W0:5,'(c{)W0${:1,fc,fc,.3A8,,#0.0,:5,:4,:3,:2,.(i11),&6{%2.0u?{" ",.6g,:0I+,:2,.4,:4,.5,.9,@(y7:codegen)[77}${:5,f,:2,.6,:4,.7,.(i11),@("
":4,f,:1,:2,:3,.6,:0,@(y7:codegen)[27}${:4,f,:1,:2,:3,.8,.8a,@(y7:codeg" "y7:codegen)[07}:5,'(c_)W0:5,.6g,@(y20:write-serialized-arg)[72}:0?{${:"
"en)[07}:4,'(c,)W0.1,fc,.1d,:5^[22}.!0.0^_1[02}:5,'(c[)W0${:5,'0,@(y20:" "1,.3A8,,#0.0,:5,:4,:3,:2,.(i11),&6{%2.0u?{:4,f,:1,:2,:3,.6,:0,@(y7:cod"
"write-serialized-arg)[02}${:5,.3g,@(y20:write-serialized-arg)[02}:5,'(" "egen)[27}${:4,f,:1,:2,:3,.8,.8a,@(y7:codegen)[07}:4,'(c,)W0.1,fc,.1d,:"
"c})W0]2},@(y13:apply-to-list)[72}'(y3:asm),.1aq?{.0d,.6,.8,&2{%1${:0,." "5^[22}.!0.0^_1[02}:5,'(c[)W0${:5,:0,@(y20:write-serialized-arg)[02}:5,"
"3,@(y12:write-string)[02}:1?{:0,'(c])W0:0,:1,@(y20:write-serialized-ar" ".1g,@(y20:write-serialized-arg)[22}:5,'(c$)W0:5,'(c{)W0${:1,fc,fc,.3A8"
"g)[12}]1},@(y13:apply-to-list)[72}'(y4:once),.1aq?{.0d,.7,.7,.7,.7,.7," ",,#0.0,:5,:4,:3,:2,.(i11),&6{%2.0u?{:4,f,:1,:2,:3,.6,:0,@(y7:codegen)["
".7,&6{%2:5,:4,:3,:2,:1,:0,n,n,.9c,n,n,tc,'(y5:quote)cc,.9c,'(y4:set!)c" "27}${:4,f,:1,:2,:3,.8,.8a,@(y7:codegen)[07}:4,'(c,)W0.1,fc,.1d,:5^[22}"
"c,'(y5:begin)cc,n,'(y5:begin)cc,n,n,tc,'(y5:quote)cc,n,.9c,'(y3:ref)cc" ".!0.0^_1[02}:5,'(c[)W0${:5,'0,@(y20:write-serialized-arg)[02}${:5,.3g,"
",'(y3:eq?)U5c,'(y10:integrable)cc,'(y2:if)c,@(y7:codegen)[27},@(y13:ap" "@(y20:write-serialized-arg)[02}:5,'(c})W0]2},@(y13:apply-to-list)[72}'"
"ply-to-list)[72}'(l2:y6:define;y13:define-syntax;),.1aA0?{.0d,.1,&1{%!" "(y3:asm),.1aq?{.0d,.6,.8,&2{%1${:0,.3,@(y12:write-string)[02}:1?{:0,'("
"0:0,'(s25:misplaced definition form),@(y7:c-error)[12},@(y13:apply-to-" "c])W0:0,:1,@(y20:write-serialized-arg)[12}]1},@(y13:apply-to-list)[72}"
"list)[72}'(y16:record-case-miss)]7", "'(y4:once),.1aq?{.0d,.7,.7,.7,.7,.7,.7,&6{%2:5,:4,:3,:2,:1,:0,n,n,.9c,"
"n,n,tc,'(y5:quote)cc,.9c,'(y5:gset!)cc,'(y5:begin)cc,n,'(y5:begin)cc,n"
",n,tc,'(y5:quote)cc,n,.9c,'(y4:gref)cc,'(y3:eq?)U5c,'(y10:integrable)c"
"c,'(y2:if)c,@(y7:codegen)[27},@(y13:apply-to-list)[72}'(l2:y6:define;y"
"13:define-syntax;),.1aA0?{.0d,.1,&1{%!0:0,'(s25:misplaced definition f"
"orm),@(y7:c-error)[12},@(y13:apply-to-list)[72}'(y16:record-case-miss)"
"]7",
"P", "compile-to-string", "P", "compile-to-string",
"%1P51,${.2,f,${n,.8,@(y9:find-free)[02},n,n,n,.9,@(y7:codegen)[07}.0P9" "%1P51,${.2,f,${n,.8,@(y9:find-free)[02},n,n,n,.9,@(y7:codegen)[07}.0P9"