ELF@$@8@$$ppZB ; ?T ?; ?T @;+AT7A;AATMATLA|SAWAqUCAGP 0@p`' 0 T IA|  8AFAqU @AG ' - >U @AT HA4 ); FAH  T OA4 ); MAH  T VA4 ); TAH  T ]A4 ); [AH  T dA4 ); bAH  T kA4 ); iAH  T rA4 ); pAH  T yA4 ); wAH  T A4 ); ~AH  T A4 ); AH  T A4 ); AH  T A4 ); AH  T A4 ); AH  T A4 ); AH  T A4 ); AH  T @4 ); AH  'A 'ATA|@ApUAGTA;A`'0TA'B p|R}OE TA|?ApUAG~ `<K t6M > >a r(t#>a rt >a  r G | } E TjA|i?gApUaAG~ KtMartart arG | } E TLA|A?IApUCAG~ KtMar G T ?Ap `' & QA & hATnA|?kApUeAG~KtMarxtsarmt harbG ZA'| )TPA'p TIA| T?T>4oU>AGB0>EL<LH p P `'| +} (G | }E~ KtMarGG B HH0 & @ & @ p' p' p' & @ & @ & @ & @ & @ & @ p' p' & @ & @ & @ & @ & @ & @ p' p' & @ & @ & @ & @ & @ & @ p' p'@|>@pUX@G'@|=@qU@G'@  TB@G@ 0'@|n>@pU@G'@|`>@pU?G'@ '@T@|a>@pU@GT?;@`'0T@'@ P|}ET?|=?pU?G~pKtM>>art>art >arwG|o}lET?|=?pU?G~YKtSMarKtFar@t ;ar5G|-}*ET7@|v=4@pU.@G~`KtMar GT*@P'D&?&?P'P' &z? &?&t?&?&n?&?P'P' &`? &w?&Z?&q?&T?&k?P'P'?|~=?pU?G'?|p=?pU?G'? '? T ?|  #=?pU ?G '@ 'P T?|>=~?pUx?GT>;?'` Tx?'` 'p B@>EL<?LH H T >|  <>pU |>G T?`'R B 0>EL <VL H  T?p'>0 T k>'f? T>?'X? T z?G  'P`|8}5ET O>|  X<L>pU F>G ~&K t M >  > a r t  > a rt > a rG|}ET%>|$<">pU>G~pKtM a rGta rt a rG|}ET>|;>pU=G~pT @>|  ;=>pU 7>G ~uK t M a rt a r G t a r G  >'| F|3}0G|}E~pKtM a rGGB HH  P&=&=T>;/;;>B H H  B HH B HH$T>;;;>B H H  B HH B HH$T='<T>G`' j|!T=| T^<T P;4 oU=GB 0> EL < ]L  GH   '' &t= &=&n=&=&h=&=KtM a rGTN>G`'|T->G`' |}E G ~ K t }M   a r uG | `} ]G | Yt Ta r NG | 9} 6G | 2G T >|  L;=qU >G G 'T = 'm T = 'c`T= 'eT=;E:;= B H H  B HH B HH$&<&<T=;.:;= B H H  B HH B HH$&<&<T=;:;= B H H  B HH B HH$'&<&<T=;9;= B H H  B HH B HH$ &< &<&<&<&~<&<Tc=;9;a= B H H  B HH B HH$ &g< &~<&a<&x<&[<&r<T@=;9;>= B H H  B HH B HH$O=|b:B=pU=G'O=|n:B=pU"=G'G= `T=|]:<qU=GG p'  T =P'~p T='up T <`P'w%=T<P@'0|G}DET=|9=pU<G~05Kt/M>>ar!t>art >arG' &; &;&;&;&;&;T<;9;<B HHB HHB HH$ <|9<qU<G'<|9<pUs<G'<|9<pU=<G'< pTC<G ;<`'(` | T ;|  9;pU ;G T A<pP' p'< '<|P90<pU <G'< '<B0>EL<LHT<|9<pU<G '< @T;GP'@|e}bET<|8 <pU<G~0SKtMM>>ar?t:>ar1t ,>ar#t0>art@>arGG'1&:&:&:&: &: &:&:&:&:&:Tt;;7;r;B HHB HHB HH$0< |TS;')@ |}ET;|18;pU;G~`AKt;M>>ar-Gt'>art >arG'  B HH  ' & %: & <: & : & 6: & : & 0:T 9|  79pU 9G ~5K t /M>>ar!t >art > a r  ' & 9 & 9 & 9 & 9 & 9 & 9T :;27;:B HHB HHB HH$ ` ']; 'e;|~}{ETQ;|z7N;pUH;G~ hKtbM>>arTtO>arFG| >t 9>ar0G)t0$>arG| t@>ar'&_9&v9'&U9&l9' &K9 &b9'&A9&X9&;9&R9'': ':|}ET:|6:pU:G~0Kt{M>>armGtg>ar^G| Vt Q>arHGAt0<>ar3G| +t@&>arT:|7:qU:G 'Py`''&8&8'&8&8' &8 &8'&8&8&8&8''Q: 'Y:p'U@TE:|v6B:pU<:G`'Pp`'B`B@>EL<LHHT8Pp `0': | } E T8| 67pU7G~ pK tM > >a rt>a rt >a  r G | w} tE T7|57pU7G~ 0K tM  a rta rt a  r G | } E T9|59pU9G~ 0T9|59pU9G~ 0T9|59pU9G~ 0zT9|59pU9G~ 0hT7|u5}7pUw7G~ 0VT7|g57pU7G~ 0DT9|Y59pU9G~ 0 T9|K59pU9G~ 0K tM  a rG ta  r |G G '   T9|69qU 9G'  T$8G ;_9`' ` NT8G p'p 9'| 4| !} G G `' e  | p`' 0| 'T 7; a4;7B H HB H H B H H $ T 9  ' ' & 6 & 6 & 6 & 6Ti7|4f7pU`7G~ 0;T8|48pU8G~ 0K t'M  a rta rt a  r G G   '/ & 6 & 6 & 6 & 6 & 6 & 6K t/M  a r't"a rG t a  r G |B H H   G  ' & n6 & 6 & h6 & 6 & b6 & y6K tM  a  r G G   ' & L6 & c6 ' ' ' ' ' 'T 7; 3;7B H HB H H B H H $ & 6 & 46 & 6 & .6 & 6 & (6T:8|378pU18G~ 0WK tQM  a rItDa r>t 9a r3t0.>a r%t@ >a rtP> a  r G G   'X & 5 & 5 & 5 & 5 & 5 & 5 & 5 & 5 & 5 & 5 & 5 & 5T7|w37pU7G~ 0PK tJM  a rBt=a r7t 2a r,t0'>a  r G T _6G ;7'Dp  T 7   '9 ' & b5 & y5 & \5 & s5 & V5 & m5 & P5 & g5T7|37pU7G~ 0^K tXM  a rPtKa rEt @a r:t05>a r,t@'>a  r G T 5G ;g7'p  T -7   ' ' & 4 & 5 & 4 & 5 & 4 & 5 & 4 & 5 & 4 & 4T47|217pU+7G~ 0;K t5M  a r-t(a r"t a rt0>a  r G G   '< & 4 & 4 & 4 & 4 & 4 & 4 & 4 & 4 ' ' & 4 & 4 & 4 & 4 & 4 & 4 ' '6 | 6|"}GGTH5;6`'.`  T|6`'%` 'T 65;1;45B HHB HHB HH$ ` '6 '6|M26pUI6G'6 '6 '6 '6  '6 B0>EL<nLH T3|23pU3GT4'r` T4p' |4B@>EL<{LH HTc6p'  T[6;[6'  TQ6;U6'  T b3   `'T N6 ; M6B H HB HHB H HB H H $ U6 pB0>EL<"LHT?6|1<6pU66GG P'p T ?4`pP'16  TZ4G@ 0'56 |D}AET 3|  1 3pU 3G ~2K t ,M >  > a r t > a r t > a rG|}ET 2|  02pU 2G ~K t M a rGt a r t a rG|}ET 5|  04pU 4G ~VK t PM  a rHGT3G;5'5T3G;5 'T5|03pU5GT30'G T3   '@''&2&2T 3|  X03pU 3G ~DK t >M  a r6GTR3G;M5 '7TA5|03pU85GTS30'\G TG3   'O@'&=2&T2' &22 &I2&,2&C2&&2&=2' &2 &22&2&,2&2&&2'4 '4 '4|043pU2G'4 '4|03pUs4G'4 TK2|0H2pUB2G'4|/4pUU4G'4 T+2|/(2pU"2G'4|/1pUQ1G'4 '4Th2P@'>0|c}`ET2|F/2pU2G~0QKtKM>>ar=t8>ar/t *>ar!t0>arGt@ >ar'&61&M1&01&G1 &*1 &A1&$1&;1&1&51T2;y.;2B HHB HHB HH$ :4 0 '74 B@>EL<6LHHTj1|'/g1pUa1GT1`'k` B0>EL<_LH GT1`'Wp T 3 p'b3 pB0>EL<LG HT1G P'gp T y1`pP'+3 ;33'Tu1G p'\p  `T 3 p'3 '3 `TS1GPp'(` T3`pP'3|.3pU3G'3 0T0|.0pU0GT/;3 0'3 T2 'L3  B0>EL<LHT/|=./pU/GT/0@'3 `T@3G Pp'p Tw0|4.t0pUn0G~ T0p` P'd `'h3 PTc3P'!P|5TU3P'!@|'''N3|-A3pU53G'F3|-33pU'3G'>3 'X30' T0|-/pU/G T 4/; "3 '% T/|-/pU/GT /; 3 '   0 'P B 0> EL < L  H GT0'  `T 2|  8-2pU 2G ' TD1'  `B H HB@> EL < vL HHGGT2| -2pU2G0'  B0L <LHGT/0'rp'2 Tt1 '2 B0>EL< LHT/0@'K2  T/G@ 0'-2 PG`'T/P`0'{2 B0>EL</LG HB0L<LH T4.|,1.pU+.GT2.G @P`'"p T &.p P`P'J2 G 'O2 G G 'Rp T1p' |5T1p'  ||.T2|a,2pU2G'  B@>EL<QLG H HT.p'`  'T1'Ap |5Tu1'Ap |B0>EL<7LH T .|  ,%/pU .G p  `'  '1 `T.Gp't` T.GP@`p@''1 `T.|+.pU.GT20'p G '51 `T0G Pp'"p T-|+-pU-G~ Th.p` P' `'o1 pB0>EL<LHT3.G P'p T .`pP'T1  T5.G@ 0'J1 0 '1T B1|  #+?1qU 91G  '  T 81|  +51qU /1G T 61|  +31qU -1G T41' | T(1' | | } E K tM > >a rG | z} wE KtpMarhG t b>a  r YG 5 'E K t IM  a  r AG 5 '++B `> EL < \L  H H H H T;,  '-)##   ' ) '0T0' &[, &r, &U, &l,&O,&f,& 0&G,&^,& 0% 0% 00|*0qUs0G'1 |^}[ET+|)+pU+G~HKtBM>>ar4Gt.>ar%Gt >arGB0>EL<)LGHTk0|*h0qUb0GTi0|*f0pU`0G  ` @' T_0 'V ``Z1'| U|B}?G|+}(GG|}G |  GGB H H B HHT~,;(;|,B HHB HHB HH$Tn,;(;l,B HHB HHB HH$T^,;(;\,B HHB HHB HH$T + '0 T+ '  |_ }\ ET+|)+pU+G~ Kt Mar Gt ar Gt ar G|]}ZET5-|(2-pU,-G~hKtbMarZGtTarNGT +G ;/' P .T,|),qU,G  0'P T +G  'P |} ET+|(+pU+G~KtMartart art0>art@>arG>0'T +G 'UP |}ET,|](,pU,G~KtMar}GtwarqGt kareG  'C |T.|/(g,qU.G|H}EEK>ar0;Kr6Mr0B FHT.| ( *qU.G|}EKar0Kr0 MrB@FHHH &.%.&.&.&.%.&.&. &* &*&*&*&)&*T*;V';*B HHB HHB HH$&)&)&)&) &) &)&)&)&)&)T*;(';*B HHB HHB HH$&)&)&)&)T<*|{'9*pU3*G~&Kt MarGtar Gt arGT }*G 'M P ||B HH0T T* '*P |}ET*|2'*pU~*G~ DKt>Mar6Gt0ar*t %arGt0> a r t@ >arGT * ' P |}EG~KtMarGtarGt arT-|'-pU-G ; -P'P |T-B HH|B HHT|-|&*qUs-G|}}EK>ar0sKrnMrhB FHTZ-|&(qUQ-G|T}QEKar0JKr0EMr?B@FHHHT-|j&^(qU-G|)}&EKar0Kr0MrB@FHHHT p-;p- '[ P j&-%0-&>-&D-&-%(-&6-&<-&-% -&.-&4- &Q( &h(&K(&b(&E(&\(T*);%;()B HHB HHB HH$&/(&F(&)(&@( &#( &:(&(&4(&(&.(G~uKtoMargtbar\T,|%*qU,G|J}GEK>ar0=Kr8Mr2B FHTy,|%'qUp,G|}EKar0Kr0Mr B@FHHH &e,%},&,&,&],%u,&,&,&'&'&'&'T(;$;(B HHB HHB HH$ &' &'&'&'&~'&'TS'|H%P'pUJ'G~SKtMMarEG G ' T ;(G ;V,'" P |T+|%T)qU+G|}EK>ar0Kr MrB FH0_&+%+&+&,&'&5'T;'|$8'pU2'G~CKt=M  a r 5G t/a r )G t #arGB0L< LGHTy+|%v+pUp+G  'P T n+ 'e P | ```f,'| q|^}[G | G} DG G | /} ,G G | } G | G GB H H B H HB H H T~';#;|'B HHB HHB HH$Tn';#;l'B HHB HHB HH$T^';#;\'B HHB HHB HH$TN';#;L'B HHB HHB HH$T & 'P T w& ' P T n& ' P T;+|$X&qU2+G| }EK> a r0Kr0MrB@FHHHI&*%*&*&*T*|#(qU*G|}EK>ar0Kr MrB FH0&*%*&*&* &% &%&%&%&%&%;*b+'T &G  0'P ~ T&G  0 'gP |}ET*|o#*pU*G~KtMarG|}E T ('|  Q#%'pU 'G ~ K t M  a  r G t a  r G | t a rGt 0> a r G | t @> a r GtarG|w}tETL'|#I'pUC'G~P6T%|"%pU%G~PT&'|"#'pU'G~PIKtMarGT&|#&qU&G  'P |c  'P {qT )'XP T )'^P T)B HHB HHT)|}#)pU)G  ' P B HHT)|g#)pU)G  'P T?)|t"&qU6)G|}EK>ar0KrMrB FHT)|P"N$qU)G|}E K a r 0K r 0M  r B @F H H H TT)|-"!$qUK)G|}EKar0Kr0MrB@FHHH T 3) 'P Td)|"a)pU[)G  'P Tc);m)Ti);m)Tw)T ); ))'| |}G GT)'s T )'k T)'q B H HG|}EKar0KrMrB FHG|}EKar0Kr0MrB@FHHHG|}EKar0Kr0MrB@FHHHT(p'+ T(' B H HB H HT(|V!%qU(G|`}]EKar0VKr0QMrKB@FHHHG|@}=EKar06Kr01Mr+B@FHHHG| }EKar0Kr0Mr B@FHHHT,(`' T=(' B HHB H HB H HB H H G | } E Kar0K r0M rB@F HHH G | } E K a r 0K r 0M  r B @F  H H H G|}E K a r 0K r 0M  r B @F H H H  T''X T''B B H H B H H G | h} eE Kar0^K r0YM rSB@F H H HG | H} EE Kar0>K r09M r3B@F HHHG | (} %E Kar0K r0M rB@F H H HT d''p Q& '% %'& 3'& 9'& '% '& +'& 1'& &% '& #'& )'&&% '&'&!'& &% '& '& '& &% && '& '&&%&&'& '&&%&&&&'&&%&&&&&&&%&&&&&&&%&&&&&&&%&&&&&T";_;"B HHB HHB HH$Tc'|#qUZ'G|:}7EKar00Kr+Mr%B FHG|}EKar0Kr0 MrB@FHHH&c&%{&&&&&&[&%s&&&&&&S&%k&&y&&&&K&%c&&q&&w&&C&%[&&i&&o&  'P ~| } |}zT &'P T &'P T&B HHB HHT&|-o#qU&G|}EK>ar0Kr MrB0FHHT%|!qU%G|}EKar0Kr0MrB@FHHHT &| qU&G|t}qEKar0jKr0eMr_B@FHHHT % P'~P Tj&|"qUa&G|>};EKar04Kr/Mr)B FTT&HG|}EKar0Kr0Mr B@FHHH&X%%p%&~%&%&P%%h%&v%&|%&H%%`%&n%&t%&@%%X%&f%&l%&8%%P%&^%&d%T%|Q"qU%G|H}EEK>ar0;Kr6Mr0B FHT$|-+ qU$G|}EKar0Kr0 MrB@FHHH&$%%&%&%&$%$&%& %&) &@ T$|qU$G|}EK>ar0Kr0 MrB@FHHH&$%$&$&$T$|qU$G|}EK>ar0Kr0 MrB@FHHH&|$%$&$&$T ;&; B HHB HHB HH$&&&&&& & &&&&&&&G~|}|ET |Q pU G~>T~!|C{!pUu!G~_T$|53qU#G|}EK>ar0Kr0 MrB@FHHH&#%$&$&$T#|qU#G|}EK>ar0Kr0 MrB@FHHH&#%#&#&#T;h;B HHB HHB HH$T$|$pU}$G~0T#|qU}#G|}EK>ar0Kr0 MrB@FHHH&q#%#&#&#T;;B HHB HHB HH$TG#|zxqU>#G|}EK>ar0Kr0 MrB@FHHHZ&2#%J#&X#&^# &{ &&u&&o&T |9 pU G~1T |+ pU G~!T | pU G~T | pU G~BT!#|qU#G|*}'EK>ar0Kr0MrB@FHHHT";#'&"%"&"&"T;Q;B HHB HHB HH$ & &&&&&''m# P|9}6G|!}G| GTG;Q#@P'w0|''T;;B HHB HHB HH$0Ts;;qB HHB HHB HH$0$# '+#| #pU!G'## ',# @T#|\!pU#G'0|5T #|Fv!pU#G@''T;"B HHB HHB HHB HH$0" '"|fFqU"G'" '" P|Q}NG|9}6GG| }G| TG;"0P'0|''T;,;B HHB HHB HH$0T;;B HHB HHB HH$0T; ;B HHB HHB HH$0" '" '"|"qU!G'"|"qU!G'"|qU^!G'" '"|C1pU G'x" PT P'0`' 'e" V@:;;1U?U}UaUEU)U UUOV3+;.1U2UbUFU*UUUU4V&;!1U%U%V)#V*$V+;&1U*T(1U&V( V-;(1U,T*1U(V* ;%1U)U7V);$1U(U(V,&V+'V2(V+;&1U*UNU6V(;#1U'U'V+%V*&V 'V*;%1U)U)V-'VN(V+;&1U*T(1U&U8V&;!1U%U%V'#V*$V+%V&V-'V,(V)V,;'1U+U+V/)V0*V/+V,V/;*1U.U.V2,V3-V2.V/V2;-1U1U1V5/V60V51Vr2V5;01U4U4V82V93V84VW5V8p;31U7U7V;5V<6V;7V<8V?9V@:VA;VB<VC=VD>VE?VF@VGI;B1UFTD1UBVD@;?1UCUCVG;;B1UFTD1UBVF4;A1UEUEVI/VP4VW;;R1UVVXVY;;T1UXVZ?V[=;V1UZV\=V];;X1U\V^7V_7;Z1U^V`Va5;\1U`VbVc1;^1UbVdVe3;`1UdVfVg1;b1UfVhVi-;d1UhVj Vk+;f1UjVlVm';h1UlVnVo%;j1UnVpVq!;l1UpVrHVs;n1UrVtVuVVVVV$V';1UUUUfUUUV;UUUVVV';1UUV$VV*V-V2V5V:VAVmV CVFV#KV6RV;VLZ;G1UKVMYV``VkeV~jVmVrVwVVyV~VVVVV%V,V3V:VAVFVKVRVYV^VaVfViVtVV4VQV;1UVVVVVVV/jVBVMVnVVVVVVVVV ;UUVV VV V"V/V6V=BVB;=UUwUeUIV=VF8VG;B1UFUPVFVOAVPVYKVbVc;^1UbVhPVibVlVoVx ;s1UwV{ VVV;1UV;1UUUUV;1UV ;1UV;1UV ;1UVVVVVVjVV 'language'cps' contification'filename'language/cps/contification.scm'imports'ice-9'match'srfi'srfi-11'srfi-1'select'fold'renumber'utils'intmap'intset'with-cps'exports'contify' declarative?'guile'define-module*'set-current-module'compute-first-class-functions'!compute-functions-called-by-label'compute-functions'compute-arities'contifiable-arity?'arity-matches?' compute-contification-candidates'compute-call-graph' tail-label'compute-return-labels'intmap->intset'filter-contifiable' trivial-set'compute-contification'apply-contification' empty-intmap'$kargs' $continue'$fun'wrong-type-arg'struct-ref/immediate'=Wrong type argument in position 2 (expecting boxed field): ~S' out-of-range'Argument 2 out of range: ~S'$rec' intmap-add!'reverse' intmap-fold'persistent-intmap' empty-intset'$callk' intset-add!'persistent-intset' compute-singly-referenced-labels' match-error'no matching pattern' intmap-ref' intset-ref'$kfun' intset-add' intmap-add' intset-fold' intmap-map'$kclause'$arity'length'invert-partition'$const'$prim' $const-fun'$code'$values'$call' $primcall'$branch'$switch'$prompt'$throw' intmap-remove' misc-error'1internal error: label 0 should not be contifiable'compute-function-body'intset->intmap'intset-subtract' intset-next'%compute-strongly-connected-components'fixpoint' intset-union'compute-max-label-and-var' label-counter' var-counter'8Wrong type argument in position 1 (expecting struct): ~S' parameterize'Not a parameter: ~S' parameter?'list'map'allocate-struct'*Expected vtable with no unboxed fields: ~A'wrong-number-of-args'2Wrong number of initializers when instantiating ~A'8Wrong type argument in position 1 (expecting vtable): ~S'closure' $kreceive'rest' list-head'append' list-tail'scm-set!/immediate'pair'tail'allocate-words/immediate'prim'values'$ktail'filter''fresh-var outside with-fresh-name-state' fresh-var' fresh-label00l134586T79;@<h@CGJL NOQSUV4!W$"X'Z )[T)\t)]-^-`-b,.c.e.g5i6kh9m9nT;o;p;r<t0<v$=x?z?~H@|@DAAApGG>T> Tp>pp>p5?Ė@? Ė]?|h?!|?@ @ $@ $\&@ \x?@xJ@ [@   ' E g y             $,4 <(D0L8P@XHtH|HH    08<0DL hp            (0 L T X d"d"p,|2*::B"@@@@BBLJJ@@@@""$HHHHJJTR:8  ** 8JJL:: 8 $,0$,0  $,0$,0   08<0DL hp      (0LTXd d p$|*"22: 8888::DB2   $,0$,0       08< TpxH0880 (22X@                              084PX t | (**4:2BBJ*HPPPPRR\JZXbJHPPPP    ""dJbB@" (H`jjlbbH`((x`h  **  x   ` h  ( " " L * 2 0 0 " (  @ H 8 8 0    ( ( ( ( ( ($,0$,0      0 8 < @@\Hd8@8    4PXt|"   ($,0$,0$,0   8 H@Tpx| $,0    (8T\`      (4PXt|$*"""""""" (       @\d$*"" **H   (   (0LTXddp|"     (0LTXddp$|*"" **(**(**(   (0LTX(p **                             (0 L T X d"d"p,|2 *::B" @@@@BBLJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@""D*(HH08H @  ( 0 (    (  @ @ @ @ @ @ @ @ B B L  * *   B B L  * *(""$ (@@@@BBL**""""""@@@@BBL**""@P@@@@BBL**""""@P@@@@BBL**""     48@0HHhx0 ( $,0              "("8 T \ `Hh0 @((22HXHPHP  (   "("8 T \ ` d@                 ((00L0T0X0d2d2p<|B*:JJR2*(PPPPRR\*ZXJ*(0000224**x(x@0000224**(x@    $,0 $,0 08<$,0 08< $,0      4PXt|"   (          *(*<X`dHl0 **P8   "("0 < @@`h   (8,@L d    88@$,0 08<DL     (8T\`h     H8@\dhx   (0D0L hx$,0$,0         08T\`Hh0p8   X@HP(H0:Bh000hph(22(((X`      "("8    0,4   "(*0(8(D"T p x | 0H               @H4 <@X(lXtH (   H 2208 H8  **   084<@     0 8 <@D8`d     H8@\dhx   "("8 <@\d                 0 8 <8\ \@d((((0000`8`88JJTZ:Rb`hrrtjRPJ:( (::<**(( **($,0                                                                                                                                     ( 0(L(T(X0d2d2p<|B":JHRZX2" bjhhhhhppp HXpxXp    Xpxxxxzzrrpxxxxbbl j r p b `    h        ( h p p p p r r | j z z z z z r j (   ( h p p p p r r | j z x  j(h*02***,*(  xxxxbbljrpzxb`h`hhhhjj|bzxjb`h(**LJ:8RP*((((0HH008888PRbRRRTRP((((8::::<:8(****,*(  (!!!,!*!2!!!!!!"("*"2"*"*"*","*"(""""########$$$$$$$$ $%%%%%%%%x%x&x&x&b&b&d&b&b&&&&&&&`'''''`'b'j'b'b'b'd(b(`(((x(x)x)x)z)z))r)))))r))p)b)`*`*`*`****+`+h+p+x+++,,,,,`,,h,p,,-- ------ ----.. ...... ...///`//h/p/p0p0p0x0z00z0z0z0|0z0x11111`1b1j1b2b2b2d2b2`22223333333`3h333p3`344`4p4p4p4p4r4r5|5z55555555555666662606667777*77(7P7P8P8P8P8P8P8P8P8P8P8P9R9R9T9*9*99(9(9(9(98:(::(::0:P:`:P;h;h;h;;h;p;(;(<(<<(>>>>>>>>>>>p?x?z?z?z?z?|?z?x??@P@P@P@@@8@P@`@p@x@@@@0@@AAAAAAABBBBBBBBBBBBCCCCCCCCC0CCDDDDDDDDDE0EEEEEEEEEEEFFFFFFFFFFFFGGGGGGGGGGHHHHHHHHIIIIIIIIIIIIIIJJJJ0JJJJJJJJKKKK0KKKLLLLLLLLLLLLLLMMMMMMMMMMMMNNQQQQ QQRRRRRRRRRRRRSS(S*S*S*S*S,S*S(U(UVVV(V0V8V0VHVHVHVHWPWRWbWRWRWRWTWRWPWWXXXHXJXJXJXJXLXJXHXYYYYPYRYRYRYRYTYRYPYZZZZZZ0Z2Z2Z2Z2[4[2[0[[[[[[[[[[](](](](]0^2^:^2^2^2^4^2^0^^^^_(_*_*_*_*_,_*_(```````(`*a2a*a*a*a,a*a(abbbb(b*b2b*b*b*b,b*b(cccc cccccddddddddddee(ee(e(e(e(e(f(f(f(fffff(f*f2g*g*g*g,g*g(ghhhh(h*h2h*h*h*h,h*h(iiii iii(i(j(j(jjjjj(j*j2j*j*j*k,k*k(kkkk kllllll(l*l2l*l*l*m,m*m(mmmmmnnnnnnnnnoooooooopp(ppppppp2pppqqqqq qrrr rrrrrrrr     (DT\` h0 ( ( $,0     08<Pdl  (   $,0      (DHdx| 0 ( ( (  $,0$,0$,0  $,0  0LL(L0 B, B4TLp(P(P: : 3   hl+ 8K 8D @` 8 8   88 <,(T`  8?8$^l8880 84$Xx!$ $'$4' )  )-*889:E;8@;\;x;g;(g;=<>@|>8CCC8$Dz@D8xDHD8DH`@E8xE$E G,GHTIII\LJ8JhJ,KK*HL6L86 M8VXM VxMTP,PTP@QPdQ@R,llRXTh,UtULVV@W,intmap@language/cps/utilstail-labelcompute-return-labelsintset-subtract@language/cps/intsetintmap->intsetadd-keyfilter-contifiabletrivial-setintset-next@language/cps/intsetcompute-contificationattempt-contificationapply-contificationparameter?@@guilefilter@guileintmap-add!@@language/cps/with-cpsfresh-var@@language/cps/utilsfresh-label@@language/cps/utilsrenumber@language/cps/renumbercontify language/cps/contification.scmice-9/match.upstream.scmlanguage/cps/utils.scmlanguage/cps/with-cps.scmlanguage/cps.scmice-9/boot-9.scmlanguage/cps/intset.scm {;,a,,,b,,,b,$,b,e{Jw w>ww~~w(w|w|}ww{sJv,L< x(.,{l|, | {w;;& yJv,L< x(.  ,W^-*|Jv,mzm,,,*SJ-<,,_< ; ( 1 !5 wE$, ~,$, ~, |,; w< u; w<;&,~w ~, ~,v,u,$,~,;$,~,;$,~, $, ~,$, ~,$, ~, ';1~w%~,w%~,v,fw <, 8$,~,!5 = Y * ;  ,*t6;, ,<;2H$,~,u<< , " w u/    zJJ$, ~,S x;HlFlFlF x<,lFlFlFx-;,TE x( [x - )- 8- B- K- / 1 {2. W,Y;6 Fv6<-> zJ,$, ,,  m, k h jh%&.; h lY  d$, ,,g .fh$ex Y,cx% Y,a  `h{: < J,  G,$, ,%1;$s,0;% J1;%J1;,J ћ z ,  ,>54,JiJow,;,x&<'H,&)<(;<x(/ YY8,5,8V/pxY5,2, v;  htY  ,tY  ,(vY4;5MA;20>;1&;&; , T$,n,z,,w,[ <! ;,  x; #3",(ww4;J$<#;,]>Ju<,k<z,w!< ;.,<,x <,,v ;'lJ{J,@:,e 9;w hoy, J<,h,< ,,w/<.;,Kw, )w=nz;,KcwZZ,x <,,v ; S;?%<,TJ, (w Z;,,v 7; F%zY4<3;*x); (<,J!< ;.,!="!; ,!$<#;!}L y,y,W,g,K. <x # I ,}7$, ,}$, ,}$, ,_ !,_w !,pw x`w xYw'/ ,; ( ; y =~}  J$, ,$,,  w  w ;v=; bY, ',jK);#,Z";}Y } }w |w J{"~J$,,  t}} v<`~$,, "o ,nhYh};   , i hhwxX,~F$,,~$,,~$,,~$,,v6vw6vw6}w ,}"",e ,~h;6 . .2 ; - 7x"-1{1Y;?w},,}h,j*,l+<$:~;}}w}w,#!k;5,.5..!.;,mY} ,}h ,}h ,~ ~Y ~w }w ,} ,~ ~w ~w }w ,} ,~, ~w ~w }w ,} ,~ ~w ~w }w ,{k,$,,~ ~Y   w},}h,j*}h}}w}w,} 1J ,} s ?} }  }h}~,$,, * w6x#-},}~,$,, s}, r~,$, ,} //'/3/0}w|Jm~,$,,  ~YY5},$,,}$,,"~.;",.;J|J=g;, !Y-;JY.~,$,,~$,,~$,,".;!L-;.`@,"x y l8?$ 8\ @T 8t 8 ,   8 84 TD(l` 838<R`888H8L$px #  $(&$L&( (!)8,9:9 :8X:t::[:([:<T=@=8BBC8intmap@language/cps/utilstail-labelcompute-return-labelsintset-subtract@language/cps/intsetintmap->intsetadd-keyfilter-contifiabletrivial-setintset-next@language/cps/intsetcompute-contificationattempt-contificationapply-contificationparameter?@@guilefilter@guileintmap-add!@@language/cps/with-cpsfresh-var@@language/cps/utilsfresh-label@@language/cps/utilsrenumber@language/cps/renumbercontifyclosureargcachevarproctmpmodulecompute-first-class-functionscompute-functions-called-by-labelcompute-functionscompute-aritiescontifiable-arity?arity-matches?compute-contification-candidatescompute-call-graphtail-labelcompute-return-labelsintmap->intsetfilter-contifiabletrivial-setcompute-contificationapply-contificationcontifyvalcontscachedboxlabelcontfirst-classvtablerfieldsnfieldsptrwordbitsmaskreswlsp-lsmodnametagcodepairarg0arg1arg2arg3kfunby-labeldefall-defskdefbound-namestail_functionsvarsclausearitynargsprimaritiesxlabelsfun-labelbodiescallsreturnsarg4tailsreturn-substsoutkmapcontifiedgroupsidsetcandidatesgrouptcall-substsmax-labelmax-vart-12b5e90c33c990b5-16f3t-12b5e90c33c990b5-16f4t-12b5e90c33c990b5-16fat-12b5e90c33c990b5-16fbvalsflagssargsnames+vars+cpssrcexptermexproldnewCompute the set of $kfun labels in @var{conts} that can be called by value rather than by label. Assumes @var{conts} contains only reachable conts. Assumes each $kfun is only made into a first class value by a single label. Returns an intmap map from $kfun label to label in which the first-class function is defined.Compute the set of $kfun labels in @var{conts} which are targets of $callk.Compute a map from $kfun label to bound variable names for all functions in CONTS. Functions have two bound variable names: their self binding, and the name they are given in their continuation. If their continuation has more than one predecessor, then the bound variable name doesn't uniquely identify the function, so we exclude that function from the set.Given the map FUNCTIONS whose keys are $kfun labels, return a map from label to arities.Compute and return a label -> (variable ...) map describing all functions with known uses that are only ever used as the operator of a $call, and are always called with a compatible arity.Given the set of contifiable functions LABELS and associated bound variables VARS, compute and return two values: a map LABEL->LABEL... indicating the contifiable functions called by a function, and a map LABEL->LABEL... indicating the return continuations for a function. The first return value also has an entry 0->LABEL... indicating all contifiable functions called by non-contifiable functions. We assume that 0 is not in the contifiable function set..guile.procprops.rodata.data.rtl-text.guile.frame-maps.dynamic.strtab.symtab.guile.arities.strtab.guile.arities.guile.docstrs.strtab.guile.docstrs.debug_info.debug_abbrev.debug_str.debug_loc.debug_line.shstrtab