ELF@H"@8@PFPFH"H"EEEpppD???4p<?=@<@=@<@=@<B DB?B4`0p=BA4p=BA4`<B=BA4@P0`0P0<B0p@>B=bABp<B5`=BA4p=B "DB~?B4p<B@>BCBB!A4p=B0p0`@9"*<B!9*h<B=BB@5p@>BCBB@4p0``*<B!9*:<B=BBP5p=@A4pDBBB4 Q=@A4 DBBB4Q=f@A4DBBB4Q=d@A4 D BBB4 Q = l@A  4 D BBB4 Q = V@A  4 DBBB4Q =h@A4DBBB4`Q=R@A4`DBBB4@Q=d@A4@DB{BB4 Q=N@A4 DBoBB4QA4PQ9QQQQQQ Q Q QQQ=BB05P4pDBSBB4PQ4 DBKBB40Q4DBCBB4 Q4DB;BB4Q4DB3BB4Q4DB+BB4Q4DB#BB4Q4`D BBB4 Q 4 @D BBB4 Q 4 D B BB4 Q A4@QQQ Q QQQQQQQQ=BB`5p@=BB`<B5P>B=BB`<B5P>B=CB`<C5P>C=z@B`<C5P>C=|@B`<C5P=@=C>C<CDC>C4@0`0P0p@B`5p9 <CDC=C4`0p <BDC=C4`0p 09CB%A?4 00090@  DB=B4 @<BCB,A?4 zCB A?4 x0CB4A?4`00P@`9 0CB!A?4`00P@`9 YYaW 9 % k%[RCB,B&B4`CB&B&?4P0p   0`0 %CBBB4`CB BxA4P0`0p R0`00 !CxBAA4`RR0`000P CjBA>4`0pp V S S!< \BD ,B=*B4 00 0 0 #< TBD B=B4 0 0 0 0 0 9% R C FBAA4 CBBA>40  00 C 1BA>40 V S% C #BAB4 CBAoA4P00  00 !C BzAA4 R000 Q %NR `4 40 00p 40 V S`% CALAA4`CAFA&A4P0`0  00 !C A1A;A4 R`000 Q %0p0!0 p0`CAAA40 00pC AAA4 CAA=4`0P 900`0Pp CAA@4`0P000p CA@/>4000 ppC A@A4 9<A00`0p` CA@@4PCA@>4@00p 0 P0`0p0@PCtA@=4p0`PCjA@@4@CfA@=400``0P0V P<zADA;A4@0P0`@"9<xADA;A40000P0`0 <~A0P0@0`00CA@A4CA|@A4<A 00<B<B<BQ9Q <BQ  Q Q Q  Q Q  < B<B<9C<EC<]C<iC<C<CQQQQ<CQQQQQQQQQQQQQ Q Q Q < CQ Q Q Q Q  ?;<;O>;?!;<;O>!;=;>;?#;;?&;<!;O>&;?(;<#;O>(;=&;>&;=;>&;?&; ;?';<";O>';=%;P>$;?&;?+;<&;O>+;=);P>(;?*;<%;O>*;?,;<';O>,;=*;>*;=;>*;?*;$;?);%;?,;x<';O>,;?.;v<);O>.;=,;>,;=;>,;?,;&;?+;';?.;f<);O>.;=,;>,;=;>,;?,;&;?+;';?.;V<);O>.;=,;>,;=;>,;?,;&;=:>);?);#;?(;$;?);%;?*;;?);#;?(;:?';!;?&;:?%;;?&;*<!;O>&;=$;P>#;?%;#< ;O>%;?';!<";O>';?);<$;O>);?+;<&;O>+;?-;<(;O>-;?/;<*;O>/;?1;<,;O>1;?3;<.;O>3;?5;<0;O>5;?7;<2;O>7;?9;<4;O>9;?;;<6;O>;;?=;<8;O>=;??;<:;O>?;?A;<<;O>A;?C; <>;O>C;?E; <@;O>E;?G; <B;O>G;?I;<D;O>I;?K;<F;O>K;?M;<H;O>M;?O;<J;O>O;?Q;<L;O>Q;?S;<N;O>S;?U;<P;O>U;?W;<R;O>W;?Y;<T;O>Y;?[;<V;O>[;?];<X;O>];?_;<Z;O>_;?a;<\;O>a;?c;<^;O>c;?e;<`;O>e;?g;<b;O>g;?i;<d;O>i;?k;<f;O>k;?m;<h;O>m;?o;<j;O>o;?q; <l;O>q;?s; <n;O>s;?u; <p;O>u;=s;>s;=e;>s;?s;m;=T;>p;?p;j;=C;>m;?m;g;=2;>j;?j;d;=!;>g;?g;a;=;>d;?d;^;=:>a;?a;[;=:>^;?^;X;=:>[;?[;U;=:>X;?X;R;=:>U;?U;O;=:>R;?R;L;=:>O;?O;I;=:>L;?L;F;=w:>I;?I;C;=f:>F;?F;@;=U:>C;?C;=;=D:>@;?@;:;=3:>=;?=;7;=":>:;?:;4;=:>7;?7;1;=:>4;?4;.;=9>1;?1;+;=9>.;?.;(;=9>+;?+;%;=9>(;?(;";=9>%;?%;;=9>";?";;=9>;?;;=x9>;?;;=g9>;?;;=V9>;?;;=E9>;?; ;=49>;?; ;=#9> ;? ;;=9> ;? ;;=9>;?;;=8>;?;:=8>;?;:=8>:?::?:<:O>:?;<:O>;?;<;O>;?;? ;<;O> ;?;?;?;<;O>;?;<;O>;?;<;O>;?;?#;<;O>#;?%;?&;?';<";O>';?-;?.;?/;<*;O>/;?1;<,;O>1;?3;7?6;<1;O>6;?:;<5;O>:;?>;<9;O>>;?B;<=;O>B;?F;<A;O>F;?J; <E;O>J;?N;<I;O>N;?R;<M;O>R;?V;<Q;O>V;?Z;<U;O>Z;?\;<W;O>\;?`;"<[;O>`;?d;(<_;O>d;?h;*<c;O>h;?l;,<g;O>l;?p;0<k;O>p;?t;4<o;O>t;?x;8<s;O>x;?|;<<w;O>|;?;@<{;O>;?;D<;O>;?;D<;O>;?;O?;?<;O>;?;K?;<<;O>;?;?;r?;?;3<;O>;?;?;.<;O>;?;0?;7<;O>;?;5<;O>;=9>;?;1<;O>;?;1?;6?;;<;O>;?;9<;O>;?;9<;O>;?;|?;4<;O>;?;2<;O>;=;>;=;>;?;;=;>;?;;=;>;?;;=;>;?;;=;>;?;;?; <;O>;?; ?;<;O>;?;?;<;O>;?;<;O>;?<?<<<O><?<<<O><=<><? <<<O> <=<> <?<< <O><=<><?<;?<?<<=;><?<<?<<?< <?<<<O><?<<<O><<;O><?<<<O><?<<<O><=;><=;><=;><=<><= <><?<;?<;?<;?<;?<;?<?<?<?!<?&<?+<<?*<<?)< <?(<<?'<<=|;>&<?&<;?%<;?$<<?%<< <O>%<=#<>%<?'<?,<"<=];>+<?+<<?*<p;?)<<?(<D;?+<<&<O>+<=)<>)<?)<75=|7>(<?(<<?'<<?&<<?%<<?$< <=+;>%<?%<g7?$<;?#<<?"<<?#<;?"<<?!<;? <<?<;?<<?<3;?<<?<;?<<?<:?<<=:><?<<?<;?<c<<O><=<><?<;?<;?<[<<O><=<><?<;?<;?< <?<L<<O><=<><?<;?<;?<@<<O><=<><?<;?<;?<4<<O><=<><?<;?<y;?<*<<O><=<><?<;?<g;?<;?<a;?<<?<<?<<?<<?<;?<<?<<?< <<O><=<><?<s;?<:;?<<<O><=<><?<a;?<(;?<<?<<<O><=<><?<L;?<;?<<<O><=<><?<:;?<;?<;?<;?< <?<<?<<<O><=<><?<;?<:?<<<O><=<><?< ;?<:?<;?<;?<<?<];?< <?<;?< <?< <?<;?<< <O><= <><?<:?<:9 'define-module*'guile'system'foreign'filename'system/foreign.scm'imports'rnrs' bytevectors'srfi'srfi-1'srfi-9'gnu'exports'void'float'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'set-current-module'load-extension' string-append' libguile-'effective-version'scm_init_foreign'defined?'procedure->pointer'call-with-deferred-observers'*'bytevector-pointer-ref'bytevector-pointer-set!'"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!' *writers*'!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' *readers*'align'write-c-struct' read-c-struct'macro'make-syntax-transformer'what machine is this?'error'module-export!'assv-ref'too few values'too many values'reverse'make-bytevector'fold'_'any' $sc-dispatch'-source expression failed to match any pattern'syntax-violation' datum->syntax'gensym'wrap'begin'top'ribcage'%wrap'l-5973caad119753-7c' type-name'pred'unwrap'print'l-5973caad119753-70'l-5973caad119753-71'l-5973caad119753-72'l-5973caad119753-73'l-5973caad119753-74'stx'l-5973caad119753-6d'hygiene'define-record-type'pointer'define'let'ptr->obj'make-weak-value-hash-table'lambda'ptr'or'hash-ref'o' hash-set!'set-record-type-printer!0012p3`4$5 6\ 7 8 :l < > @ B D F< H J M P( SD V` Y \ _befhijl`mxno|pr*((* * *  *(( `7A`7`7`7H" `7hD             EEEEEE"" !! EE EEEEE -E  =========.===== ==80 2 2AH" 41*hDhDt<EEpE5OM3Uh5k' z 6(0 8018P1[117H"@TT /G0 _ 0 | } |  & l97l@ @7 ` 4 4=                         !!!!!!!!!!!& !!!!!!!!!!&      * / * *$ ,4<DL T$h|        $$ $$(,,(,,0440448<<8<<@DD@DDHLLHLLPTTPTTX \ \ X    \                                  $ $ $ ( ( $ ( , , ( , 0 0 ,                          ;C J& 8D T  (NQ XJ  $(NQ XJ  $(NQ` XX/ 48 <DNQ` XX/ 48 <Ddh & NQrxCQrx}    * *   48LP$l($,0 NQr }     Qrx}     Qrxx  (,@D(\0x(  $  (40< $ 08 0 $$(0,8 rx   0 4L Pp  r   (H\`tx}  &4H L `d| * ** $@LTh l   !! &!!!!& !&& !!&!!&!!&!!&!! &!!!& 04 <$P(lt|  $( (,0488  -341 `< 0l 0 0 L Ld ! 0 >TL(tl%.. . .Guile 2.2.7null-pointer?alignwrite-c-structread-c-structmake-c-structparse-c-struct& system/foreign.scm w")(.wYx+a,YR , yF5  yF Z ,zw ,x ,nh x ; -x ; 12x h i2x hh= />0$w x2w '3  h&2 ,x, - , ;0 0$h h&w0  y0$Kh h&w0  y 2 z; Y w[Ow{hx'-hg ;;73,Y`T000L0 L|  $ 2l@@4lnull-pointer?alignwrite-c-structread-c-structmake-c-structparse-c-structclosureboxargtmpnamemoduletailvalprocunspecifiedpointerbound?u64bvoffsetunboxedptroffalignmenttypesvalstypeforeigntotalstxtype-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