ELF@+@8@bb++bbbppD ;?T?;?T?;s@T@;BTBTB|BBqUBG`@Pp' 0TB|BBqUBG';BTB|BBpUBG'PTB|BBpUBG'@;BTB|BBpUBG'T*A4)->UB;BHTBTB'@|TB|iBBqUBG;B'TB4)->T@4oGTB'"->UB;BTB;BB HHB HHB HHB HH$->UB;BHTB4)->4oG'"->UB;BTB;BB HHB HHB HHB HH$->UB;BHTB4)->UB;BHTB4);BHTB4)TB| TBTr?4oUBGTB|>BqUBGB HHTB| TmBT_?4oUBGTB|>BqUBGB HHTS?TA`'" |UT}B| TBBT>?4oUrBGTqB| T4BT@4oUfBGG ' B0>EL<~LHB HHTSB| TBT?4oUHBGG G ' B0L<LHB HHB HHB HHT.B| TATW?4oU#BGT"B|C>BqUBGB HHTB| TATD?4oUBGTB|&>BqUBGB H H T B| TAT;?4oUBGT B|  >AqU AG B H H  TA| TAT ?4 oUAG T A|  =AqU AG B H H  T A|  T yAT ?4 oU AG TA|=AqUAGB H HT A|  T \AT>4 oU AG TA|=AqUAGB HHTA| T?AT>4oUAGTA|=AqUAGB HHTA| T"AT>4oUAGTA|x=AqUAGB HHB HHB HHB HHB HHB HHB HHB H HB H H B H H  B H H  TA@' B HHB HHHTA4)GT}A|4=zAqUtAGB HHGTwA|$=tAqUnAGB H H TT@`'|VT@| T@T=4oU@GT@| T@Te>4oU@GG0'B0> EL < L HB HHT@| Tv@T|=4oU@GGGP'B0L <LHB HHB HHB HHGTA|< AqUAGB HHGT A|<AqUAGB HHGTA|<AqU@GB HHGT@|<@qU@GB HHG T@|r<@qU@GB HHG T@|b<@qU@GB HHGT@|R<@qU@GB H H GT@|B<@qU@GB H H B HHB HHB H HB H HB HHB HHB HHB HHB HHB HHT R@p'@B H HB HHHT@4);@HT@4)B0>EL<9LHHT@4)B0L<LHHT=4)B0L<LHHT=4)B0L< LHHT=4)T@T@|>@qU@G;@'@H'@ 0T@| T>Te=4oU@G0'0y0''@|r>|@pU>G'@ 0->;|@T~@|]>{@qUu@G 0'@  Tx@| T>T<4oUm@G|}MK|Z u t0 _pMY0'&f@&~@&@@  T@| T>T<4oU@G|}MK|Z u tp _pM/0'&p@&v@&|@@ @T@| T>T<4oUz@G@'`|(}M%K|ZPut0_p@M|Zpu ?q@@'&W@&]@&c@&i@@ @Tr@| TK>Ty<4oUg@G@'`|}MK|ZPutp _p@ M3p'&F@&L@&R@^@ B@>EL<LHH'X@ pTQ@p' p G ' G 4T@@p'` G 'C@|>=6@pU(@G'C@|0=6@pU@G';@ B@>EL<LHH'3@ pG p'` G 4G p'p T @`'$@|<@pU @G'4@ PT?P'p |<}M9K|3Z`u.t0,_p0)M2@G4T?P'P K|Zut0 _pP M2`'&?&?&?&?&?@ PT?P'Vp |<}M9K|3Z`u.tp,_p0)M2@G4Tk?P'BP K|Zutp _pP M2`'&?&?&?&?&??|O<?qU=G'? `|B}M?K|9Z`u4t02_pP/M >LO>G4|ZupP >LO>T)?p '&?&?&}?&?&?? `|B}M?K|9Z`u4tp2_pP/M >LO>G4|ZupP >LO>T>p '&V?&\?&R?&X?&^?j? 554 5'b? G'?| } | } G T Q?|  T @<T:4 oU F?G ' 5 54  5 | } T1?'  G '  G G ' T><| T<T94oU3<G' 4 G G ?'| M} J| C} @G G ' 5 54  5 | } T>' 1 G '  G G ' [G' 4 G G % >% >| '% >>|:>pU>G'> G'> | } G T >|  T n;T F94 oU t>G ' 55 4 5T ;|  T R;T 94 oU ;G ' 4G | } TH>'  '  G ' B H H  |Rm>'}HGG ' 5 5 4 5 G ' 4 G|}T=' Y '  G' [B H H  |   p  p T >| T:T>4oU>G'> T:| T:Tw84oU:G'` T=|6=pU=Gp' G p'+ T =|  T w:T 84 oU =G  '= T=|6=pU=G;=p'p T=| TL:Tt84oU=G`'p G p`'= PTi:| T,:T74oU^:G`'`T)=| T:T74oU=G`'`554 54'= `;=T=|<9=qU=G`p'P|;=T=|#9=qU=G@`p0'#;=`Pp@'@ `; =T=|9=pU=G'  T=|8=pU=G'  ;>B H H;>B HHB HH;>B HHB H HB H H B H H B H H ;>;?B H H; +?B HHB H HB H H ;r?B H HB H H ;?;?B H HB H H B HH ; ?B HHB HHB H H; ?B HHB H HB H H ;?B H HB H H B HH ; @B HHB H HB H H ; @B H HB H H B H H B H H  '@ V"5;51U!5U/5V!5;51U 5U 5V$55V%5; 51U$5T"51U 5V"5V'5;"51U&5T$51U"5V$5;51U#5U15V#5;51U"5U"5V&5 5V%5!5V5"5V%5; 51U$5Ub5UF5U.5V 5;51U5U5V#55V"55V[55V"5;51U!5U;5U5V#55V"55VA55V"5;51U!5U!5V%55V&5 5V%5!5V&5"5V)5#5V*5$5V+5%5V,5r;'51U+5T)51U'5V)5i;$51U(5Ut7V(5d;#51U'5Ue7V'5_;"51U&5UV7V&5Z;!51U%5UG7V%5W; 51U$5U87V$5T;51U#5U)7V#5O;51U"5U7V"5L;51U!5U 7V!5G;51U 5U6V 5D;51U5U6V5?;51U5U6V5<;51U5U6V57;51U5U6V52;51U5U6V5/;51U5U6V5*;51U5U6V5%;51U5U6V5 ;51U5Uu6V5;51U5Uf6V5;51U5UW6V5;51U5UH6V5 ;51U5U96V5;51U5U*6V5; 51U5U6V5; 51U5U 6V5; 51U5U5V5; 51U5U5V5; 51U 5U5V 5;51U 5U5V 5;51U 5U5V 5;51U 5U5V 5;51U 5U5V 5;51U5U5V5;51U5U5V5;51U5Uv5V5;51U5Ug5V5;51U5UX5V5;41U5UI5V5;41U5U:5V5;41U5U+5V5;41U5U5V5;41U4U 5V4;41U4U|;U4;4U;U4V44V44V54V54V54V54V54V54V55V55V55V 55V 55V 55V 55V 55V55V5 5V5 5V5 5V5 5V5 5V55V55V55V55V55V55V55V55V55V55V55V55V 55V!55V"55V#55V$55V%55V&5 5V'5O;"51U&5T$51U"5V&5H;!51U%5U%5V)5CV05HV55OV<5TVC5[VH5`VO5gVV5uVW5i;R51UV5U7VZ5hV_5V`5n;[51U_5Va5o;\51U`5Vd5Ve5i;`51Ud5U8U8Vb5dVi5Vj5h;e51Ui5Vm5Vp5Vq5c;l51Up5Vt5DVu5_;p51Ut5Vv5Vw5[;r51Uv5V|5ZV5eV5pV5wV5~V5V5V5V5V5V5;51U5V5V5V5V5V5V6V6V6V6V6V!6 ;61U 6V"6V#6;61U"6V$6;61U#6V%6; 61U$6V(6V-6V<6VM6 VZ6;U61UY6U7U7Um7UM7U6U6U6U6US6;5U{6Ui6UM6VA6;<6U7U7UR7U27U6U6Uv6U:6V<6;761U;6U7U7Uq7Ug7UA7U77U7U7U6U6U6U6U]6US6U96U'6V6;6Uj7UJ7U7U6U6Ur6U@6U6V6;6U]7U=7U7U6U6Ue6U36U6;Y5U+6U!6U6;4US6UI6U?6U56V)6V26$6;4Uc6UY6UO6Vy6V6V6;N4U6U6U6;R4U6U6U6V6;4U6U6U6;4U7U6U6V7V$77V%7V.7 7V57VH7;C71UG7VQ7V`7Ve7Vt7;o71Us7U7Vs7;n71Ur7Ur7Ut7Uv7Ux7Uz7Vn7h7Vo7i7Vp7j7Vq7k7Vr7l7Vu7Vz7V7V7V7V7V7V7;71U7U8V7;71U7U7;7U~8U8U8U8U 8U8U7U8V7;71U7U8U[8U58U7U7;7U8U8V7;71U7U7V77;7UA8U7V7{V77V77Vv87V7y;71U7U7V7v;71U7U7; 71U7U7V7i;71U7U7V7d;71U7U7V77V77V7YV77V7]V77V7aV77V7eV77V7iV77V77V87V7g;71U7U7V77V7_V77V77V77;7U7U7V7W;71U7U7V7.;7U9U9Uy9UG9U39U9U8U8U8U8Uc8UA8U#8U8U7U7U7V77V77V77V77V77V77V77V77V77V77;7Uq9US9U59U9U8U8U8U8U[8U=8U8U7U7U7U7;.UG9U)9U 9U8U8U8U8Uc8U18U8U7U7U7U7Uu7V7q7V7v7V7;~71U7U7V77V7;71U7U7V77V7;71U7U7V77;7U8U7V7;71U7U7V77V7;71U7U7V77V77V7;71U7U7V77;7Ux8U8U7V77;7U7U7V77V77V77V7|;71U7U7V77V7t;71U7U7V77V77V7?7V77V7e;71U7U7V77V7];71U7U7V87V87V87V 88V8 8V8 8V8 8V8 8V8F;81U8U8V!88V"8>;81U!8U+8V/88V08<;+81U/8U98V=8-8'system'foreign'filename'system/foreign.scm'imports'rnrs' bytevectors'srfi'srfi-1'srfi-9'gnu'exports'void'float'double' complex-float'complex-double'short'unsigned-short'int' unsigned-int'long' unsigned-long'size_t'ssize_t' ptrdiff_t'int8'uint8'uint16'int16'uint32'int32'uint64'int64'intptr_t' uintptr_t'sizeof'alignof' %null-pointer' null-pointer?'pointer?' make-pointer' pointer->scm' scm->pointer'pointer-address'pointer->bytevector'bytevector->pointer'set-pointer-finalizer!'dereference-pointer'string->pointer'pointer->string'pointer->procedure' make-c-struct'parse-c-struct'define-wrapped-pointer-type' declarative?'guile'define-module*'set-current-module' libguile-'effective-version' string-append'scm_init_foreign'load-extension'procedure->pointer'call-with-deferred-observers'bytevector-pointer-ref'*' misc-error'what machine is this?'bytevector-pointer-set!'writer-complex'reader-complex' *writers*'"bytevector-ieee-single-native-set!'"bytevector-ieee-double-native-set!'bytevector-s8-set!'bytevector-u8-set!'bytevector-s16-native-set!'bytevector-u16-native-set!'bytevector-s32-native-set!'bytevector-u32-native-set!'bytevector-s64-native-set!'bytevector-u64-native-set!' *readers*'!bytevector-ieee-single-native-ref'!bytevector-ieee-double-native-ref'bytevector-s8-ref'bytevector-u8-ref'bytevector-s16-native-ref'bytevector-u16-native-ref'bytevector-s32-native-ref'bytevector-u32-native-ref'bytevector-s64-native-ref'bytevector-u64-native-ref'align'write-c-struct' read-c-struct'macro'make-syntax-transformer'defined?'module-export!' out-of-range'Argument 2 out of range: ~S'wrong-type-arg'?Wrong type argument in position 2 (expecting small integer): ~S'<Wrong type argument in position 1 (expecting bytevector): ~S'Argument 3 out of range: ~S' real-part' imag-part'make-rectangular'append'too few values ~S'too many values ~S'assv-ref'reverse'make-bytevector'fold'_'any' $sc-dispatch'-source expression failed to match any pattern'syntax-violation'wrap'gensym' datum->syntax'pointer'top'ribcage'%wrap'l-5973caad119753-92' type-name'pred'unwrap'print'l-5973caad119753-86'l-5973caad119753-87'l-5973caad119753-88'l-5973caad119753-89'l-5973caad119753-8a'stx'l-5973caad119753-83'hygiene'define-record-type'let'ptr'o' hash-set!'ptr->obj'or'hash-ref'lambda'make-weak-value-hash-table'define'set-record-type-printer!'beginD4<L   <   x0 l!#%'t*-0$ 3< 6T!9!;">0"A\"D"G"J4#MT#P#Sh$V$W$Y%[%]\&_&`@'a((bt(d *"**  ((** ****** **(" `7`7`7`7+ t+`7_               EEE EEEEE "" !!E E, ?<88D, , ,T4p0`LpXxE`8  -E   =NZ=J:=rb=r=rz= vj=v=nR=nb=jJ=f=f=.Z:=~:=F2=CJJ+ I*__f<bbpENMKUxOk81; zXQxC C8E8pEPFPFSR+hh$  $\: \K ` @ @L L(< (h h  , ,d d   P P2      0 0h h '6    $)<$0%0%&r&&&''*?A      .   5LPU . YYYY.5 ^LU . YYYY.^ v.  LPU U YLPU U Y LPU LPU YLPU Y YY LPU U YLPU U YLPU U YLPU U YLPU U YLPU U YLPU U YLPU U YY YYYYYYYYY YY  U Y U Y LPU LPU YLPU YYY U Y U Y U Y U Y U Y U Y U Y U YYYYYYYYYYY YY       U $,4 <(D0L8P@XHtH|HH (  (  (  ((@ (((  (   ( ( 0 ( ( 0 8 8 8 8 @ 0 0 8 0 0 8 H H H H P 8 p H H H X H H H X X ` X X x  ` h r z ` H H h H H H   X h r X H hHHXX`XX`hhhhp``h``hxxxxhhxhhxxxxxHpH@PPPPp@PPPP888@888@@P@@P(P(88P888@0@R0800(8888@(8888P(8888X(8888`(8888h(8888x(8888(8888(          !"!*!!!!*!!!!*!""""""""""" "8##LPU   (08@D\`l|$,0  $@HLLPU   (08@D``p#x"  LPU   (08@D``p#x" LPU    (0 8@D0\xx#"+LPU    (0 8@D0\xx#"  (     80P48P X`0|$,0$,0  (   0,0 8<8X`$,0     80 L*L*\3d2p*|,!(#"     80 L*L*\3d2p*|,!(#"$,0   ((8#@"LX,\!`0l:t<B0   ((8#@"LX,\!`0l:t<B0   $,    LPU    LPU           @(H0\0d8l0t0xP88PPhhp88@88X(  (X@@XXppxX(  $,0    LPU  LPU   Y     YLPU    ,(40H0P8X0`0dP|8888@88X@@Hhh@Hh (   h((@``x (@  LPU  LPU  (0 8@D0\` h(((@8 LPU    4 < @8H@d l((0((8LPU LPU    (08@D0\dx 0 U U 8@D(`px   Y YY YYYYY Y YYY YY YYY YYY YYY YYY YYY YYYY    (080@0DH\d000H080@H 0H   08H88H8HPH8H080 0 ( &-3I  8Dhh( 4*@P98I8YL@th880h08$$8Plt!8!!4$&&'(t+p%.. . .Guile 3.0.9null-pointer?defined?@guilewriter-complexreal-part@guileimag-part@guilereader-complexmake-rectangular@guileappend@@guilealignwrite-c-structassv-ref@guileread-c-structmake-c-structparse-c-structOO system/foreign.scmice-9/boot-9.scmice-9/psyntax.scm ;,a,,,b,,,b,$,b,"a/,<+4,,h;`, Kw ,  y; , f% K Y  y; , f%}K<= , ,w<ELDqY =ELDoY hxDwEv ;u ;t ;s;r;q"g,K< = ,w<DKCch =DKCah hxDwEv ;u ;t ;s;r;q!g,z+= h w `; < Y; e < h; q3<2 h , 3<2 h<, x,,<;u,z;<,w x,,wg<,w x,,wN=,9,jIf=,9,jI*h<,,,[ kl%$sh,,, ,j,2 'v3  h&,2 tJkl%$sh,,, ,j,2 'v3  h&,2 ,x Gx 0 l%$eh,,,, h&,j,0  y;%$eh,,,, h&,j,0  y; A zJx J<-hKL?^{w<(i'Vh,,,), Y;>4,,$8\h@ L(@h-8=,8Md@t\8P00s8$ $08h 8  4$0%&&'*pnull-pointer?defined?@guilewriter-complexreal-part@guileimag-part@guilereader-complexmake-rectangular@guileappend@@guilealignwrite-c-structassv-ref@guileread-c-structmake-c-structparse-c-structclosureargcachevarproctmpnull-pointer?modulebytevector-pointer-refmodnameboxpairbytevector-pointer-set!writer-complexreader-complex*writers*cachedtagcode*readers*alignwrite-c-structread-c-structmake-c-structparse-c-structdefine-wrapped-pointer-typeprimvalpointerarg0arg1bvoffsetulenrlensidxuidxmaxidx+1ptrssvalauunspecifiedsetsizeirefarg2fscmoffalignmenttypesvalstypeforeigntotalstxtype-namepredwrapunwrapprintReturn true if POINTER is the null pointer.Define helper procedures to wrap pointer objects into Scheme objects with a disjoint type. Specifically, this macro defines PRED, a predicate for the new Scheme type, WRAP, a procedure that takes a pointer object and returns an object that satisfies PRED, and UNWRAP which does the reverse. PRINT must name a user-defined object printer..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