fez-lisp
Version:
Lisp interpreted & compiled to JavaScript
1 lines • 197 kB
JavaScript
export default [[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"char:A"],[2,65]],[[0,"let"],[1,"char:B"],[2,66]],[[0,"let"],[1,"char:C"],[2,67]],[[0,"let"],[1,"char:D"],[2,68]],[[0,"let"],[1,"char:E"],[2,69]],[[0,"let"],[1,"char:F"],[2,70]],[[0,"let"],[1,"char:G"],[2,71]],[[0,"let"],[1,"char:H"],[2,72]],[[0,"let"],[1,"char:I"],[2,73]],[[0,"let"],[1,"char:J"],[2,74]],[[0,"let"],[1,"char:K"],[2,75]],[[0,"let"],[1,"char:L"],[2,76]],[[0,"let"],[1,"char:M"],[2,77]],[[0,"let"],[1,"char:N"],[2,78]],[[0,"let"],[1,"char:O"],[2,79]],[[0,"let"],[1,"char:P"],[2,80]],[[0,"let"],[1,"char:Q"],[2,81]],[[0,"let"],[1,"char:R"],[2,82]],[[0,"let"],[1,"char:S"],[2,83]],[[0,"let"],[1,"char:T"],[2,84]],[[0,"let"],[1,"char:U"],[2,85]],[[0,"let"],[1,"char:V"],[2,86]],[[0,"let"],[1,"char:W"],[2,87]],[[0,"let"],[1,"char:X"],[2,88]],[[0,"let"],[1,"char:Y"],[2,89]],[[0,"let"],[1,"char:Z"],[2,90]],[[0,"let"],[1,"char:a"],[2,97]],[[0,"let"],[1,"char:b"],[2,98]],[[0,"let"],[1,"char:c"],[2,99]],[[0,"let"],[1,"char:d"],[2,100]],[[0,"let"],[1,"char:e"],[2,101]],[[0,"let"],[1,"char:f"],[2,102]],[[0,"let"],[1,"char:g"],[2,103]],[[0,"let"],[1,"char:h"],[2,104]],[[0,"let"],[1,"char:i"],[2,105]],[[0,"let"],[1,"char:j"],[2,106]],[[0,"let"],[1,"char:k"],[2,107]],[[0,"let"],[1,"char:l"],[2,108]],[[0,"let"],[1,"char:m"],[2,109]],[[0,"let"],[1,"char:n"],[2,110]],[[0,"let"],[1,"char:o"],[2,111]],[[0,"let"],[1,"char:p"],[2,112]],[[0,"let"],[1,"char:q"],[2,113]],[[0,"let"],[1,"char:r"],[2,114]],[[0,"let"],[1,"char:s"],[2,115]],[[0,"let"],[1,"char:t"],[2,116]],[[0,"let"],[1,"char:u"],[2,117]],[[0,"let"],[1,"char:v"],[2,118]],[[0,"let"],[1,"char:w"],[2,119]],[[0,"let"],[1,"char:x"],[2,120]],[[0,"let"],[1,"char:y"],[2,121]],[[0,"let"],[1,"char:z"],[2,122]],[[0,"let"],[1,"char:0"],[2,48]],[[0,"let"],[1,"char:1"],[2,49]],[[0,"let"],[1,"char:2"],[2,50]],[[0,"let"],[1,"char:3"],[2,51]],[[0,"let"],[1,"char:4"],[2,52]],[[0,"let"],[1,"char:5"],[2,53]],[[0,"let"],[1,"char:6"],[2,54]],[[0,"let"],[1,"char:7"],[2,55]],[[0,"let"],[1,"char:8"],[2,56]],[[0,"let"],[1,"char:9"],[2,57]],[[0,"let"],[1,"char:empty"],[2,0]],[[0,"let"],[1,"char:double-quote"],[2,34]],[[0,"let"],[1,"char:new-line"],[2,10]],[[0,"let"],[1,"char:space"],[2,32]],[[0,"let"],[1,"char:comma"],[2,44]],[[0,"let"],[1,"char:dot"],[2,46]],[[0,"let"],[1,"char:semi-colon"],[2,59]],[[0,"let"],[1,"char:colon"],[2,58]],[[0,"let"],[1,"char:dash"],[2,45]],[[0,"let"],[1,"char:left-brace"],[2,40]],[[0,"let"],[1,"char:right-brace"],[2,41]],[[0,"let"],[1,"char:curly-left-brace"],[2,123]],[[0,"let"],[1,"char:curly-right-brace"],[2,125]],[[0,"let"],[1,"char:left-bracket"],[2,91]],[[0,"let"],[1,"char:right-bracket"],[2,93]],[[0,"let"],[1,"char:pipe"],[2,124]],[[0,"let"],[1,"char:hash"],[2,35]],[[0,"let"],[1,"char:question-mark"],[2,63]],[[0,"let"],[1,"char:exclamation-mark"],[2,33]],[[0,"let"],[1,"char:minus"],[2,45]],[[0,"let"],[1,"char:plus"],[2,43]],[[0,"let"],[1,"char:equal"],[2,61]],[[0,"let"],[1,"char:asterix"],[2,42]],[[0,"let"],[1,"char:ampersand"],[2,38]],[[0,"let"],[1,"char:at"],[2,64]],[[0,"let"],[1,"char:backtick"],[2,96]],[[0,"let"],[1,"char:digit?"],[[0,"lambda"],[1,"ch"],[[0,"and"],[[0,">="],[1,"ch"],[1,"char:0"]],[[0,"<="],[1,"ch"],[1,"char:9"]]]]],[[0,"let"],[1,"char:upper"],[[0,"lambda"],[1,"char"],[[0,"if"],[[0,"and"],[[0,">="],[1,"char"],[1,"char:a"]],[[0,"<="],[1,"char"],[1,"char:z"]]],[[0,"-"],[1,"char"],[2,32]],[1,"char"]]]],[[0,"let"],[1,"char:lower"],[[0,"lambda"],[1,"char"],[[0,"if"],[[0,"and"],[[0,">="],[1,"char"],[1,"char:A"]],[[0,"<="],[1,"char"],[1,"char:Z"]]],[[0,"+"],[1,"char"],[2,32]],[1,"char"]]]],[[0,"let"],[1,"nil"],[2,0]],[[0,"let"],[1,"identity"],[[0,"lambda"],[1,"x"],[1,"x"]]],[[0,"let"],[1,"Scope"],[2,1]],[[0,"let"],[1,"Special"],[2,1]],[[0,"let"],[1,"Library"],[2,1]],[[0,"let"],[1,"Type"],[2,1]],[[0,"let"],[1,"Search"],[2,1]],[[0,"let"],[1,"truthy?"],[[0,"lambda"],[1,"x"],[[0,"if"],[[0,"atom?"],[1,"x"]],[[0,"not"],[[0,"="],[[0,"Any"],[1,"x"]],[2,0]]],[[0,"if"],[[0,"array?"],[1,"x"]],[[0,">"],[[0,"length"],[[0,"Any"],[1,"x"]]],[2,0]],[[0,"if"],[[0,"not"],[2,0]],[2,1],[[0,"Any"],[1,"nil"]]]]]]],[[0,"let"],[1,"falsy?"],[[0,"lambda"],[1,"x"],[[0,"if"],[[0,"atom?"],[1,"x"]],[[0,"="],[[0,"Any"],[1,"x"]],[2,0]],[[0,"if"],[[0,"array?"],[1,"x"]],[[0,"="],[[0,"length"],[[0,"Any"],[1,"x"]]],[2,0]],[[0,"if"],[[0,"not"],[2,0]],[2,0],[[0,"Any"],[1,"nil"]]]]]]],[[0,"let"],[1,"true?"],[[0,"lambda"],[1,"x"],[[0,"and"],[[0,"atom?"],[1,"x"]],[[0,"="],[[0,"Any"],[1,"x"]],[2,1]]]]],[[0,"let"],[1,"false?"],[[0,"lambda"],[1,"x"],[[0,"and"],[[0,"atom?"],[1,"x"]],[[0,"="],[[0,"Any"],[1,"x"]],[2,0]]]]],[[0,"let"],[1,"true"],[[0,"not"],[2,0]]],[[0,"let"],[1,"false"],[[0,"not"],[2,1]]],[[0,"let"],[1,"one"],[2,1]],[[0,"let"],[1,"zero"],[2,0]],[[0,"let"],[1,"math:e"],[2,2.718281828459045]],[[0,"let"],[1,"math:pi"],[2,3.141592653589793]],[[0,"let"],[1,"math:min-safe-integer"],[2,-9007199254740991]],[[0,"let"],[1,"math:max-safe-integer"],[2,9007199254740991]],[[0,"let"],[1,"math:decimal-scaling"],[2,1000000000000]],[[0,"let"],[1,"pair:apply"],[[0,"lambda"],[1,"x"],[1,"cb"],[[0,"cb"],[[0,"array:first"],[1,"x"]],[[0,"array:second"],[1,"x"]]]]],[[0,"let"],[1,"pair:fork-apply"],[[0,"lambda"],[1,"pair"],[1,"cb1"],[1,"cb2"],[[0,"array"],[[0,"cb1"],[[0,"array:first"],[1,"pair"]]],[[0,"cb2"],[[0,"array:second"],[1,"pair"]]]]]],[[0,"let"],[1,"pair:add"],[[0,"lambda"],[1,"x"],[[0,"+"],[[0,"array:first"],[1,"x"]],[[0,"array:second"],[1,"x"]]]]],[[0,"let"],[1,"pair:subtract"],[[0,"lambda"],[1,"x"],[[0,"-"],[[0,"array:first"],[1,"x"]],[[0,"array:second"],[1,"x"]]]]],[[0,"let"],[1,"pair:multiply"],[[0,"lambda"],[1,"x"],[[0,"*"],[[0,"array:first"],[1,"x"]],[[0,"array:second"],[1,"x"]]]]],[[0,"let"],[1,"pair:divide"],[[0,"lambda"],[1,"x"],[[0,"/"],[[0,"array:first"],[1,"x"]],[[0,"array:second"],[1,"x"]]]]],[[0,"let"],[1,"pair:swap"],[[0,"lambda"],[1,"x"],[[0,"array"],[[0,"array:second"],[1,"x"]],[[0,"array:first"],[1,"x"]]]]],[[0,"let"],[1,"pair:duplicate"],[[0,"lambda"],[1,"x"],[[0,"array:transform"],[[0,"array"],[1,"x"]],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"array:merge"],[1,"a"],[[0,"array:append!"],[1,"a"],[1,"b"]]]],[[0,"array"]]]]],[[0,"let"],[1,"pair:swap!"],[[0,"lambda"],[1,"x"],[[0,"do"],[[0,"let"],[1,"temp"],[[0,"array:first"],[1,"x"]]],[[0,"set!"],[1,"x"],[2,0],[[0,"array:second"],[1,"x"]]],[[0,"set!"],[1,"x"],[2,1],[1,"temp"]]]]],[[0,"let"],[1,"pair:unzip"],[[0,"lambda"],[1,"xs"],[[0,"array:unzip"],[1,"xs"]]]],[[0,"let"],[1,"pair:zip"],[[0,"lambda"],[1,"xs"],[[0,"array:zip"],[[0,"array:first"],[1,"xs"]],[[0,"array:second"],[1,"xs"]]]]],[[0,"let"],[1,"pair:list-zip"],[[0,"lambda"],[1,"xs"],[[0,"list:zip"],[[0,"list:head"],[1,"xs"]],[[0,"list:head"],[[0,"list:tail"],[1,"xs"]]]]]],[[0,"let"],[1,"pair:list-unzip"],[[0,"lambda"],[1,"xs"],[[0,"list:unzip"],[1,"xs"]]]],[[0,"let"],[1,"math:range"],[[0,"lambda"],[1,"start"],[1,"end"],[[0,"do"],[[0,"let"],[1,"tail-call:math:range"],[[0,"lambda"],[1,"out"],[1,"count"],[[0,"if"],[[0,"<="],[1,"count"],[1,"end"]],[[0,"tail-call:math:range"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[1,"count"]],[[0,"+"],[1,"count"],[2,1]]],[1,"out"]]]],[[0,"tail-call:math:range"],[[0,"array"]],[1,"start"]]]]],[[0,"let"],[1,"math:sequence"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"end"],[[0,"length"],[1,"xs"]]],[[0,"let"],[1,"tail-call:math:sequence"],[[0,"lambda"],[1,"out"],[1,"count"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"out"]],[1,"end"]],[[0,"tail-call:math:sequence"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[1,"count"]],[[0,"+"],[1,"count"],[2,1]]],[1,"out"]]]],[[0,"tail-call:math:sequence"],[[0,"array"]],[2,0]]]]],[[0,"let"],[1,"math:sequence-n"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"tail-call:sequence-n"],[[0,"lambda"],[1,"out"],[1,"count"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"out"]],[1,"n"]],[[0,"tail-call:sequence-n"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[1,"count"]],[[0,"+"],[1,"count"],[2,1]]],[1,"out"]]]],[[0,"tail-call:sequence-n"],[[0,"array"]],[2,0]]]]],[[0,"let"],[1,"math:zeroes"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"tail-call:math:zeroes"],[[0,"lambda"],[1,"out"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"out"]],[1,"n"]],[[0,"tail-call:math:zeroes"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[2,0]]],[1,"out"]]]],[[0,"tail-call:math:zeroes"],[[0,"array"]]]]]],[[0,"let"],[1,"math:ones"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"tail-call:math:ones"],[[0,"lambda"],[1,"out"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"out"]],[1,"n"]],[[0,"tail-call:math:ones"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[2,1]]],[1,"out"]]]],[[0,"tail-call:math:ones"],[[0,"array"]]]]]],[[0,"let"],[1,"math:numbers"],[[0,"lambda"],[1,"n"],[1,"num"],[[0,"do"],[[0,"let"],[1,"tail-call:math:numbers"],[[0,"lambda"],[1,"out"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"out"]],[1,"n"]],[[0,"tail-call:math:numbers"],[[0,"set!"],[1,"out"],[[0,"length"],[1,"out"]],[1,"num"]]],[1,"out"]]]],[[0,"tail-call:math:numbers"],[[0,"array"]]]]]],[[0,"let"],[1,"math:between?"],[[0,"lambda"],[1,"v"],[1,"min"],[1,"max"],[[0,"and"],[[0,">"],[1,"v"],[1,"min"]],[[0,"<"],[1,"v"],[1,"max"]]]]],[[0,"let"],[1,"math:overlap?"],[[0,"lambda"],[1,"v"],[1,"min"],[1,"max"],[[0,"and"],[[0,">="],[1,"v"],[1,"min"]],[[0,"<="],[1,"v"],[1,"max"]]]]],[[0,"let"],[1,"math:bionomial-coefficient"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"/"],[[0,"math:factorial"],[1,"a"]],[[0,"*"],[[0,"math:factorial"],[1,"b"]],[[0,"math:factorial"],[[0,"-"],[1,"a"],[1,"b"]]]]]]],[[0,"let"],[1,"math:number-of-permutations"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"/"],[[0,"math:factorial"],[1,"a"]],[[0,"math:factorial"],[[0,"-"],[1,"a"],[1,"b"]]]]]],[[0,"let"],[1,"math:permutations"],[[0,"lambda"],[1,"xs"],[[0,"if"],[[0,">"],[[0,"length"],[1,"xs"]],[2,0]],[[0,"array:flat-one"],[[0,"array:enumerated-map"],[1,"xs"],[[0,"lambda"],[1,"x"],[1,"i"],[[0,"array:map"],[[0,"math:permutations"],[[0,"array:enumerated-exclude"],[1,"xs"],[[0,"lambda"],[1,"."],[1,"j"],[[0,"="],[1,"i"],[1,"j"]]]]],[[0,"lambda"],[1,"vs"],[[0,"array:merge"],[[0,"array"],[1,"x"]],[1,"vs"]]]]]]],[[0,"array"],[[0,"array"]]]]]],[[0,"let"],[1,"math:combinations"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"out"],[[0,"array"]]],[[0,"let"],[1,"combinations"],[[0,"lambda"],[1,"arr"],[1,"size"],[1,"start"],[1,"temp"],[[0,"if"],[[0,"="],[[0,"length"],[1,"temp"]],[1,"size"]],[[0,"array:push!"],[1,"out"],[[0,"array:shallow-copy"],[1,"temp"]]],[[0,"loop:for-range"],[1,"start"],[[0,"length"],[1,"arr"]],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"array:push!"],[1,"temp"],[[0,"get"],[1,"arr"],[1,"i"]]],[[0,"combinations"],[1,"arr"],[1,"size"],[[0,"+"],[1,"i"],[2,1]],[1,"temp"]],[[0,"array:pop!"],[1,"temp"]]]]]]]],[[0,"loop:for-range"],[2,1],[[0,"+"],[2,1],[[0,"length"],[1,"xs"]]],[[0,"lambda"],[1,"i"],[[0,"combinations"],[1,"xs"],[1,"i"],[2,0],[[0,"array"]]]]],[1,"out"]]]],[[0,"let"],[1,"math:combinations-n"],[[0,"lambda"],[1,"xs"],[1,"n"],[[0,"do"],[[0,"let"],[1,"out"],[[0,"array"]]],[[0,"let"],[1,"combinations"],[[0,"lambda"],[1,"arr"],[1,"size"],[1,"start"],[1,"temp"],[[0,"if"],[[0,"="],[[0,"length"],[1,"temp"]],[1,"size"]],[[0,"array:push!"],[1,"out"],[[0,"array:shallow-copy"],[1,"temp"]]],[[0,"loop:for-range"],[1,"start"],[[0,"length"],[1,"arr"]],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"array:push!"],[1,"temp"],[[0,"get"],[1,"arr"],[1,"i"]]],[[0,"combinations"],[1,"arr"],[1,"size"],[[0,"+"],[1,"i"],[2,1]],[1,"temp"]],[[0,"array:pop!"],[1,"temp"]]]]]]]],[[0,"combinations"],[1,"xs"],[1,"n"],[2,0],[[0,"array"]]],[1,"out"]]]],[[0,"let"],[1,"math:variants"],[[0,"lambda"],[1,"xs"],[1,"n"],[[0,"do"],[[0,"let"],[1,"out"],[[0,"array"]]],[[0,"let"],[1,"variants"],[[0,"lambda"],[1,"arr"],[1,"size"],[1,"temp"],[[0,"if"],[[0,"="],[[0,"length"],[1,"temp"]],[1,"size"]],[[0,"array:push!"],[1,"out"],[[0,"array:shallow-copy"],[1,"temp"]]],[[0,"loop:for-range"],[2,0],[[0,"length"],[1,"arr"]],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"array:push!"],[1,"temp"],[[0,"get"],[1,"arr"],[1,"i"]]],[[0,"variants"],[1,"arr"],[1,"size"],[1,"temp"]],[[0,"array:pop!"],[1,"temp"]]]]]]]],[[0,"variants"],[1,"xs"],[1,"n"],[[0,"array"]]],[1,"out"]]]],[[0,"let"],[1,"math:subset"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"n"],[[0,"length"],[1,"xs"]]],[[0,"let"],[1,"out"],[[0,"array"]]],[[0,"loop:for-range"],[2,0],[[0,"math:power"],[2,2],[1,"n"]],[[0,"lambda"],[1,"i"],[[0,"array:append!"],[1,"out"],[[0,"array:enumerated-fold"],[[0,"from:integer->bits-reversed"],[1,"i"]],[[0,"lambda"],[1,"a"],[1,"x"],[1,"i"],[[0,"if"],[[0,"="],[1,"x"],[2,1]],[[0,"array:append!"],[1,"a"],[[0,"get"],[1,"xs"],[1,"i"]]],[1,"a"]]],[[0,"array"]]]]]],[1,"out"]]]],[[0,"let"],[1,"math:greater?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,">"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:lesser?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"<"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:lesser-or-equal?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"<="],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:greater-or-equal?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,">="],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:equal?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"="],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:addition"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"+"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:multiplication"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"*"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:division"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"/"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:subtraction"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"-"],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:reverse"],[[0,"lambda"],[1,"xs"],[[0,"array:reverse"],[1,"xs"]]]],[[0,"let"],[1,"math:fold"],[[0,"lambda"],[1,"xs"],[1,"cb"],[1,"initial"],[[0,"array:fold"],[1,"xs"],[1,"cb"],[1,"initial"]]]],[[0,"let"],[1,"math:enumerated-fold"],[[0,"lambda"],[1,"xs"],[1,"cb"],[1,"initial"],[[0,"array:enumerated-fold"],[1,"xs"],[1,"cb"],[1,"initial"]]]],[[0,"let"],[1,"math:map"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:map"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:enumerated-map"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:enumerated-map"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:select"],[[0,"lambda"],[1,"xs"],[1,"cb?"],[[0,"array:select"],[1,"xs"],[1,"cb?"]]]],[[0,"let"],[1,"math:exclude"],[[0,"lambda"],[1,"xs"],[1,"cb?"],[[0,"array:exclude"],[1,"xs"],[1,"cb?"]]]],[[0,"let"],[1,"math:every?"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:every?"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:some?"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:some?"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:enumerated-every?"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:enumerated-every?"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:enumerated-some?"],[[0,"lambda"],[1,"xs"],[1,"cb"],[[0,"array:enumerated-some"],[1,"xs"],[1,"cb"]]]],[[0,"let"],[1,"math:max"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,">"],[1,"a"],[1,"b"]],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:min"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"<"],[1,"a"],[1,"b"]],[1,"a"],[1,"b"]]]],[[0,"let"],[1,"math:summation"],[[0,"lambda"],[1,"xs"],[[0,"math:fold"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"+"],[1,"a"],[1,"b"]]],[2,0]]]],[[0,"let"],[1,"math:product"],[[0,"lambda"],[1,"xs"],[[0,"math:fold"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"*"],[1,"a"],[1,"b"]]],[2,1]]]],[[0,"let"],[1,"math:maximum"],[[0,"lambda"],[1,"xs"],[[0,"math:fold"],[1,"xs"],[1,"math:max"],[[0,"array:first"],[1,"xs"]]]]],[[0,"let"],[1,"math:minimum"],[[0,"lambda"],[1,"xs"],[[0,"math:fold"],[1,"xs"],[1,"math:min"],[[0,"array:first"],[1,"xs"]]]]],[[0,"let"],[1,"math:maximum-index"],[[0,"lambda"],[1,"xs"],[[0,"array:second"],[[0,"array:enumerated-fold"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"x"],[1,"i"],[[0,"if"],[[0,">"],[1,"x"],[[0,"array:first"],[1,"a"]]],[[0,"array"],[1,"x"],[1,"i"]],[1,"a"]]],[[0,"array"],[[0,"array:first"],[1,"xs"]],[1,"math:min-safe-integer"]]]]]],[[0,"let"],[1,"math:minimum-index"],[[0,"lambda"],[1,"xs"],[[0,"array:second"],[[0,"array:enumerated-fold"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"x"],[1,"i"],[[0,"if"],[[0,"<"],[1,"x"],[[0,"array:first"],[1,"a"]]],[[0,"array"],[1,"x"],[1,"i"]],[1,"a"]]],[[0,"array"],[[0,"array:first"],[1,"xs"]],[1,"math:max-safe-integer"]]]]]],[[0,"let"],[1,"math:max-length"],[[0,"lambda"],[1,"xs"],[[0,"array:reduce"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,">"],[[0,"length"],[1,"b"]],[1,"a"]],[[0,"length"],[1,"b"]],[1,"a"]]],[1,"math:min-safe-integer"]]]],[[0,"let"],[1,"math:min-length"],[[0,"lambda"],[1,"xs"],[[0,"array:reduce"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"b"]],[1,"a"]],[[0,"length"],[1,"b"]],[1,"a"]]],[1,"math:max-safe-integer"]]]],[[0,"let"],[1,"math:increment"],[[0,"lambda"],[1,"i"],[[0,"+"],[1,"i"],[2,1]]]],[[0,"let"],[1,"math:decrement"],[[0,"lambda"],[1,"i"],[[0,"-"],[1,"i"],[2,1]]]],[[0,"let"],[1,"math:signed-floor"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,">"],[1,"n"],[2,0]],[[0,"+"],[[0,"&"],[1,"n"],[[0,"~"],[2,1]]],[2,1]],[[0,"&"],[1,"n"],[[0,"~"],[2,1]]]]]],[[0,"let"],[1,"math:signed-trunc"],[[0,"lambda"],[1,"n"],[[0,"|"],[1,"n"],[2,0]]]],[[0,"let"],[1,"math:signed-round"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,">"],[1,"n"],[2,0]],[[0,"|"],[[0,"+"],[1,"n"],[2,0.5]],[2,0]],[[0,"|"],[1,"n"],[2,0]]]]],[[0,"let"],[1,"math:signed-ceil"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,">"],[1,"n"],[2,0]],[[0,"<<"],[[0,">>"],[[0,"+"],[1,"n"],[2,1]],[2,1]],[2,1]],[[0,"|"],[1,"n"],[2,0]]]]],[[0,"let"],[1,"math:floor"],[[0,"lambda"],[1,"n"],[[0,"|"],[1,"n"],[2,0]]]],[[0,"let"],[1,"math:round"],[[0,"lambda"],[1,"n"],[[0,"|"],[[0,"+"],[1,"n"],[2,0.5]],[2,0]]]],[[0,"let"],[1,"math:ceil"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"="],[1,"n"],[[0,"|"],[1,"n"],[2,0]]],[[0,"|"],[1,"n"],[2,0]],[[0,"+"],[[0,"|"],[1,"n"],[2,0]],[2,1]]]]],[[0,"let"],[1,"math:bit-set?"],[[0,"lambda"],[1,"n"],[1,"pos"],[[0,"="],[[0,"&"],[1,"n"],[[0,"<<"],[2,1],[1,"pos"]]],[2,0]]]],[[0,"let"],[1,"math:bit-set"],[[0,"lambda"],[1,"n"],[1,"pos"],[[0,"|"],[1,"n"],[[0,"<<"],[2,1],[1,"pos"]]]]],[[0,"let"],[1,"math:bit-clear"],[[0,"lambda"],[1,"n"],[1,"pos"],[[0,"&"],[1,"n"],[[0,"~"],[[0,"<<"],[2,1],[1,"pos"]]]]]],[[0,"let"],[1,"math:power-of-two-bits"],[[0,"lambda"],[1,"n"],[[0,"<<"],[2,2],[[0,"-"],[1,"n"],[2,1]]]]],[[0,"let"],[1,"math:odd-bit?"],[[0,"lambda"],[1,"n"],[[0,"="],[[0,"&"],[1,"n"],[2,1]],[2,1]]]],[[0,"let"],[1,"math:even-bit?"],[[0,"lambda"],[1,"n"],[[0,"="],[[0,"&"],[1,"n"],[2,1]],[2,0]]]],[[0,"let"],[1,"math:average-bit"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,">>"],[[0,"+"],[1,"a"],[1,"b"]],[2,1]]]],[[0,"let"],[1,"math:flag-flip"],[[0,"lambda"],[1,"x"],[[0,"-"],[2,1],[[0,"*"],[1,"x"],[1,"x"]]]]],[[0,"let"],[1,"math:toggle-bit"],[[0,"lambda"],[1,"n"],[1,"a"],[1,"b"],[[0,"^"],[[0,"^"],[1,"a"],[1,"b"]],[1,"n"]]]],[[0,"let"],[1,"math:same-sign-bit?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,">="],[[0,"^"],[1,"a"],[1,"b"]],[2,0]]]],[[0,"let"],[1,"math:max-bit"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"-"],[1,"a"],[[0,"&"],[[0,"-"],[1,"a"],[1,"b"]],[[0,">>"],[[0,"-"],[1,"a"],[1,"b"]],[2,31]]]]]],[[0,"let"],[1,"math:min-bit"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"-"],[1,"a"],[[0,"&"],[[0,"-"],[1,"a"],[1,"b"]],[[0,">>"],[[0,"-"],[1,"b"],[1,"a"]],[2,31]]]]]],[[0,"let"],[1,"math:bit-equal?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"<"],[[0,"^"],[1,"a"],[1,"b"]],[2,1]]]],[[0,"let"],[1,"math:modulo-bit"],[[0,"lambda"],[1,"numerator"],[1,"divisor"],[[0,"&"],[1,"numerator"],[[0,"-"],[1,"divisor"],[2,1]]]]],[[0,"let"],[1,"math:n-one-bit?"],[[0,"lambda"],[1,"N"],[1,"nth"],[[0,"not"],[[0,"="],[[0,"&"],[1,"N"],[[0,"<<"],[2,1],[1,"nth"]]],[2,0]]]]],[[0,"let"],[1,"math:percent"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"*"],[[0,"/"],[1,"b"],[2,100]],[1,"a"]]]],[[0,"let"],[1,"math:median"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"len"],[[0,"length"],[1,"xs"]]],[[0,"let"],[1,"half"],[[0,"math:floor"],[[0,"/"],[1,"len"],[2,2]]]],[[0,"if"],[[0,"math:odd?"],[1,"len"]],[[0,"get"],[1,"xs"],[1,"half"]],[[0,"/"],[[0,"+"],[[0,"get"],[1,"xs"],[[0,"-"],[1,"half"],[2,1]]],[[0,"get"],[1,"xs"],[1,"half"]]],[2,2]]]]]],[[0,"let"],[1,"math:mean"],[[0,"lambda"],[1,"xs"],[[0,"/"],[[0,"math:summation"],[1,"xs"]],[[0,"length"],[1,"xs"]]]]],[[0,"let"],[1,"math:fold-n"],[[0,"lambda"],[1,"n"],[1,"cb"],[1,"acc"],[[0,"do"],[[0,"let"],[1,"tail-call:fold-n"],[[0,"lambda"],[1,"i"],[1,"out"],[[0,"if"],[[0,"<"],[1,"i"],[1,"n"]],[[0,"tail-call:fold-n"],[[0,"+"],[1,"i"],[2,1]],[[0,"cb"],[1,"out"],[1,"i"]]],[1,"out"]]]],[[0,"tail-call:fold-n"],[2,0],[1,"acc"]]]]],[[0,"let"],[1,"math:fold-range"],[[0,"lambda"],[1,"start"],[1,"end"],[1,"cb"],[1,"acc"],[[0,"do"],[[0,"let"],[1,"tail-call:fold-range"],[[0,"lambda"],[1,"i"],[1,"out"],[[0,"if"],[[0,"<="],[1,"i"],[1,"end"]],[[0,"tail-call:fold-range"],[[0,"+"],[1,"i"],[2,1]],[[0,"cb"],[1,"out"],[1,"i"]]],[1,"out"]]]],[[0,"tail-call:fold-range"],[1,"start"],[1,"acc"]]]]],[[0,"let"],[1,"math:divisors"],[[0,"lambda"],[1,"num"],[[0,"do"],[[0,"let"],[1,"divisors"],[[0,"array"]]],[[0,"loop:for-range"],[2,1],[[0,"+"],[[0,"math:floor"],[[0,"math:sqrt"],[1,"num"]]],[2,1]],[[0,"lambda"],[1,"i"],[[0,"if"],[[0,"and"],[[0,"math:divisible?"],[1,"num"],[1,"i"]],[[0,"not"],[[0,"="],[1,"i"],[1,"num"]]]],[[0,"array:append!"],[[0,"array:append!"],[1,"divisors"],[1,"i"]],[[0,"/"],[1,"num"],[1,"i"]]],[1,"nil"]]]],[1,"divisors"]]]],[[0,"let"],[1,"math:bit-count32"],[[0,"lambda"],[1,"n0"],[[0,"do"],[[0,"let"],[1,"n1"],[[0,"-"],[1,"n0"],[[0,"&"],[[0,">>"],[1,"n0"],[2,1]],[2,1431655765]]]],[[0,"let"],[1,"n2"],[[0,"+"],[[0,"&"],[1,"n1"],[2,858993459]],[[0,"&"],[[0,">>"],[1,"n1"],[2,2]],[2,858993459]]]],[[0,">>"],[[0,"*"],[[0,"&"],[[0,"+"],[1,"n2"],[[0,">>"],[1,"n2"],[2,4]]],[2,252645135]],[2,16843009]],[2,24]]]]],[[0,"let"],[1,"math:bit-count"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"tail-call:math:bit-count"],[[0,"lambda"],[1,"n"],[1,"bits"],[[0,"if"],[[0,"="],[1,"n"],[2,0]],[1,"bits"],[[0,"tail-call:math:bit-count"],[[0,"/"],[1,"n"],[2,4294967296]],[[0,"+"],[1,"bits"],[[0,"math:bit-count32"],[[0,"|"],[1,"n"],[2,0]]]]]]]],[[0,"tail-call:math:bit-count"],[1,"n"],[2,0]]]]],[[0,"let"],[1,"math:exp"],[[0,"lambda"],[1,"x"],[[0,"math:power"],[1,"math:e"],[1,"x"]]]],[[0,"let"],[1,"math:square"],[[0,"lambda"],[1,"x"],[[0,"*"],[1,"x"],[1,"x"]]]],[[0,"let"],[1,"math:big-integer-factorial"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"math:zero?"],[[0,"array:first"],[1,"n"]]],[[0,"array"],[2,1]],[[0,"math:big-integer-multiplication"],[1,"n"],[[0,"math:big-integer-factorial"],[[0,"math:big-integer-subtraction"],[1,"n"],[[0,"array"],[2,1]]]]]]]],[[0,"let"],[1,"math:big-integer-power"],[[0,"lambda"],[1,"n"],[1,"pow"],[[0,"do"],[[0,"let"],[1,"digits"],[[0,"array"],[1,"n"]]],[[0,"let"],[1,"p"],[[0,"math:var-def"],[2,1]]],[[0,"let"],[1,"carry"],[[0,"math:var-def"],[2,0]]],[[0,"loop"],[[0,"<"],[[0,"math:var-get"],[1,"p"]],[1,"pow"]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"math:var-set!"],[1,"carry"],[2,0]],[[0,"loop:for-n"],[[0,"length"],[1,"digits"]],[[0,"lambda"],[1,"exp"],[[0,"do"],[[0,"let"],[1,"prod"],[[0,"+"],[[0,"*"],[[0,"array:get"],[1,"digits"],[1,"exp"]],[1,"n"]],[[0,"math:var-get"],[1,"carry"]]]],[[0,"let"],[1,"newCarry"],[[0,"math:floor"],[[0,"/"],[1,"prod"],[2,10]]]],[[0,"array:set!"],[1,"digits"],[1,"exp"],[[0,"mod"],[1,"prod"],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[1,"newCarry"]]]]],[[0,"loop"],[[0,">"],[[0,"math:var-get"],[1,"carry"]],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:push!"],[1,"digits"],[[0,"mod"],[[0,"math:var-get"],[1,"carry"]],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[[0,"math:floor"],[[0,"/"],[[0,"math:var-get"],[1,"carry"]],[2,10]]]]]]]],[[0,"math:var-set!"],[1,"p"],[[0,"+"],[[0,"math:var-get"],[1,"p"]],[2,1]]]]]]],[[0,"math:reverse"],[1,"digits"]]]]],[[0,"let"],[1,"math:big-integer-addition"],[[0,"lambda"],[1,"a1"],[1,"b1"],[[0,"do"],[[0,"let"],[1,"a"],[[0,"math:reverse"],[1,"a1"]]],[[0,"let"],[1,"b"],[[0,"math:reverse"],[1,"b1"]]],[[0,"let"],[1,"max-length"],[[0,"math:max"],[[0,"length"],[1,"a"]],[[0,"length"],[1,"b"]]]],[[0,"let"],[1,"result"],[[0,"array"]]],[[0,"let"],[1,"carry"],[[0,"math:var-def"],[2,0]]],[[0,"loop:for-n"],[1,"max-length"],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"let"],[1,"digit-A"],[[0,"if"],[[0,"<"],[1,"i"],[[0,"length"],[1,"a"]]],[[0,"array:get"],[1,"a"],[1,"i"]],[2,0]]],[[0,"let"],[1,"digit-B"],[[0,"if"],[[0,"<"],[1,"i"],[[0,"length"],[1,"b"]]],[[0,"array:get"],[1,"b"],[1,"i"]],[2,0]]],[[0,"let"],[1,"sum"],[[0,"+"],[1,"digit-A"],[[0,"+"],[1,"digit-B"],[[0,"math:var-get"],[1,"carry"]]]]],[[0,"array:push!"],[1,"result"],[[0,"mod"],[1,"sum"],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[[0,"math:floor"],[[0,"/"],[1,"sum"],[2,10]]]]]]],[[0,"loop"],[[0,">"],[[0,"math:var-get"],[1,"carry"]],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:push!"],[1,"result"],[[0,"mod"],[[0,"math:var-get"],[1,"carry"]],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[[0,"math:floor"],[[0,"/"],[[0,"math:var-get"],[1,"carry"]],[2,10]]]]]]]],[[0,"math:reverse"],[1,"result"]]]]],[[0,"let"],[1,"math:big-integer-subtraction"],[[0,"lambda"],[1,"a1"],[1,"b1"],[[0,"do"],[[0,"let"],[1,"a"],[[0,"math:reverse"],[1,"a1"]]],[[0,"let"],[1,"b"],[[0,"math:reverse"],[1,"b1"]]],[[0,"let"],[1,"max-length"],[[0,"math:max"],[[0,"length"],[1,"a"]],[[0,"length"],[1,"b"]]]],[[0,"let"],[1,"result"],[[0,"array"]]],[[0,"let"],[1,"borrow"],[[0,"math:var-def"],[2,0]]],[[0,"loop:for-n"],[1,"max-length"],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"let"],[1,"digit-A"],[[0,"if"],[[0,"<"],[1,"i"],[[0,"length"],[1,"a"]]],[[0,"array:get"],[1,"a"],[1,"i"]],[2,0]]],[[0,"let"],[1,"digit-B"],[[0,"if"],[[0,"<"],[1,"i"],[[0,"length"],[1,"b"]]],[[0,"array:get"],[1,"b"],[1,"i"]],[2,0]]],[[0,"let"],[1,"sub"],[[0,"-"],[[0,"-"],[1,"digit-A"],[1,"digit-B"]],[[0,"math:var-get"],[1,"borrow"]]]],[[0,"if"],[[0,"<"],[1,"sub"],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:push!"],[1,"result"],[[0,"+"],[1,"sub"],[2,10]]],[[0,"math:var-set!"],[1,"borrow"],[2,1]]]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:push!"],[1,"result"],[1,"sub"]],[[0,"math:var-set!"],[1,"borrow"],[2,0]]]]]]]]],[[0,"let"],[1,"i"],[[0,"math:var-def"],[[0,"-"],[[0,"length"],[1,"result"]],[2,1]]]],[[0,"loop"],[[0,"and"],[[0,">"],[[0,"math:var-get"],[1,"i"]],[2,0]],[[0,"="],[[0,"array:get"],[1,"result"],[[0,"math:var-get"],[1,"i"]]],[2,0]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:pop!"],[1,"result"]],[[0,"math:var-set!"],[1,"i"],[[0,"-"],[[0,"math:var-get"],[1,"i"]],[2,1]]]]]]],[[0,"math:reverse"],[1,"result"]]]]],[[0,"let"],[1,"math:big-integer-multiplication"],[[0,"lambda"],[1,"a1"],[1,"b1"],[[0,"do"],[[0,"let"],[1,"a"],[[0,"math:reverse"],[1,"a1"]]],[[0,"let"],[1,"b"],[[0,"math:reverse"],[1,"b1"]]],[[0,"let"],[1,"result"],[[0,"array"]]],[[0,"loop:for-n"],[[0,"+"],[[0,"length"],[1,"a"]],[[0,"length"],[1,"b"]]],[[0,"lambda"],[1,"."],[[0,"array:push!"],[1,"result"],[2,0]]]],[[0,"loop:for-n"],[[0,"length"],[1,"a"]],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"let"],[1,"carry"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"digit-a"],[[0,"array:get"],[1,"a"],[1,"i"]]],[[0,"loop:for-n"],[[0,"length"],[1,"b"]],[[0,"lambda"],[1,"j"],[[0,"do"],[[0,"let"],[1,"digit-B"],[[0,"array:get"],[1,"b"],[1,"j"]]],[[0,"let"],[1,"idx"],[[0,"+"],[1,"i"],[1,"j"]]],[[0,"let"],[1,"prod"],[[0,"+"],[[0,"*"],[1,"digit-a"],[1,"digit-B"]],[[0,"+"],[[0,"array:get"],[1,"result"],[1,"idx"]],[[0,"math:var-get"],[1,"carry"]]]]],[[0,"array:set!"],[1,"result"],[1,"idx"],[[0,"mod"],[1,"prod"],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[[0,"math:floor"],[[0,"/"],[1,"prod"],[2,10]]]]]]],[[0,"let"],[1,"k"],[[0,"math:var-def"],[[0,"+"],[1,"i"],[[0,"length"],[1,"b"]]]]],[[0,"loop"],[[0,">"],[[0,"math:var-get"],[1,"carry"]],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"if"],[[0,"not"],[[0,"<"],[[0,"math:var-get"],[1,"k"]],[[0,"length"],[1,"result"]]]],[[0,"array:push!"],[1,"result"],[2,0]],[1,"nil"]],[[0,"let"],[1,"sum"],[[0,"+"],[[0,"array:get"],[1,"result"],[[0,"math:var-get"],[1,"k"]]],[[0,"math:var-get"],[1,"carry"]]]],[[0,"array:set!"],[1,"result"],[[0,"math:var-get"],[1,"k"]],[[0,"mod"],[1,"sum"],[2,10]]],[[0,"math:var-set!"],[1,"carry"],[[0,"math:floor"],[[0,"/"],[1,"sum"],[2,10]]]],[[0,"math:var-set!"],[1,"k"],[[0,"+"],[[0,"math:var-get"],[1,"k"]],[2,1]]]]]]]]]],[[0,"let"],[1,"i"],[[0,"math:var-def"],[[0,"-"],[[0,"length"],[1,"result"]],[2,1]]]],[[0,"loop"],[[0,"and"],[[0,">"],[[0,"math:var-get"],[1,"i"]],[2,0]],[[0,"and"],[[0,"="],[[0,"array:get"],[1,"result"],[[0,"math:var-get"],[1,"i"]]],[2,0]],[[0,">"],[[0,"length"],[1,"result"]],[2,1]]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"array:pop!"],[1,"result"]],[[0,"math:var-set!"],[1,"i"],[[0,"-"],[[0,"math:var-get"],[1,"i"]],[2,1]]]]]]],[[0,"math:reverse"],[1,"result"]]]]],[[0,"let"],[1,"math:remove-leading-zeroes"],[[0,"lambda"],[1,"digits"],[[0,"do"],[[0,"let"],[1,"tr"],[[0,"bool:true"]]],[[0,"array:transform"],[1,"digits"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"and"],[[0,"bool:true?"],[1,"tr"]],[[0,"math:zero?"],[1,"b"]]],[1,"a"],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"if"],[[0,"bool:true?"],[1,"tr"]],[[0,"bool:false!"],[1,"tr"]],[1,"nil"]],[[0,"array:merge!"],[1,"a"],[[0,"array"],[1,"b"]]]]]]]],[[0,"array"]]]]]],[[0,"let"],[1,"math:remove-trailing-zeroes"],[[0,"lambda"],[1,"digits"],[[0,"do"],[[0,"let"],[1,"tr"],[[0,"bool:false"]]],[[0,"array:transform"],[1,"digits"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"and"],[[0,"bool:true?"],[1,"tr"]],[[0,"math:zero?"],[1,"b"]]],[1,"a"],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"if"],[[0,"bool:false?"],[1,"tr"]],[[0,"bool:true!"],[1,"tr"]],[1,"nil"]],[[0,"array:merge!"],[1,"a"],[[0,"array"],[1,"b"]]]]]]]],[[0,"array"]]]]]],[[0,"let"],[1,"math:big-integer-less-or-equal?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"do"],[[0,"if"],[[0,"<"],[[0,"length"],[1,"a"]],[[0,"length"],[1,"b"]]],[1,"true"],[[0,"if"],[[0,">"],[[0,"length"],[1,"a"]],[[0,"length"],[1,"b"]]],[1,"false"],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"i"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"result"],[[0,"bool:true"]]],[[0,"loop"],[[0,"<"],[[0,"math:var-get"],[1,"i"]],[[0,"length"],[1,"a"]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"da"],[[0,"array:get"],[1,"a"],[[0,"math:var-get"],[1,"i"]]]],[[0,"let"],[1,"db"],[[0,"array:get"],[1,"b"],[[0,"math:var-get"],[1,"i"]]]],[[0,"if"],[[0,"<"],[1,"da"],[1,"db"]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"bool:true!"],[1,"result"]],[[0,"math:var-set!"],[1,"i"],[[0,"length"],[1,"a"]]]]]],[1,"nil"]],[[0,"if"],[[0,">"],[1,"da"],[1,"db"]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"bool:false!"],[1,"result"]],[[0,"math:var-set!"],[1,"i"],[[0,"length"],[1,"a"]]]]]],[1,"nil"]],[[0,"math:var-set!"],[1,"i"],[[0,"+"],[[0,"math:var-get"],[1,"i"]],[2,1]]]]]]],[[0,"if"],[[0,"bool:true?"],[1,"result"]],[1,"true"],[1,"false"]]]]]]]]]],[[0,"let"],[1,"math:big-integer-division"],[[0,"lambda"],[1,"dividend"],[1,"divisor"],[[0,"do"],[[0,"let"],[1,"result"],[[0,"array"]]],[[0,"let"],[1,"current"],[[0,"var:def"],[[0,"array"]]]],[[0,"let"],[1,"i"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"len"],[[0,"length"],[1,"dividend"]]],[[0,"loop"],[[0,"<"],[[0,"math:var-get"],[1,"i"]],[1,"len"]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"digit"],[[0,"array:get"],[1,"dividend"],[[0,"math:var-get"],[1,"i"]]]],[[0,"var:set!"],[1,"current"],[[0,"math:remove-leading-zeroes"],[[0,"array:merge"],[[0,"var:get"],[1,"current"]],[[0,"array"],[1,"digit"]]]]],[[0,"let"],[1,"low"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"high"],[[0,"math:var-def"],[2,9]]],[[0,"let"],[1,"q"],[[0,"math:var-def"],[2,0]]],[[0,"loop"],[[0,"<="],[[0,"math:var-get"],[1,"low"]],[[0,"math:var-get"],[1,"high"]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"mid"],[[0,"|"],[[0,"/"],[[0,"+"],[[0,"math:var-get"],[1,"low"]],[[0,"math:var-get"],[1,"high"]]],[2,2]],[2,0]]],[[0,"let"],[1,"prod"],[[0,"math:big-integer-multiplication"],[1,"divisor"],[[0,"array"],[1,"mid"]]]],[[0,"if"],[[0,"math:big-integer-less-or-equal?"],[1,"prod"],[[0,"var:get"],[1,"current"]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"math:var-set!"],[1,"q"],[1,"mid"]],[[0,"math:var-set!"],[1,"low"],[[0,"+"],[1,"mid"],[2,1]]]]]],[[0,"math:var-set!"],[1,"high"],[[0,"-"],[1,"mid"],[2,1]]]]]]]],[[0,"array:push!"],[1,"result"],[[0,"math:var-get"],[1,"q"]]],[[0,"let"],[1,"sub"],[[0,"math:big-integer-multiplication"],[1,"divisor"],[[0,"array"],[[0,"math:var-get"],[1,"q"]]]]],[[0,"var:set!"],[1,"current"],[[0,"math:big-integer-subtraction"],[[0,"var:get"],[1,"current"]],[1,"sub"]]],[[0,"math:var-set!"],[1,"i"],[[0,"+"],[[0,"math:var-get"],[1,"i"]],[2,1]]]]]]],[[0,"let"],[1,"out"],[[0,"math:remove-leading-zeroes"],[1,"result"]]],[[0,"if"],[[0,"array:empty?"],[1,"out"]],[[0,"array"],[2,0]],[1,"out"]]]]],[[0,"let"],[1,"math:power"],[[0,"lambda"],[1,"base"],[1,"exp"],[[0,"do"],[[0,"if"],[[0,"<"],[1,"exp"],[2,0]],[[0,"/"],[2,1],[[0,"math:power"],[1,"base"],[[0,"*"],[1,"exp"],[2,-1]]]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"result"],[[0,"math:var-def"],[2,1]]],[[0,"let"],[1,"b"],[[0,"math:var-def"],[1,"base"]]],[[0,"let"],[1,"e"],[[0,"math:var-def"],[1,"exp"]]],[[0,"loop:while"],[[0,"lambda"],[[0,">"],[[0,"math:var-get"],[1,"e"]],[2,0]]],[[0,"lambda"],[[0,"do"],[[0,"if"],[[0,"="],[[0,"mod"],[[0,"math:var-get"],[1,"e"]],[2,2]],[2,1]],[[0,"math:var-set!"],[1,"result"],[[0,"*"],[[0,"math:var-get"],[1,"result"]],[[0,"math:var-get"],[1,"b"]]]],[1,"nil"]],[[0,"math:var-set!"],[1,"b"],[[0,"*"],[[0,"math:var-get"],[1,"b"]],[[0,"math:var-get"],[1,"b"]]]],[[0,"math:var-set!"],[1,"e"],[[0,"|"],[[0,"/"],[[0,"math:var-get"],[1,"e"]],[2,2]],[2,0]]]]]],[[0,"math:var-get"],[1,"result"]]]]]]]]],[[0,"let"],[1,"math:int-log2"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"count"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"value"],[[0,"math:var-def"],[1,"n"]]],[[0,"loop:while"],[[0,"lambda"],[[0,">"],[[0,"math:var-get"],[1,"value"]],[2,1]]],[[0,"lambda"],[[0,"do"],[[0,"math:var-set!"],[1,"value"],[[0,"|"],[[0,"/"],[[0,"math:var-get"],[1,"value"]],[2,2]],[2,0]]],[[0,"math:var-set!"],[1,"count"],[[0,"+"],[[0,"math:var-get"],[1,"count"]],[2,1]]]]]],[[0,"math:var-get"],[1,"count"]]]]],[[0,"let"],[1,"math:log-base"],[[0,"lambda"],[1,"x"],[1,"base"],[[0,"do"],[[0,"if"],[[0,"or"],[[0,"<="],[1,"x"],[2,0]],[[0,"or"],[[0,"<="],[1,"base"],[2,0]],[[0,"="],[1,"base"],[2,1]]]],[1,"nil"],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"epsilon"],[2,0.0001]],[[0,"let"],[1,"max-iter"],[2,200]],[[0,"let"],[1,"ln-base"],[[0,"lambda"],[1,"b"],[[0,"do"],[[0,"if"],[[0,"="],[1,"b"],[2,1]],[2,0],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"g"],[[0,"var:def"],[2,1]]],[[0,"let"],[1,"i"],[[0,"var:def"],[2,0]]],[[0,"loop:while"],[[0,"lambda"],[[0,"and"],[[0,"<"],[[0,"var:get"],[1,"i"]],[1,"max-iter"]],[[0,">"],[[0,"math:abs"],[[0,"-"],[[0,"math:power"],[1,"math:e"],[[0,"var:get"],[1,"g"]]],[1,"b"]]],[1,"epsilon"]]]],[[0,"lambda"],[[0,"do"],[[0,"var:set!"],[1,"g"],[[0,"-"],[[0,"var:get"],[1,"g"]],[[0,"/"],[[0,"-"],[[0,"math:power"],[1,"math:e"],[[0,"var:get"],[1,"g"]]],[1,"b"]],[[0,"math:power"],[1,"math:e"],[[0,"var:get"],[1,"g"]]]]]],[[0,"var:set!"],[1,"i"],[[0,"+"],[[0,"var:get"],[1,"i"]],[2,1]]]]]],[[0,"var:get"],[1,"g"]]]]]]]]],[[0,"let"],[1,"ln-x"],[[0,"ln-base"],[1,"x"]]],[[0,"let"],[1,"ln-b"],[[0,"ln-base"],[1,"base"]]],[[0,"/"],[1,"ln-x"],[1,"ln-b"]]]]]]]]],[[0,"let"],[1,"math:greatest-common-divisor"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"do"],[[0,"let"],[1,"tail-call:math:greatest-common-divisor"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"="],[1,"b"],[2,0]],[1,"a"],[[0,"tail-call:math:greatest-common-divisor"],[1,"b"],[[0,"mod"],[1,"a"],[1,"b"]]]]]],[[0,"tail-call:math:greatest-common-divisor"],[1,"a"],[1,"b"]]]]],[[0,"let"],[1,"math:least-common-divisor"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"/"],[[0,"*"],[1,"a"],[1,"b"]],[[0,"math:greatest-common-divisor"],[1,"a"],[1,"b"]]]]],[[0,"let"],[1,"math:coprime?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"="],[[0,"math:greatest-common-divisor"],[1,"a"],[1,"b"]],[2,1]]]],[[0,"let"],[1,"math:sqrt"],[[0,"lambda"],[1,"x"],[[0,"do"],[[0,"let"],[1,"good-enough?"],[[0,"lambda"],[1,"g"],[1,"x"],[[0,"<"],[[0,"math:abs"],[[0,"-"],[[0,"math:square"],[1,"g"]],[1,"x"]]],[2,0.01]]]],[[0,"let"],[1,"improve-guess"],[[0,"lambda"],[1,"g"],[1,"x"],[[0,"math:average"],[1,"g"],[[0,"/"],[1,"x"],[1,"g"]]]]],[[0,"let"],[1,"tail-call:math:sqrt"],[[0,"lambda"],[1,"g"],[1,"x"],[[0,"if"],[[0,"good-enough?"],[1,"g"],[1,"x"]],[1,"g"],[[0,"tail-call:math:sqrt"],[[0,"improve-guess"],[1,"g"],[1,"x"]],[1,"x"]]]]],[[0,"tail-call:math:sqrt"],[2,1],[1,"x"]]]]],[[0,"let"],[1,"math:perfect-square?"],[[0,"lambda"],[1,"n"],[[0,"-"],[[0,"math:floor"],[[0,"math:sqrt"],[1,"n"]]],[[0,"math:floor"],[[0,"math:sqrt"],[[0,"-"],[1,"n"],[2,1]]]]]]],[[0,"let"],[1,"math:circumference"],[[0,"lambda"],[1,"radius"],[[0,"*"],[1,"math:pi"],[[0,"*"],[1,"radius"],[2,2]]]]],[[0,"let"],[1,"math:hypotenuse"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"math:sqrt"],[[0,"+"],[[0,"*"],[1,"a"],[1,"a"]],[[0,"*"],[1,"b"],[1,"b"]]]]]],[[0,"let"],[1,"math:abs"],[[0,"lambda"],[1,"n"],[[0,"-"],[[0,"^"],[1,"n"],[[0,">>"],[1,"n"],[2,31]]],[[0,">>"],[1,"n"],[2,31]]]]],[[0,"let"],[1,"math:nth-digit"],[[0,"lambda"],[1,"digit"],[1,"n"],[[0,"|"],[[0,"mod"],[[0,"/"],[1,"digit"],[[0,"math:power"],[2,10],[[0,"-"],[1,"n"],[2,1]]]],[2,10]],[2,0]]]],[[0,"let"],[1,"math:remove-nth-digits"],[[0,"lambda"],[1,"digit"],[1,"n"],[[0,"|"],[[0,"/"],[1,"digit"],[[0,"math:power"],[2,10],[1,"n"]]],[2,0]]]],[[0,"let"],[1,"math:keep-nth-digits"],[[0,"lambda"],[1,"digit"],[1,"n"],[[0,"do"],[[0,"let"],[1,"tail-call:math:keep-nth-digits"],[[0,"lambda"],[1,"i"],[1,"out"],[1,"base"],[[0,"if"],[[0,">"],[1,"i"],[2,0]],[[0,"tail-call:math:keep-nth-digits"],[[0,"-"],[1,"i"],[2,1]],[[0,"+"],[1,"out"],[[0,"*"],[1,"base"],[[0,"math:nth-digit"],[1,"digit"],[1,"i"]]]],[[0,"*"],[1,"base"],[2,0.1]]],[1,"out"]]]],[[0,"tail-call:math:keep-nth-digits"],[1,"n"],[2,0],[[0,"*"],[[0,"math:power"],[2,10],[1,"n"]],[2,0.1]]]]]],[[0,"let"],[1,"math:normalize"],[[0,"lambda"],[1,"value"],[1,"math:min"],[1,"math:max"],[[0,"*"],[[0,"-"],[1,"value"],[1,"math:min"]],[[0,"/"],[2,1],[[0,"-"],[1,"math:max"],[1,"math:min"]]]]]],[[0,"let"],[1,"math:linear-interpolation"],[[0,"lambda"],[1,"a"],[1,"b"],[1,"n"],[[0,"+"],[[0,"*"],[[0,"-"],[2,1],[1,"n"]],[1,"a"]],[[0,"*"],[1,"n"],[1,"b"]]]]],[[0,"let"],[1,"math:gauss-sum"],[[0,"lambda"],[1,"n"],[[0,"*"],[1,"n"],[[0,"*"],[[0,"+"],[1,"n"],[2,1]],[2,0.5]]]]],[[0,"let"],[1,"math:gauss-sum-sequance"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"*"],[[0,"+"],[1,"a"],[1,"b"]],[[0,"*"],[[0,"+"],[[0,"-"],[1,"b"],[1,"a"]],[2,1]],[2,0.5]]]]],[[0,"let"],[1,"math:clamp"],[[0,"lambda"],[1,"x"],[1,"limit"],[[0,"if"],[[0,">"],[1,"x"],[1,"limit"]],[1,"limit"],[1,"x"]]]],[[0,"let"],[1,"math:clamp-range"],[[0,"lambda"],[1,"x"],[1,"start"],[1,"end"],[[0,"if"],[[0,">"],[1,"x"],[1,"end"]],[1,"end"],[[0,"if"],[[0,"<"],[1,"x"],[1,"start"]],[1,"start"],[[0,"if"],[[0,"not"],[2,0]],[1,"x"],[[0,"Any"],[1,"nil"]]]]]]],[[0,"let"],[1,"math:odd?"],[[0,"lambda"],[1,"x"],[[0,"="],[[0,"mod"],[1,"x"],[2,2]],[2,1]]]],[[0,"let"],[1,"math:even?"],[[0,"lambda"],[1,"x"],[[0,"="],[[0,"mod"],[1,"x"],[2,2]],[2,0]]]],[[0,"let"],[1,"math:enumerated-odd?"],[[0,"lambda"],[1,"."],[1,"i"],[[0,"="],[[0,"mod"],[1,"i"],[2,2]],[2,1]]]],[[0,"let"],[1,"math:enumerated-even?"],[[0,"lambda"],[1,"."],[1,"i"],[[0,"="],[[0,"mod"],[1,"i"],[2,2]],[2,0]]]],[[0,"let"],[1,"math:sign"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"<"],[1,"n"],[2,0]],[2,-1],[2,1]]]],[[0,"let"],[1,"math:radians"],[[0,"lambda"],[1,"deg"],[[0,"/"],[[0,"*"],[1,"deg"],[1,"math:pi"]],[2,180]]]],[[0,"let"],[1,"math:degrees"],[[0,"lambda"],[1,"rad"],[[0,"*"],[1,"rad"],[[0,"/"],[2,180],[1,"math:pi"]]]]],[[0,"let"],[1,"math:average"],[[0,"lambda"],[1,"x"],[1,"y"],[[0,"*"],[[0,"+"],[1,"x"],[1,"y"]],[2,0.5]]]],[[0,"let"],[1,"math:euclidean-mod"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"mod"],[[0,"+"],[[0,"mod"],[1,"a"],[1,"b"]],[1,"b"]],[1,"b"]]]],[[0,"let"],[1,"math:euclidean-distance"],[[0,"lambda"],[1,"x1"],[1,"y1"],[1,"x2"],[1,"y2"],[[0,"do"],[[0,"let"],[1,"a"],[[0,"-"],[1,"x1"],[1,"x2"]]],[[0,"let"],[1,"b"],[[0,"-"],[1,"y1"],[1,"y2"]]],[[0,"math:sqrt"],[[0,"+"],[[0,"*"],[1,"a"],[1,"a"]],[[0,"*"],[1,"b"],[1,"b"]]]]]]],[[0,"let"],[1,"math:manhattan-distance"],[[0,"lambda"],[1,"x1"],[1,"y1"],[1,"x2"],[1,"y2"],[[0,"+"],[[0,"math:abs"],[[0,"-"],[1,"x2"],[1,"x1"]]],[[0,"math:abs"],[[0,"-"],[1,"y2"],[1,"y1"]]]]]],[[0,"let"],[1,"math:positive?"],[[0,"lambda"],[1,"x"],[[0,">"],[1,"x"],[2,0]]]],[[0,"let"],[1,"math:negative?"],[[0,"lambda"],[1,"x"],[[0,"<"],[1,"x"],[2,0]]]],[[0,"let"],[1,"math:invert"],[[0,"lambda"],[1,"x"],[[0,"*"],[1,"x"],[2,-1]]]],[[0,"let"],[1,"math:zero?"],[[0,"lambda"],[1,"x"],[[0,"="],[1,"x"],[2,0]]]],[[0,"let"],[1,"math:negative-one?"],[[0,"lambda"],[1,"x"],[[0,"="],[1,"x"],[2,-1]]]],[[0,"let"],[1,"math:divisible?"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"="],[[0,"mod"],[1,"a"],[1,"b"]],[2,0]]]],[[0,"let"],[1,"math:factorial"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"<="],[1,"n"],[2,0]],[2,1],[[0,"*"],[1,"n"],[[0,"math:factorial"],[[0,"-"],[1,"n"],[2,1]]]]]]],[[0,"let"],[1,"math:sinh"],[[0,"lambda"],[1,"x"],[[0,"/"],[[0,"-"],[[0,"math:exp"],[1,"x"]],[[0,"math:exp"],[[0,"*"],[1,"x"],[2,-1]]]],[2,2]]]],[[0,"let"],[1,"math:cosh"],[[0,"lambda"],[1,"x"],[[0,"/"],[[0,"+"],[[0,"math:exp"],[1,"x"]],[[0,"math:exp"],[[0,"*"],[1,"x"],[2,-1]]]],[2,2]]]],[[0,"let"],[1,"math:tanh"],[[0,"lambda"],[1,"x"],[[0,"/"],[[0,"math:sinh"],[1,"x"]],[[0,"math:cosh"],[1,"x"]]]]],[[0,"let"],[1,"math:standard-deviation"],[[0,"lambda"],[1,"xs"],[[0,"math:sqrt"],[[0,"math:variance"],[1,"xs"]]]]],[[0,"let"],[1,"math:variance"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"mean"],[[0,"math:mean"],[1,"xs"]]],[[0,"/"],[[0,"math:summation"],[[0,"array:map"],[1,"xs"],[[0,"lambda"],[1,"x"],[[0,"math:square"],[[0,"-"],[1,"x"],[1,"mean"]]]]]],[[0,"length"],[1,"xs"]]]]]],[[0,"let"],[1,"math:lerp"],[1,"math:linear-interpolation"]],[[0,"let"],[1,"math:gcd"],[1,"math:greatest-common-divisor"]],[[0,"let"],[1,"math:lcm"],[1,"math:least-common-divisor"]],[[0,"let"],[1,"math:gcd-zero"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"or"],[[0,"="],[1,"a"],[2,0]],[[0,"="],[1,"b"],[2,0]]],[2,0],[[0,"math:gcd"],[1,"a"],[1,"b"]]]]],[[0,"let"],[1,"math:lcm-zero"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"if"],[[0,"or"],[[0,"="],[1,"a"],[2,0]],[[0,"="],[1,"b"],[2,0]]],[2,0],[[0,"/"],[[0,"math:abs"],[[0,"*"],[1,"a"],[1,"b"]]],[[0,"math:gcd"],[1,"a"],[1,"b"]]]]]],[[0,"let"],[1,"math:mulberry-32-prng"],[[0,"lambda"],[1,"seed"],[[0,"do"],[[0,"let"],[1,"base"],[[0,"math:var-def"],[1,"seed"]]],[[0,"let"],[1,"z"],[[0,"math:var-def"],[[0,"math:var-set-and-get!"],[1,"base"],[[0,"+"],[[0,"math:var-get"],[1,"base"]],[2,2654435769]]]]],[[0,"math:var-set!"],[1,"z"],[[0,"^"],[[0,"math:var-get"],[1,"z"]],[[0,">>"],[[0,"math:var-get"],[1,"z"]],[2,16]]]],[[0,"math:var-set!"],[1,"z"],[[0,"*"],[[0,"math:var-get"],[1,"z"]],[2,569420461]]],[[0,"math:var-set!"],[1,"z"],[[0,"^"],[[0,"math:var-get"],[1,"z"]],[[0,">>"],[[0,"math:var-get"],[1,"z"]],[2,15]]]],[[0,"math:var-set!"],[1,"z"],[[0,"*"],[[0,"math:var-get"],[1,"z"]],[2,1935289751]]],[[0,"math:var-set!"],[1,"z"],[[0,"^"],[[0,"math:var-get"],[1,"z"]],[[0,">>"],[[0,"math:var-get"],[1,"z"]],[2,15]]]],[[0,"math:var-get"],[1,"z"]]]]],[[0,"let"],[1,"math:random"],[[0,"lambda"],[1,"N"],[[0,"do"],[[0,"let"],[1,"n"],[[0,"math:var-def"],[1,"N"]]],[[0,"lambda"],[[0,"math:mulberry-32-prng"],[[0,"math:var-increment-and-get!"],[1,"n"]]]]]]],[[0,"let"],[1,"math:sine"],[[0,"lambda"],[1,"rad"],[1,"terms"],[[0,"do"],[[0,"let"],[1,"sine"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"tail-call:math:sine"],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"math:var-set!"],[1,"sine"],[[0,"+"],[[0,"math:var-get"],[1,"sine"]],[[0,"*"],[[0,"/"],[2,1],[[0,"math:factorial"],[[0,"+"],[[0,"*"],[2,2],[1,"i"]],[2,1]]]],[[0,"*"],[[0,"math:power"],[2,-1],[1,"i"]],[[0,"math:power"],[1,"rad"],[[0,"+"],[[0,"*"],[2,2],[1,"i"]],[2,1]]]]]]],[[0,"if"],[[0,"<"],[1,"i"],[1,"terms"]],[[0,"tail-call:math:sine"],[[0,"+"],[1,"i"],[2,1]]],[[0,"math:var-get"],[1,"sine"]]]]]],[[0,"tail-call:math:sine"],[2,0]]]]],[[0,"let"],[1,"math:cosine"],[[0,"lambda"],[1,"rad"],[1,"terms"],[[0,"do"],[[0,"let"],[1,"cosine"],[[0,"math:var-def"],[2,0]]],[[0,"let"],[1,"tail-call:math:cosine"],[[0,"lambda"],[1,"i"],[[0,"do"],[[0,"math:var-set!"],[1,"cosine"],[[0,"+"],[[0,"math:var-get"],[1,"cosine"]],[[0,"*"],[[0,"/"],[2,1],[[0,"math:factorial"],[[0,"*"],[2,2],[1,"i"]]]],[[0,"*"],[[0,"math:power"],[2,-1],[1,"i"]],[[0,"math:power"],[1,"rad"],[[0,"*"],[2,2],[1,"i"]]]]]]],[[0,"if"],[[0,"<"],[1,"i"],[1,"terms"]],[[0,"tail-call:math:cosine"],[[0,"+"],[1,"i"],[2,1]]],[[0,"math:var-get"],[1,"cosine"]]]]]],[[0,"tail-call:math:cosine"],[2,0]]]]],[[0,"let"],[1,"math:prime-factors"],[[0,"lambda"],[1,"N"],[[0,"do"],[[0,"let"],[1,"a"],[[0,"array"]]],[[0,"let"],[1,"n"],[[0,"math:var-def"],[1,"N"]]],[[0,"let"],[1,"f"],[[0,"math:var-def"],[2,2]]],[[0,"let"],[1,"tail-call:math:prime-factors"],[[0,"lambda"],[[0,"if"],[[0,">"],[[0,"math:var-get"],[1,"n"]],[2,1]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"if"],[[0,"="],[[0,"mod"],[[0,"math:var-get"],[1,"n"]],[[0,"math:var-get"],[1,"f"]]],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"set!"],[1,"a"],[[0,"length"],[1,"a"]],[[0,"math:var-get"],[1,"f"]]],[[0,"math:var-set!"],[1,"n"],[[0,"*"],[[0,"math:var-get"],[1,"n"]],[[0,"/"],[2,1],[[0,"math:var-get"],[1,"f"]]]]]]]],[[0,"math:var-set!"],[1,"f"],[[0,"+"],[[0,"math:var-get"],[1,"f"]],[2,1]]]],[[0,"tail-call:math:prime-factors"]]]]],[1,"a"]]]],[[0,"tail-call:math:prime-factors"]]]]],[[0,"let"],[1,"math:prime?"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"="],[1,"n"],[2,1]],[1,"false"],[[0,"if"],[[0,"<"],[1,"n"],[2,0]],[1,"false"],[[0,"if"],[[0,"not"],[2,0]],[[0,"apply"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"tail-call:math:prime?"],[[0,"lambda"],[1,"i"],[1,"end"],[[0,"do"],[[0,"let"],[1,"prime?"],[[0,"not"],[[0,"="],[[0,"mod"],[1,"n"],[1,"i"]],[2,0]]]],[[0,"if"],[[0,"and"],[[0,"<="],[1,"i"],[1,"end"]],[1,"prime?"]],[[0,"tail-call:math:prime?"],[[0,"+"],[1,"i"],[2,1]],[1,"end"]],[1,"prime?"]]]]],[[0,"or"],[[0,"="],[1,"n"],[2,2]],[[0,"tail-call:math:prime?"],[2,2],[[0,"math:sqrt"],[1,"n"]]]]]]],[[0,"Any"],[1,"nil"]]]]]]],[[0,"let"],[1,"math:number-of-digits"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"="],[1,"n"],[2,0]],[2,1],[[0,"if"],[[0,"<"],[1,"n"],[2,0]],[[0,"length"],[[0,"from:integer->digits"],[[0,"|"],[[0,"*"],[1,"n"],[2,-1]],[2,0]]]],[[0,"if"],[[0,"not"],[2,0]],[[0,"length"],[[0,"from:integer->digits"],[[0,"|"],[1,"n"],[2,0]]]],[[0,"Any"],[1,"nil"]]]]]]],[[0,"let"],[1,"math:largest-power"],[[0,"lambda"],[1,"N"],[[0,"do"],[[0,"let"],[1,"N1"],[[0,"|"],[1,"N"],[[0,">>"],[1,"N"],[2,1]]]],[[0,"let"],[1,"N2"],[[0,"|"],[1,"N1"],[[0,">>"],[1,"N1"],[2,2]]]],[[0,"let"],[1,"N3"],[[0,"|"],[1,"N2"],[[0,">>"],[1,"N2"],[2,4]]]],[[0,"let"],[1,"N4"],[[0,"|"],[1,"N3"],[[0,">>"],[1,"N3"],[2,8]]]],[[0,">>"],[[0,"+"],[1,"N4"],[2,1]],[2,1]]]]],[[0,"let"],[1,"math:cartesian-product"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"array:transform"],[1,"a"],[[0,"lambda"],[1,"p"],[1,"x"],[[0,"array:merge!"],[1,"p"],[[0,"array:map"],[1,"b"],[[0,"lambda"],[1,"y"],[[0,"array"],[1,"x"],[1,"y"]]]]]],[[0,"array"]]]]],[[0,"let"],[1,"math:fibonacci"],[[0,"lambda"],[1,"n"],[[0,"do"],[[0,"let"],[1,"memoized:math:fibonacci"],[[0,"lambda"],[1,"n"],[[0,"if"],[[0,"<"],[1,"n"],[2,2]],[1,"n"],[[0,"+"],[[0,"memoized:math:fibonacci"],[[0,"-"],[1,"n"],[2,1]]],[[0,"memoized:math:fibonacci"],[[0,"-"],[1,"n"],[2,2]]]]]]],[[0,"memoized:math:fibonacci"],[1,"n"]]]]],[[0,"let"],[1,"math:enumeration"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"I"],[[0,"var:def"],[2,-1]]],[[0,"let"],[1,"enumeration"],[[0,"lambda"],[[0,"do"],[[0,"let"],[1,"i"],[[0,"+"],[[0,"var:get"],[1,"I"]],[2,1]]],[[0,"var:set!"],[1,"I"],[1,"i"]],[1,"i"]]]]]]],[[0,"let"],[1,"math:palindrome?"],[[0,"lambda"],[1,"xs"],[[0,"array:every?"],[[0,"array:map"],[[0,"array:zip"],[1,"xs"],[[0,"array:reverse"],[1,"xs"]]],[1,"pair:subtract"]],[1,"math:zero?"]]]],[[0,"let"],[1,"math:max-sub-array-sum"],[[0,"lambda"],[1,"xs"],[[0,"get"],[[0,"array:transform"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,"do"],[[0,"set!"],[1,"a"],[2,1],[[0,"math:max"],[[0,"+"],[[0,"get"],[1,"a"],[2,1]],[1,"b"]],[1,"b"]]],[[0,"set!"],[1,"a"],[2,0],[[0,"math:max"],[[0,"get"],[1,"a"],[2,0]],[[0,"get"],[1,"a"],[2,1]]]],[1,"a"]]],[[0,"array"],[2,0],[[0,"get"],[1,"xs"],[2,0]]]],[2,0]]]],[[0,"let"],[1,"math:list-fold"],[[0,"lambda"],[1,"xs"],[1,"f"],[1,"out"],[[0,"if"],[[0,"list:nil?"],[1,"xs"]],[[0,"Atom"],[1,"out"]],[[0,"math:list-fold"],[[0,"list:tail"],[1,"xs"]],[1,"f"],[[0,"f"],[1,"out"],[[0,"list:head"],[1,"xs"]]]]]]],[[0,"let"],[1,"math:list-maximum"],[[0,"lambda"],[1,"xs"],[[0,"math:list-fold"],[1,"xs"],[1,"math:max"],[1,"math:min-safe-integer"]]]],[[0,"let"],[1,"math:list-minimum"],[[0,"lambda"],[1,"xs"],[[0,"math:list-fold"],[1,"xs"],[1,"math:min"],[1,"math:max-safe-integer"]]]],[[0,"let"],[1,"math:list-summation"],[[0,"lambda"],[1,"xs"],[[0,"math:list-fold"],[1,"xs"],[1,"+"],[2,0]]]],[[0,"let"],[1,"math:list-product"],[[0,"lambda"],[1,"xs"],[[0,"math:list-fold"],[1,"xs"],[1,"*"],[2,1]]]],[[0,"let"],[1,"math:list-range"],[[0,"lambda"],[1,"low"],[1,"high"],[[0,"if"],[[0,">"],[1,"low"],[1,"high"]],[[0,"Numbers"],[[0,"array"]]],[[0,"list:pair"],[1,"low"],[[0,"math:list-range"],[[0,"+"],[1,"low"],[2,1]],[1,"high"]]]]]],[[0,"let"],[1,"math:unique"],[[0,"lambda"],[1,"xs"],[[0,"do"],[[0,"let"],[1,"sorted"],[[0,"array:sort"],[1,"xs"],[[0,"lambda"],[1,"a"],[1,"b"],[[0,">"],[1,"a"],[1,"b"]]]]],[[0,"math:map"],[[0,"array:select"],[[0,"array:zip"],[1,"sorted"],[[0,"math:sequence"],[1,"sorted"]]],[[0,"lambda"],[1,"x"],[[0,"do"],[[0,"let"],[1,"index"],[[0,"array:second"],[1,"x"]]],[[0,"or"],[[0,"not"],[[0,">"],[1,"index"],[2,0]]],[[0,"not"],[[0,"="],[[0,"get"],[1,"sorted"],[[0,"-"],[1,"index"],[2,1]]],[[0,"get"],[1,"sorted"],[1,"index"]]]]]]]],[1,"array:first"]]]]],[[0,"let"],[1,"list:pair"],[[0,"lambda"],[1,"first"],[1,"second"],[[0,"array"],[1,"first"],[1,"second"]]]],[[0,"let"],[1,"list:car"],[[0,"lambda"],[1,"pair"],[[0,"get"],[1,"pair"],[2,0]]]],[[0,"let"],[1,"list:cdr"],[[0,"lambda"],[1,"pair"],[[0,"get"],[1,"pair"],[2,1]]]],[[0,"let"],[1,"list:head"],[[0,"lambda"],[1,"pair"],[[0,"get"],[1,"pair"],[2,0]]]],[[0,"let"],[1,"list:tail"],[[0,"lambda"],[1,"pair"],[[0,"get"],[1,"pair"],[2,1]]]],[[0,"let"],[1,"list:nil?"],[[0,"lambda"],[1