asda?‰PNG  IHDR ? f ??C1 sRGB ??é gAMA ±? üa pHYs ? ??o¨d GIDATx^íüL”÷e÷Y?a?("Bh?_ò???¢§?q5k?*:t0A-o??¥]VkJ¢M??f?±8\k2íll£1]q?ù???T goops/stklos.go000064400000012045151027762650007556 0ustar00GOOF----LE-8-2.0 ]4h ] gguile  gdefine-module*   goop ggoops gstklos  gfilenameS foop/goops/stklos.scm gimportsS ginternal     gset-current-module   gmodule-for-each g module-add! gmodule-public-interface gcurrent-module gresolve-interface  gcall-with-deferred-observers   gmodule-export!    ! "g define-class #g define-method $"# %g write-object &% 'g read-options (' )' *gappend +* ,* -gkeywords .gprefix /gmake-syntax-transformer 0/ 1/ 2gmacro 3g $sc-dispatch 43 53 6gany 7geach-any 877 968 :69 ;6: gtop ?> @gribcage Agdummy Bgname Cgsupers Dgslot Egrest FABCDE Gg m-1f4787962-8 HG> IH???? Jf l-1f4787962-d Kf l-1f4787962-e Lf l-1f4787962-f Mfl-1f4787962-10 Nfl-1f4787962-11 OJKLMN P@FIO Q@ Rgx SR TH Uf l-1f4787962-a VU W@STV X?PQW Yghygiene ZY [<=XZ \gsyntax-violation ]\ ^\ _f-source expression failed to match any pattern `gmodule-define! agtoplevel-define! bgfree-id cgsetter dgm-1f4787962-1d ed> fe gfl-1f4787962-1f hg i@Sfh j?Qi k<cjZ lbk ml6 nm7 o6n pgbegin qABE re?? sfl-1f4787962-22 tfl-1f4787962-23 ufl-1f4787962-24 vstu w@qrv x?wQi y<pxZ zgif {<zxZ |gor }<|xZ ~gnot <~xZ gdefined? <xZ gquote <xZ gis-a? <xZ g <xZ  <axZ gensure-accessor <xZ <xZ  g add-method! <xZ <cxZ gmethod <xZ 67 6 fl-1f4787962-2a fl-1f4787962-2b fl-1f4787962-2c  @qr ?Qi <pZ <zZ <|Z <~Z <Z <Z <Z g  <Z  g <Z  <aZ gensure-generic <Z <Z  <Z <ZC5h]4    54>"G4ih]44556gsym  gvar  gfilenamefoop/goops/stklos.scm #   $  $ 9  $  $    C4i5>"G4!$hF]456>gfilenamefoop/goops/stklos.scm )   C>"G4!&hF]456>gfilenamefoop/goops/stklos.scm ,   C>"G4)4,4)5-.5>"G41"25;[,hw]45Cogdummy  gname  gsupers   gslot   grest      C^_h(] 45$@6gx  "gtmp "gfilenamefoop/goops/stklos.scm 1   " g macro-typeg syntax-rulesgpatternsgnamegsupersgslotg...grestg...C5"R`h]456gname  gval  gfilenamefoop/goops/stklos.scm 4  5   5    gnamegtoplevel-define!CaR41#25oy{}hpQ]     CIgdummy  ngname  ngrest   n  n ChxQ]     CIgdummy  vgname  vgrest   v  v C^_h@]45$@45$@6gx  9gtmp 9gtmp  " 9gfilenamefoop/goops/stklos.scm 8   9 g macro-typeg syntax-rulesgpatternsgsettergnamegrestg...gnamegrestg...C5#RCgm  (gfilenamefoop/goops/stklos.scm   ) # &  & $ &  # ) t ,  /  /   /  4    C6goops/dispatch.go000064400000024204151027762650010036 0ustar00GOOF----LE-8-2.0l(]a4h] gguile  gdefine-module*   goop ggoops gdispatch  gfilenameS foop/goops/dispatch.scm gimportsS    gutil   gsystem gbase gtarget    gexportsS gmemoize-method!  gset-current-module   gcurrent-module g*dispatch-module* ggensym !fa "ft #gappend $# %# &grest 'glet (gmap )gclass-of *fp +gif ,gand -gapply .& /gassq-ref 0geq? 1fc 2g cache-miss 3gcons* 4glist 5gemit-linear-dispatch 6g make-vector 7fg 8g vector-length 9glambda :gcdr ;g case-lambda g %host-type ?gcompile @? A@? B@? CgenvS DgfromS Egscheme FgoptsS Gg partial-eval?S Hgcse?S IGH Jgargs KJ Lgmax Mgcompute-dispatch-procedure Ng timer-init Ogslot-ref Pgeffective-methods Qg slot-set! Rg procedure Sgcache-dispatch Tgdelayed-compile Ug n-specialized V ) W ) Xgcompute-cmethod Y X Z X [gmemoize-effective-method! \gcompute-applicable-methods ]g%compute-applicable-methods ^gno-applicable-method _gset-procedure-property! `gsystem-procedureC5h8!]4    54>"G4i5R h8]"  $C45""gn  2gstem  2gn   &gsyms   &gfilenamefoop/goops/dispatch.scm @   A  B  B   D   D   D  & D & A  ) A  * A  2 A   2 gnameggen-symsC!"%&'()hp]Chgt  ga  gfilenamefoop/goops/dispatch.scm P   Q    C *+,-./01234hX&]e4545"(.$ 45"45  D" (L4  5    $ 45"   "v4  5$!       "{4 5        "J     "4$45"  "ggf-sym  Tgnargs  Tgmethods   Tgfree   Tgrest?   Tggen-syms   Tgargs   Tgtypes   Tgmethods  $gfree $gexp $gfree X gtypes X gspecs X gchecks  X gm-sym  e gvar  gvar  gfilenamefoop/goops/dispatch.scm ?  E  E   E   E   F   F  F   E  G  & M  , O  - O  = O  > P  M O  T O  X W  ^ [ _ \  c \ # e \  e \  j ]  m ^ ' p ^  s ^  x a  b  c  d  a  ]  f  f ( f  f  g  i  j  k " k ) k " k  h  m  m ' m  m  n % n  o  p  q $ q + q $  q   n   W   Y (  Y   Z  $ W  $ G  * I  2 J 4 K $ D L $ J I  T G G  T gnamegemit-linear-dispatchC5R6 785hpb]4L5$KL("4L> G"L4L56Zgn  kgclauses  kgfree   kgmethods   [gclause  @ [gfree  @ [gfilenamefoop/goops/dispatch.scm            .  /  C  J  O & [  ^  e  k   k gnameg emit-restC9(:;<=>BCDEFIh ]4L5L@gp  gfilenamefoop/goops/dispatch.scm                  C5 h] $/4545O6L("4 L> G"~gn  gclauses  gfree   gexp  & 9gvals  & 9gmethods  > gclause  i gfree  i gfilenamefoop/goops/dispatch.scm          & 9  >  > F  I  W  X  l  s  x %   gnamegemit-reqC8J2KL hH]R"-(4545"(y45O O   Q  Q  45   $"  $ "6 $ "Y ";"3 $4  5"4  5" "ggf  Cgcache  Cgls   3gnreq   3gnrest   3greq   grest   gls  & ggf-sym  3 g emit-rest K gemit-req K gt m gn  gn  gfilenamefoop/goops/dispatch.scm t  v  w  y   y   y (  y   z   z   z )  z   y  &  ,  -  1  3  3  e l  m  ~        "        $ -      # ,    {  {  w   |  |   | 1  | %  |   |   ~  ~  # ~ + % ~  ' ~  3 ~  3 v E  C gnamegcompute-dispatch-procedureCMR NRNMOPQRShP-13MNM $.4L4L554L>"G@L6gargs Lgdispatch & Dgfilenamefoop/goops/dispatch.scm             " ) $  &  &  ) /  6 D L  L Ch] HOCggf  gtimer  gfilenamefoop/goops/dispatch.scm     gnamegdelayed-compileCTRh8]  $"$C454L5C gn  6gf  6gls   6gt   gfilenamefoop/goops/dispatch.scm            %  '  (  - & 2 / 4  5   6 gnameg map-untilCh8]$#$&"CC(CCgx  8gy  8gfilenamefoop/goops/dispatch.scm          '    " * (  2  5   8 gnamegequal?COUW2Ph]"OOQQ45$X4455"1(64 5$  @"45"6ggf  gargs  g map-until   gequal?   gtypes  ; gcache  A rgfilenamefoop/goops/dispatch.scm   #  %  )  *  -  3 + 5  ;  ;  A  G O  P  U % W  [  _ b $ e  i  l  r  r  s  y % {     gnamegcache-dispatchCSRh]45@ggf  gargs  gfilenamefoop/goops/dispatch.scm      gnameg cache-missC2Rh0]  $"$C4L5Cgls  /gn  /gt   gfilenamefoop/goops/dispatch.scm           "  #  ( + ) -  .   / gnamegfirst-nC(WZOPQRTU h z]3O"(`4545454>"G44 5>"GC4 5$4455""_"V45454>"G44 5>"GCQ "rggf  gargs  g applicable   gn   gls   gtypes   tgcmethod  ( tgcache  > tglen   grest?   gtypes   gcmethod   gcache   gfirst-n   gfilenamefoop/goops/dispatch.scm         "  (  (  4  5  ; % =  >  >  A  G  N  W   ]   ^   i   w  }      '           %                 6   gnamegmemoize-effective-method!C[R\][^h8] 4&"5$ 66ggf  3gargs  3g applicable   3gfilenamefoop/goops/dispatch.scm             !   +  3    3 gnamegmemoize-method!CR_ii`6gm  ,gfilenamefoop/goops/dispatch.scm   -   6   ?  t  < P   !*  !4  ) !7    !7 C6goops/describe.go000064400000031216151027762650010020 0ustar00GOOF----LE-8-2.0v2]i4h_] gguile  gdefine-module*   goop ggoops gdescribe  gfilenameS foop/goops/describe.scm gimportsS    gice-9 gsession   gformat    gexportsS  gset-current-module   gdefined?     gtoplevel-define!   !  "gmake # " $ " %g  & % ' % (gnameS )g add-method! * ) + ) ,g - , . , /g specializersS 0g 1gformalsS 2gx 32 4gbodyS 5f~s is  652 7gcond 8ginteger? 982 :f an integer ;: <9; =greal? >=2 ?fa real @? A>@ Bgcomplex? CB2 Dfa complex number ED FCE Ggnull? HG2 If an empty list JI KHJ Lgboolean? ML2 Nfa boolean value (~s) Ogif Pgquote Qgtrue RPQ Sgfalse TPS UO2RT VNU WMV Xgchar? YX2 Zfa character, ascii value is ~s [g char->integer \[2 ]Z\ ^Y] _gsymbol? `_2 afa symbol ba c`b dglist? ed2 ffa list gf heg igpair? ji2 kgcdr lk2 mil nfan improper list on pfa pair qp rOmoq sjr tgstring? ut2 vgeqv? wf xv2w yfan empty string zy {fa string of length ~s |g string-length }|2 ~{} Oxz~ u gvector? 2  P v2 fan empty vector  fa vector of length ~s g vector-length 2  O  g eof-object? 2 fthe end-of-file object   gelse fan unknown object (~s) 2  7<AFKW^chs f.~%  g *unspecified* 6 gmake-procedureS g procedureS g  glet gname gprocedure-name 2   f`~s'  gdisplay 2 O f is   f an anonymous Oa  f procedure  f with   garity 2   g slot-bound? g class-name gsafe-class-name g f~S is an instance of class ~A~% gclass-of 2  2 f Slots are: ~%  gfor-each glambda gslot  gslot-definition-name    f ~S = ~A~% 2 f~S gslot-ref 2  f # O    g class-slots    g f'~S is a class. It's an instance of ~A~% 2  fSuperclasses are:~%  gclass  f ~A~%    gclass-direct-supers 2  gslots gclass-direct-slots 2   G f(No direct slot)~%  gbegin fDirects slots are:~%  gs       O  gclasses gclass-direct-subclasses 2   G f(No direct subclass)~%  fDirects subclasses are:~%           O      fClass Precedence List is:~%   gclass-precedence-list 2  gmethods gclass-direct-methods 2   G f(No direct method)~%  fClass direct methods are:~%    O     !ggeneric-function-name "!2 #" $ggeneric-function-methods %$2 &% '#& (f3~S is a generic function. It's an instance of ~A.~% )( *f(No method defined for ~S)~% +* ,fMethods defined for ~S~% -, .2 /3. 0/ 1-0 2O+1 3')2 43 5 0 6 0 7g omit-generic 827 9gletrec :g print-args ;gargs <; =G; >gnewline ?> @=? Ai; B  Cgcar DC; ED FE Gk; H:G IABFH J; KJ LBK? M7@IL N<M O:N PO Qf Method ~A~% RQ2 SG7 Tggf Ugmethod-generic-function VU2 WTV XW Yf Generic: ~A~% Z!T [YZ \f (No generic)~% ]\ ^OT[] _X^ `OS_ af Specializers: ba cgmethod-specializers dc2 e:d f9PR`be gf hgprovideC5h]4    54>"G45$"i$!4!4$'(5>"G"4+i4$./0i13458:=?BDILNQSXZ[afnptwy{|"hH]4>"G45$4>"G"45$4>"G"45$4>"G"(4 >"G"4 5$%4 $ " >"G"g45$445>"G">$4>"G" $4>"G"$6$4>"G"4>"G"45$>$4>"G"445>"G"|$>$4>"G"445>"G"745$4>"G"4 >"G4!>"GC|gx  Fgfilenamefoop/goops/describe.scm #  $   $  $   &  " %  # &  ( & # - &  : '  D %  E '  J ' # O '  \ (  f %  g (  l ( # q (  %  )  ) # )  *  %  *  * # * : * @ * F *  +  %  +  + # , +  -  %  -   - #  -   .   %   .   . # # .  2 /  6 %  9 / # : /  > /  ? 0  D 0 ' I 0  V 1  [ 1 ' ` 1  m 2  w %  { 2 $ | 2   2   3   3 '  3   4   4 '  4 ?  4   5   %   5 $  5   5   6   6 '  6   7   7 '  7 ?  7   8   %   8   8 #  8   9  " 9 # ) 9  2 :  7 : < : ^  F C5 >"G45$"i$!4!4$'(5>"G"4+i4$./i134 h] 45$4>"G"4>"G4>"G4$a">"G4>"G4>"G 6gx  gname gfilenamefoop/goops/describe.scm =  >  >   ?   @   @   @  + A  = B  A B F B  O C  W C _ C  d C  m D  q D v D   E  E E  F   C5 >"Gh]45$6Cgclass  gfilenamefoop/goops/describe.scm K  L  L  L   L   M    gnamegsafe-class-nameCR45$"i$!4!4$'(5>"G"4+i4$./i134h8] 454L5$44L55"6gslot  8gname 8gfilenamefoop/goops/describe.scm V  W  W   X   Z   Z  [  % [ ' & [ , 0 [  6 \  8 X   8 ChX]445>"G4>"G4O45>"GCgx  Sgfilenamefoop/goops/describe.scm P  Q   Q R  R   R  Q  U  % U * U  3 V  = ] B ]  D ] I V   S C5 >"G45$"i$!4!4$'(5>"G"4+i4$./i134 hu]456mgclass  gfilenamefoop/goops/describe.scm i  i '  i 2  i    Chq]456igs  gfilenamefoop/goops/describe.scm r   s !  s ,  s    Chq]456igs  gfilenamefoop/goops/describe.scm }   ~ !  ~ ,  ~    C hu]456mgs  gfilenamefoop/goops/describe.scm  #  .     ChPC] 44545>"G4>"G445>"G45(4 >"G"'4 >"G4 >"G4 5(4 >"G"'4>"G4>"G4>"G445>"G45(64>"G6;gx  Mgslots W gclasses gmethods # Mgfilenamefoop/goops/describe.scm c  d   d e  e   e /  e   d  % h  * h / h  8 i  = j  H i  Q m  W m  _ n  ` o  e o  j o  w q | q  q r x  x  y  z  z  z  | |  | }          #  +  0  2  3 8  = M 2  M C5 >"G45$"i$!4!4$'(5>"G"4+i4$./%i1344!$(*,hc]6[gx  gfilenamefoop/goops/describe.scm    C h`]4545445>"G( 64>"G 6gx  ]gname  ]gmethods   ]gfilenamefoop/goops/describe.scm            " " $  )  7  <  @  A F  M ]   ] C5 >"G45$"i$!4!4$'(5>"G"4+i4$./,i6184g>QUY!\ac h-13"q(6$34 >"G445>"G"4 >"G445>"G64>"G(G45$445>"G"4 >"G"4 >"G4 5" gx g omit-generic gargs  ~ggf  gfilenamefoop/goops/describe.scm     -     1 4 ) 9 : ; ) @ K , Q R d g ) r ~ ~           .       (  C5 >"Ghi6gm  ,gt 4 Igt  gt gt gt J _gt  gfilenamefoop/goops/describe.scm   - #  = K P c C  y {   { C6goops/simple.go000064400000003330151027762650007525 0ustar00GOOF----LE-8-2.0]D4h2] gguile  gdefine-module*   goop ggoops gsimple  gfilenameS foop/goops/simple.scm gimportsS g accessors     gexportsS g define-class  gset-current-module   gmake-syntax-transformer   gmacro g $sc-dispatch   gany geach-any  !g syntax-object "g$define-class-with-accessors-keywords #gtop $# %gribcage &gdummy 'garg (&' )g m-1f33f87a8-1 *)# +*$ ,f l-1f33f87a8-6 -f l-1f33f87a8-7 .,- /%(+. 0% 1gx 21 3* 4f l-1f33f87a8-3 54 6%235 7$/06 8ghygiene 98 :!"79 ;gsyntax-violation <; =; >f-source expression failed to match any pattern ?g module-use! @gmodule-public-interface Agcurrent-module Bgresolve-interface CC5h]4    54>"G4 :h>]C6gdummy  garg     C=>h(] 45$@6gx  "gtmp "gfilenamefoop/goops/simple.scm    " g macro-typeg syntax-rulesgpatternsgargg...C5R?i4@i4Ai554BiC56gm  ,gfilenamefoop/goops/simple.scm   w  |  &              C6goops/active-slot.go000064400000010466151027762650010476 0ustar00GOOF----LE-8-2.0]4h] gguile  gdefine-module*   goop ggoops g active-slot  gfilenameS foop/goops/active-slot.scm gimportsS ginternal     gexportsS g  gset-current-module    gtoplevel-define!   g make-class g gnameS gdefined?   !gis-a? "! #! $ % &gmemq 'g (' )' *gclass-precedence-list +* ,* -gclass-redefinition .- /- 0gcompute-get-n-set 1gmake 21 31 4g  54 64 7g add-method! 87 97 :g ;: <: =g specializersS >g ?> @> AgformalsS Bgclass Cgslot DBC EgbodyS Fgif Ggeq? Hgslot-definition-allocation IHC JgactiveS KGIJ Lglet* Mgindex Ngslot-ref Ogquote Pgnfields QOP RNBQ SMR Tgs Ugcdr VUC WTV Xg before-ref Yg get-keyword Zgbefore-slot-refS [YZT \X[ ]g after-ref ^gafter-slot-refS _Y^T `]_ ag before-set! bgbefore-slot-set!S cYbT dac eg after-set! fgafter-slot-set!S gYfT heg igunbound jg make-unbound kj lik mSW\`dhl ng slot-set! og+ poM  qnBQp rglist sglambda tgo ut vXt wglet xgres yg%fast-slot-ref zytM {xz |{ }gand ~gnot geqv? xi ~ ]t }] w|x Fvk FX su gv t at gbegin g%fast-slot-set! tM et }e  F Fa s r Lmq g next-method  FK  gmake-procedureS g procedureSC5h|]4    54>"G"+44ii5>"xG"q4 5$b4#i%5$K4&i)4,i55$-4/i4ii5>"G""t""l""d4 05$"0i$!4043605>"G"90i43<=i@ADEHJNPYZ^bfjnyjh] L$F4L5$74L5L$#L$"4L>"G"C64L5L$#L$"4L>"G"Cgo  gres  Jgres W gfilenamefoop/goops/active-slot.scm *   +  ,   ,   - #  -  $ .  ) . . - .  2 . B N 0  O 1  W 1  _ 2  d 2 * h 2  m 2 >  Chh]L$54L5$&4L>"GL$L6CC4L>"GL$L6Cgo  cgv  cgfilenamefoop/goops/active-slot.scm 5   6  7   7   9  1 :  9 : * > <  Y =  a = &  c Ch]:45&z454545454 54 54 >"G O OCL6gclass  gslot  gindex   gs   g before-ref  ) g after-ref  5 g before-set!  A g after-set!  M gunbound  T  gfilenamefoop/goops/active-slot.scm  !  !   "   " *  "   "   #   "  $  ) "  , %  5 "  8 &  A "  D '  M "  P (  T "  W )  ] )  ` ) " e )  *    Chj]OCbgreal-next-method  gfilenamefoop/goops/active-slot.scm   C5 6tgm  ,gt gfilenamefoop/goops/active-slot.scm   1     C6goops/composite-slot.go000064400000007711151027762650011224 0ustar00GOOF----LE-8-2.0]\4h] gguile  gdefine-module*   goop ggoops gcomposite-slot  gfilenameS foop/goops/composite-slot.scm gimportsS     gexportsS g  gset-current-module   gtoplevel-define!     g make-class g gnameS gdefined?     gis-a?   !  "  #  $gmemq %g & % ' % (gclass-precedence-list ) ( * ( +gclass-redefinition , + - + .gcompute-get-n-set /gmake 0 / 1 / 2g  3 2 4 2 5g add-method! 6 5 7 5 8g 9 8 : 8 ;g specializersS  = < > < ?gformalsS @gclass Agslot B@A CgbodyS Dgif Egeq? Fgslot-definition-allocation GFA Hg propagatedS IEGH Jgcompute-propagated-get-n-set KJA Lg next-method ML NDIKM ON Pgmake-procedureS Qg procedureS Rg get-keyword Sg propagate-toS Tgslot-definition-name Ug goops-error Vf%Propagation not specified for slot ~S Wf Bad propagation list for slot ~S Xgmap Ygslot-ref Zg slot-set! [gfor-eachC5h]4    54>"G"+44ii5>"xG"q45$b4!i#5$K4$i'4*i55$-4-i4ii5>"G""t""l""d4.5$".i$!4.414.5>"G"47.i41:;i>?BCOPFHJh ]45&6L6gclass  gslot  gfilenamefoop/goops/composite-slot.scm 1  2  2   3   1    Chm]OCegreal-next-method  gfilenamefoop/goops/composite-slot.scm 1   CQ5 >"GRSTUVWXhw]$CCogp  gfilenamefoop/goops/composite-slot.scm ?   ? ( ? $ ? 2   Chw]$CLCogp  gfilenamefoop/goops/composite-slot.scm @   @ & @ " @ 0   CYho]4L5L6ggo  gfilenamefoop/goops/composite-slot.scm E  F   F    CZYh~]4L5L6vgo  gv  gfilenamefoop/goops/composite-slot.scm J  K   K    C[ZYh]4L5L6~gobject  gslot  gfilenamefoop/goops/composite-slot.scm M   N &  N    Chv]OLL6ngo  gv  gfilenamefoop/goops/composite-slot.scm L  M    C h]14545$"4>"G$"4>"G454 O5 O(  O"  OCgs  gprop  gs-name   gobjects  l gslots  l g first-object  v g first-slot  v gfilenamefoop/goops/composite-slot.scm 6  7  7 4 7   8   7   :  # ;  ' ;  . ;  9 < = <  B =  F =  M =  V ?  _ @  l ?  s A  v B  v A  I  I C   gnamegcompute-propagated-get-n-setCJRCgm  ,gt gfilenamefoop/goops/composite-slot.scm   1 / 1  6    C6goops/accessors.go000064400000006265151027762650010233 0ustar00GOOF----LE-8-2.0 ]44hp] gguile  gdefine-module*   goop ggoops g accessors  gfilenameS foop/goops/accessors.scm gimportsS     gexportsS gdefine-class-with-accessors g$define-class-with-accessors-keywords  g re-exportsS gstandard-define-class  gset-current-module   gmake-syntax-transformer   gmacro g $sc-dispatch   !g_ "gany #!" $g syntax->datum %$ &$ 'g datum->syntax (' )' *g map-in-order +gkeyword? ,g get-keyword -gaccessorS .gsyntax-violation /. 0. 1f-source expression failed to match any pattern 2g init-keywordS 3gsymbol->keywordC5hx[]4    5 4>"G4 #&)*+,-hX] M$NC45$NC$$45$CCCgslot  Tgname ; Jgfilenamefoop/goops/accessors.scm       !     "  " $  &  ' %  . % . 1 %  5 %  ; ' " ; '  A (  F ( 3 G (  N *   T Ch(-13H4O5Cgname $gsupers $gslots  $geat?  $gfilenamefoop/goops/accessors.scm          !   $  Chk] 45L4?6cgargs  gv gfilenamefoop/goops/accessors.scm      C01h(i] 45$ O@6agy  'gtmp 'gfilenamefoop/goops/accessors.scm    ' C5R4 #&)*+,-23h]M$NC45$NC$X45$"45$C45C45Cgslot  gname > Ogslot O ~gname  f ~gkeyword  o ~gfilenamefoop/goops/accessors.scm 2  3 4   6   3  7  " 9  & 3 ' ;  . ; 5 1 ;  5 ;  > = ) > =  D >  I > : J >  O :  R ?  Y ? 4 \ ?  ` ?  f A % f A  i B ( o A  u C  z C < { C  E  F * E !  Ch(-13H4O5Cgname $gsupers $gslots  $geat?  $gfilenamefoop/goops/accessors.scm - .   /   1  ! /  $  Chk] 45L4?6cgargs  gv gfilenamefoop/goops/accessors.scm  -    C01h(i] 45$ O@6agy  'gtmp 'gfilenamefoop/goops/accessors.scm -   ' C5RCSgm  0gfilenamefoop/goops/accessors.scm     x C6goops/util.go000064400000005717151027762650007224 0ustar00GOOF----LE-8-2.0 ]54h(] gguile  gdefine-module*   goop ggoops gutil  gfilenameS foop/goops/util.scm gimportsS gsrfi gsrfi-1     gexportsS g mapappend gfind-duplicate gmap* g for-each* glength* gimproper->proper  g re-exportsS gany gevery  gset-current-module   !g append-map "gmemv #gcurrent-module $gmodule-eval-closure %g top-level-env &g procedure? 'gtop-level-env? (gcall-with-deferred-observers )( *( +gmodule-export! ,+ -+ .# /# 0'% 1gmap 2gcar 3gcdr 4gapplyC5h]4    5 4 >"G!iR"h(](C45$C6gl  $gfilenamefoop/goops/util.scm !  "  $   $  $   $   "   $ " % 0 $ %   $ gnamegfind-duplicateCR#$h]45$6Cgmod  gfilenamefoop/goops/util.scm (  )   )   *   +  ,    gnameg top-level-envC%R&h](C6genv  gfilenamefoop/goops/util.scm .  /  /   0   0    gnamegtop-level-env?C'R4*-/0hD]456<gfilenamefoop/goops/util.scm 2   C>"G123h@-13(C$ 445?445?C@gfn @gl @gfilenamefoop/goops/util.scm 4 6  5   6   7  7   5   7   7 ) ( 7  ) 8  . 8 ) 8 8  9 7  @ 9  @ gnamegmap*CR4123hP-13(C$*445>"G45@@gfn Jgl Jgfilenamefoop/goops/util.scm ; =  <   =   >  >   <   >  >  - >  : > ? D > + J ?  J gnameg for-each*CRh0]"$"C "gls  )gn  gls   gfilenamefoop/goops/util.scm A  B  D B   B  C   B   ) gnameglength*CRh ]$ 45CCgls  gfilenamefoop/goops/util.scm F  G  G  H H   H '  H   H   I    gnamegimproper->properCRCgm  0gfilenamefoop/goops/util.scm   7  * !  (  .  2 q 4  ;  A  F    C6goops/compile.go000064400000001061151027762650007663 0ustar00GOOF----LE-8-2.0]4hN] gguile  gdefine-module*   goop ggoops gcompile  gfilenameS foop/goops/compile.scm gimportsS ginternal     g re-exportsS gcompute-cmethod  gset-current-module  C5h0W]4    54>"GCOgm  ,gfilenamefoop/goops/compile.scm    , C6goops/internal.go000064400000001655151027762650010060 0ustar00GOOF----LE-8-2.0]4h] gguile  gdefine-module*   goop ggoops ginternal  gfilenameS foop/goops/internal.scm gimportsS     gset-current-module   gmodule-public-interface gcurrent-module gmodule-for-each g%module-public-interface g module-add! gresolve-moduleC5h]4    54>"G4i4i55ih]&CL6}gname  gvar  gfilenamefoop/goops/internal.scm     #        CO4i 56gm  (gpublic-i 6 gfilenamefoop/goops/internal.scm   )   .  ) 6   6     #      C6goops/save.go000064400000146545151027762650007212 0ustar00GOOF----LE-8-2.0M]4h.] gguile  gdefine-module*   goop ggoops gsave  gfilenameS foop/goops/save.scm gimportsS ginternal    gutil    gexportsS g save-objects g load-objects grestore g enumerate! genumerate-component! gwrite-readably gwrite-component gwrite-component-procedure gliteral? greadable g make-readable   !g re-exportsS "g make-unbound #" $gset-current-module %$ &$ ' (gdefined? )'( *'( +g immediate? ,gtoplevel-define! -', .', /gmake 0'/ 1'/ 2g  3'2 4'2 5gnameS 6g add-method! 7'6 8'6 9g :'9 ;'9  >gformalsS ?go @? AgbodyS B Cgmake-procedureS Dg procedureS Eg F Gg Hg  Ig Jg Kg  L'= M'= Ngenv O?N Pgfile Q?PN Rgwrite SR?P TS Ugmake-weak-key-hash-table Vg readables Wgmake-syntax-transformer XW YW Zgmacro [g $sc-dispatch \[ ][ ^g_ _gany `^_ ag syntax->datum ba ca dg datum->syntax ed fd ggquote hg copy-tree igsyntax-violation ji ki lf-source expression failed to match any pattern mg hashq-set! ng hashq-ref ogreadable-expression pg readable? qg excluded? rgdisplay sg object-info tgbinding? ugvisiting vgdefinedS wgbinding xgor ygbegin zg add-patcher! {g |g }gnot ~gvector? ~? } glet   garray-for-each glambda gif ?N } gset!   @ ?  x  gn g vector-length ?   gzero?  f#() rP g not-literal? ?N }   f(vector  f#(  rP gand g vector-ref ?  N  r'P  g quasiquote g vector-set! gunquote ?     PN gdo gi g+      g=   r P ? N       PN  r)P    S  g gshared-array-root ? N  g array-rank greverse g list-tail gt gs gr gq gp gm gl gk gj   ggensym fi gshared-array-offset gmap g* g- garray-dimensions gshared-array-increments g make-mapper g array-ref g array-set! g write-array groot   gcond ~ } r#P ? rP (?PN y S  tN f(make-shared-array  rP N  g goops-error f'write-readably(): internal error  PN ? rP gfor-each gdim  rP  ?     gelse  f(list->uniform-array   r P  f '()  r P f(list  ?PN        g gcar ? N   gcdr ? N     !gproper? "gloop #gls $#? %$ &gnull? '&# (gpair? )(# *# +t*N ,}+ -"* .),- /x'. 0"%/ 1!0 2g1? 3( 4}3 5tN 6x45 726 8ginfos 9g :89 ;grefs ;= ?17:> @} A@( B! Cf(cons  D2C Ef(cons*  F E GABDF HrGP IN JI KJ Lgset-car! M NLM ON POPN Q#* Rgprev SR?# TQS U}) Vt#N WxUV X}' Yf . ZrYP [@Z \#N ]\ ^] _gset-cdr! `R a# b_`a cb d#cPN ey[^d fXe gWf hgcons is#N jhi8 k8j lg push-ref! ml#N ng visiting? o8 pno qp r# srN ts ut vr wLav xw yrxPN zTgkmquy  {ginfo |{ }n{ ~} |~ 8 =; ?HKPz  gsetter   ginteger? g standard-get g standard-set gmemq gslot-definition-allocation gclassS g each-subclassS  g class-slots gslot-ref ggetters-n-setters gget-set-for-each gslot-definition-accessor gslot-definition-name ggeneric-function-name gaccess-for-each g@@ g%allocate-instance ' 9 gname gval  g slot-set! ?  glist g gget gset  ?   gunbound?  } N    gclass-of ?   gclass   f (restore  rP g class-name  rP f ( rP gslotdefs gfilter gslotdef   g  g slot-bound?  ? ? qN  x }      & }   rP rP    y   ganame  g# rP  qN  N        g    PN          g ? rP  ? rP  f#No read-syntax for defined   gis-a? ' ' g  ' '  gensure-accessor  '   '   gexcluded  gpass-2? gobjects g pre-defines glocals g stand-ins g post-defines gpatchers gmultiple-bound g  g make-class gaccessorS g init-formS gmake-hash-table  = g init-thunkS g init-valueS ' ' '  ' !gclass-precedence-list "'! #'! $gclass-redefinition %'$ &'$ 'g initialize (ginitargs )N( *g next-method +* ,g get-keyword -gexcludedS .,-( /g=> 0g excludees 10 2ge 32 4ghashq-create-handle! 5 N 6452 736 870 918 :./9 ;: <+; =sN >n=? ?> @' A' Bgx C?NB Dm=?B ED Fghashq-get-handle Ggpop-ref! Hg container Ig  Js?N KwJ LK M+? Nq?N O{J PO Qt{ R}Q Sgeq? Tu{ UgdefiningS VSTU W= X&W YVX ZxRY [{ \Z[ ]P\ ^xMN] _^ `gpass-2S ag binding-name bgbinding-object cgpass-1! dgstring->symbol eg string-append ff%o ggnumber->string hg make-local igboolean? jgname-bindings! kgappend lgpass-2! mf(define  nf)  og write-define! pgwrite-empty-defines! qgwrite-definition! rf(let* ( sf( tf ( ugwrite-let*-head! vgwrite-rebindings! wgnewline xgwrite-definitions! ygassq zgwrite-patches! {gwrite-immediates! |gwrite-readables! }galist ~grest P~ } gport gopen-output-file P   gapply }~ g close-port  g *unspecified*   g  g>= glength ~   ~ 9   guses   gcadr ~ 9   /-  N  c}N j}N lN & } g use-modules gunquote-splicing    RP wP y  {}P N & xmPN f zPN y xmPN pPN uPN f (set!  N vPN xPN f  zPN f )  rP y  |}PN N  vmPN     P glet* gopen-input-file P       gmodule-public-interface gcurrent-module giface g  g make-module    g module-use! gthe-scm-module   gsave-module-excursion $ gsexp gread P   g eof-object?  } geval  " y  "   g module-map gvar  g variable-ref  h    C5h(#]4     !#5 4&>"G4*+5$"+i$!4.+4145+5>"G"48+i41;<=i>@ABCDhT]CLgo  gfilenamefoop/goops/save.scm X    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Ei>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm Z    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Gi>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm [    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Hi>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm \    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Ii>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm ]    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Ji>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm ^    C5 >"G4*+5$"+i$!4.+4145+5>"G"48+i41;<Ki>@AFCDhT]CLgo  gfilenamefoop/goops/save.scm _    C5 >"G4*5$"i$!4.41455>"G"48i41;<=iM>OAFCDhe]C]go  genv  gfilenamefoop/goops/save.scm e    C5 >"G4*5$"i$!4.41455>"G"48i41;<=iMM>QATCDRh]6wgo  gfile  genv   gfilenamefoop/goops/save.scm g i   C5 >"G4Ui =5VR4YZ]`cfghhn]45Cfgexp  gfilenamefoop/goops/save.scm r  s  s   s    Chf] 45L4?6^gargs  gv gfilenamefoop/goops/save.scm  r    Cklh(d] 45$ O@6\gy  'gtmp 'gfilenamefoop/goops/save.scm r   ' C5RmVh ]4>"GCgobj  gexpr  gfilenamefoop/goops/save.scm u  v    gnameg make-readableCRnVh]45Cgobj  gfilenamefoop/goops/save.scm y  z   z   z    gnamegreadable-expressionCoRnVht]6lgobj  gfilenamefoop/goops/save.scm ~    gnameg readable?CpR+Rpoqrstuvw h] 45$4>"GC45$445>"GC45$4>"GC4545$*4 5 &44 5>"GCC4 >"GCgo  gfile  genv   ginfo  t gfilenamefoop/goops/save.scm     $ .  /  2  ?  J V  W  l  t w     (  gnamegwrite-component-procedureg documentationfReturn #f if circular referenceCR4YZ]`cfxyrzh0]Cgobject  )gpatcher  )gfile   )genv   )gfilenamefoop/goops/save.scm    ) Chg] 45L4?6_gargs  gv gfilenamefoop/goops/save.scm     Cklh(e] 45$ O@6]gy  'gtmp 'gfilenamefoop/goops/save.scm   ' C5R4*5$"i$!4.41455>"G"48i41;<{iM>OABCDhf]C^go  genv  gfilenamefoop/goops/save.scm    C5 >"G4*5$"i$!4.41455>"G"48i41;<|iM>OACDhq]4L5$CNCigo  gfilenamefoop/goops/save.scm   #       Ch0] $!H4O>"GJCCgo  ,genv  ,gliteral?  *gfilenamefoop/goops/save.scm     +   , C5 >"G4*5$"i$!4.41455>"G"48i41;<|iMM>QACDrzR h]#$45 $6454$">"G$+4 5$4'>"G""4 5$"14>"G4   >"G"$"4 >"G$,45$4'>"G""45$"34>"G4 >"G"T "M)6 6go  gfile  genv   gn   g not-literal?  , gt  gi  |gt  1 sgfilenamefoop/goops/save.scm           " # % , , /  7  9  ?  F  T  U  [ ! _  c  d     3        #       + ! 1  U ! ^ 6 a ! v  |     0   C5 >"G4*5$"i$!4.41455>"G"48i41;<iM>OACDhx]456pgo  genv  gfilenamefoop/goops/save.scm       C5 >"Gh(]$"Cgind  !gdim  !ginc   !gfilenamefoop/goops/save.scm    !   -  7  -   ! Ch]454 $4 5"2"# $" 45""54 54  4 54 55Cgarray  gn gn  + Ngls  + Ngindices  [ gfilenamefoop/goops/save.scm           * ! D #  +  . % 3 ! < + = 1 A 9 C 1 F + N % N  Q . Y  [  [  _  d k r  y    gnameg make-mapperCRrrzh]"(a $"4L4 5?L$)4L5$4'L>"G""4LL5$"04L>"G4LL>"G"$C4 L>"G4L45?L$)4L5$4'L>"G""4LL5$"04L>"G4LL>"G"I "B"t$C $4 L>"G"4LL>"G4L>"G4)L>"G" "gdims  gindices  gn  jgel  * gt  f gi  cgel  Zgt   Wgn  m gi  s  gfilenamefoop/goops/save.scm               " ) & 2 ( ) * " *  2  3 # ?  @  f       ) 2 )   #     <  ]  c  m   m  s   x   |                       "            6   gnamegloopChX] 4>"GOQ445>"G)6gprefix  Ugo  Ug not-literal?   Ugfile   Ugenv   Ugloop  # Mgfilenamefoop/goops/save.scm   #  6  =  B  U    U gnameg write-arrayCR4*5$"i$!4.41455>"G"48i41;<iMM>QACDrRtzrh j]4 L>"GL6bgdim  gfilenamefoop/goops/save.scm    !   "    C  h=]4545$I$:4#>"G445>"G(6645$4>"G45$4'>"G"4 5$",4>"G4 4  5>"G4 >"G44 5>"G4O45>"G)64>"G445>"G4>"G65go  gfile  genv   groot  gt  gfilenamefoop/goops/save.scm                  4   7   D   Y   a   b  n   o  s   z           )             % #  0  @ $ A & E &  L & U ' X '  e ' n ( r (  y (  )   ) -   C5 >"G4*5$"i$!4.41455>"G"48i41;<iM>OA CDh(] 4545$CCgo  !genv  !gliteral?  !gfilenamefoop/goops/save.scm 4  5   5 ( 5  5   6  6   6  6   ! C5 >"G4*5$"i$!4.41455>"G"48i41;<iMM>QACDt<rCEzLY_slnnhb]456Zginfo  gfilenamefoop/goops/save.scm d   e    Ch ]C"3("0$45$""""$" 454545H4$$"$""(>"G$*45$4'>"G""45$"/4>"G4  >"G"$ 45"$("$"4 >"G4 >"G$)45$4'>"G""45  $".4>"G4   >"G 4)>"G"4 >"G4 5JK4>"G445J>"G$*45$4'>"G""45  $"/4>"G4  >"G  "F "94J>"G456go  gfile  genv   gls   9gt  F agproper?  s g1?  s g not-literal?  s ginfos  s grefs  s gt  /gls  3 gprev 3 gt  gt  gfilenamefoop/goops/save.scm 9  :  ;  ;   <   <   = !  = + " = ! & <  . > " 4 >  9 :  D ?  E ?  F ?  F ? U @  Z @  ^ @  b A  k A  l B  m C  s :  ~ D  D E  D F  G  D  I  J J  J I  K  L  L   L   L ,  L  3 M  6 O  : O ; P H O L M  R Q \ S  a T  e T  l T  u U   V   W   V   X   Y   Y #  Z  [  , \  7 \  9 \  : ]  N ^  X ^  ^ ^  l _  m `  r `  v `  z _ { a  b   b   b  b 0  b  M   M   M  M   d   g X   C5 >"GhH] 45$L454564455$CL6gslotdef  Dgg-n-s  Dgg-n-s   Dgfilenamefoop/goops/save.scm s  t   t  u   u   v   v 2 % v  & w  ) w " 3 w  7 u  > y  A y ) D y   D Ch ]O45456gproc  gclass  gfilenamefoop/goops/save.scm r z  {  {   {  s    gnamegget-set-for-eachCR hN]4545$+L45$ 45"45456445 5$CL45$ 45"6Fgslotdef  gg-n-s  gg-n-s  ga  gfilenamefoop/goops/save.scm ~                  +   ,  $ 8   ?   G   H   K  " U   Y   ^   j   k  $ y   |        Ch ]O45456gproc  gclass  gfilenamefoop/goops/save.scm }          ~    gnamegaccess-for-eachCR4YZ]`cf?g@ h8-13 Cgclass 4gslots 4gexps  4gfilenamefoop/goops/save.scm    4  Chg] 45L4?6_gargs  gv gfilenamefoop/goops/save.scm      Cklh(] 45$ O@6gy  'gtmp 'gfilenamefoop/goops/save.scm    ' g documentationf)(restore CLASS (SLOT-NAME1 ...) EXP1 ...)g macro-typegdefmacrog defmacro-argsgargsC5R4*5$"i$!4.41455>"G"48i41;<iM>OACDh ] 4L545$CL6gget  gset  gval  gfilenamefoop/goops/save.scm     !    !       Ch ]4O>"GCygo  genv  gfilenamefoop/goops/save.scm            C5 >"G4*5$"i$!4.41455>"G"48i41;<iMM>QACDrqhP] 4455$",4L455$44L455L5"Cgslotdef  Ogt  Mgfilenamefoop/goops/save.scm        $         # $  2 ,  # 0   1  # 4  $ 9  0 A  $ E  # N    O Crh(w]4 L>"G45L6ogslotdef  #gfilenamefoop/goops/save.scm        ! #    # Cr#qzg hX]4 L>"G4L545$L64L5$C4L5$4'L>"G"4LL5$C4L>"G$L" L L6Pgname  ganame  gget   gset   gval   gt  ; gt  v gfilenamefoop/goops/save.scm        "     *   .  ) 2  3  ;   G  $ S  T  $ v   1  5  5  C h]4>"G445>"G4>"G4O455("4445>"G4  O>"G4)>"G4  O>"G)6go  gfile  genv   gclass   gslotdefs  ] gfilenamefoop/goops/save.scm                    ,   5   9  @   I  U   ]  ]   e   j  m   r  + t   {             C5 >"G4*5$"i$!4.41455>"G"48i41;<iM>OABCDhf]C^go  genv  gfilenamefoop/goops/save.scm     C5 >"G4*5$"i$!4.41455>"G"48i41;<iMM>QACDrh]456go  gfile  genv   gfilenamefoop/goops/save.scm         C5 >"G4*5$"i$!4.41455>"G"48i41;<2iM>OABCDhf]C^go  genv  gfilenamefoop/goops/save.scm     C5 >"G4*5$"i$!4.41455>"G"48i41;<2iMM>QACDrh]456go  gfile  genv   gfilenamefoop/goops/save.scm         C5 >"G4*5$"i$!4.41455>"G"48i41;<9iM>OABCDhf]C^go  genv  gfilenamefoop/goops/save.scm     C5 >"G4*5$"i$!4.41455>"G"48i41;<9iMM>QACDh]6go  gfile  genv   gfilenamefoop/goops/save.scm          C5 >"G4*s5$"4si5$24.s4 4*s5$si"s5>"G"4* 5$"4 i5$64. 4 4* 5$  i" 5>"G"4* 5$"4 i5$64. 4 4* 5$  i" 5>"G"4*<5$"4"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G"4*5$"4i5$64.4 4*5$ i"5>"G""4.4issihG] =6?gfilenamefoop/goops/save.scm      C  ihG] =6?gfilenamefoop/goops/save.scm      C  i<"G" 4*5$4i5$4i 4#i55$4&i4issihG] =6?gfilenamefoop/goops/save.scm      C  ihG] =6?gfilenamefoop/goops/save.scm      C  i<"G""J""B"":4*'5$"'i$#4.'4145'5>"G"48'i41;<iM>)A<C,-4 hh]4L56`ge  gfilenamefoop/goops/save.scm     0      Ch8] 4L>"G45$ O6Cgenv  7ginitargs  7gt  7gfilenamefoop/goops/save.scm      5    7 Chd]OC\greal-next-method  gfilenamefoop/goops/save.scm    CD5 >"G4*s5$"si$!4.s4145s5>"G"48si41;<MM>OA?CDnshx]456pgo  genv  gfilenamefoop/goops/save.scm         C5 >"G4*s5$"4si5$24.s4 4*s5$si"s5>"G"484Asi541;<MMM>CAECDmsh]456go  genv  gx   gfilenamefoop/goops/save.scm          C5 >"GF h]456go  genv  gfilenamefoop/goops/save.scm          gnameg excluded?CqRh]45456gpatcher  genv  gfilenamefoop/goops/save.scm    %         gnameg add-patcher!CzR<h]45456go  genv  gfilenamefoop/goops/save.scm            gnameg push-ref!ClR<h]45456genv  gfilenamefoop/goops/save.scm            gnamegpop-ref!CGR<h]45Cwgenv  gfilenamefoop/goops/save.scm "  #  #   gnameg containerCHR4*u5$"4ui5$24.u4 4*u5$ui"u5>"G"4*w5$"4wi5$24.w4 4*w5$wi"w5>"G"4*5$"4i5$24.4 4*5$i"5>"G"4*I5$=4Ii5$4i 4#Ii55$]4&Ii4iuuiwwii5I5>"G"V4.I4iuuiwwii5I5>"G"V4.I4iuuiwwii5I5>"G"V4.I4iuuiwwii5I5>"GuinR4*w5$"wi$!4.w4145w5>"G"48wi41;<Hi>|ABCDhX]CPginfo  gfilenamefoop/goops/save.scm 0    C5 >"G4*w5$"wi$!4.w4145w5>"G"48wi41;<MM>OALCDwshx]456pgo  genv  gfilenamefoop/goops/save.scm 3  4  4    C5 >"GwitR4*5$"i$!4.41455>"G"48i41;<Hi>|AFCDhX]CPginfo  gfilenamefoop/goops/save.scm 8    C5 >"G4*5$"i$!4.41455>"G"48i41;<MM>OA_CD+qstuU< hx5]45$C45$C4545$"45& 45"$6C-go  rgenv  rgt  rgt   rginfo  1 rgt  ; fgfilenamefoop/goops/save.scm >  ?  ?   @   ?  ) A  1 A  4 D  ; D  ; D I G  U G  V H " ] H  ^ H  j D  p I   r C5 >"G+pq stn`wH/IlGhx,]45$C45$C45$C45$K4545$ 45C4 5$44  5>"GCC45$=44  5>"G45$4  544 556C4544 5>"G4>"G44 5>"G4 >"G44 5>"G4>"G4 5456$go  rgenv  rginfo  ? gt  rginfo  rgfilenamefoop/goops/save.scm U  V V   W  V   X ) V  , Y 6 V  7 Z  ? Z B [  L [ M _  V _  W _  Y `  e `  f b  d V  f  g  g  i ! i . i ! i  k  k l m  n  o 4 p L q i r ' p r  r r (  r gnamegenumerate-component!CRiaRibRbhn]45L6fgbinding  gfilenamefoop/goops/save.scm ~   $      Ch]O6galist  genv  gfilenamefoop/goops/save.scm |  ~    gnamegpass-1!CcRdefgh]44556gi  gfilenamefoop/goops/save.scm      !  &         gnameg make-localChRb+pqswa hX]4545$" 45$" 4L5$C4L545$"45L454 54L56454 56Pgb  go gt   Bgt  & ?ginfo  Q gfilenamefoop/goops/save.scm              &   4   F   I  Q   T  # [   _   i  ' p  ' w  x  '         CwstihhR]:4O>"G"}(" 45$6445>"G445>"CG"<45$""45"s"C(N44545>"G44 545>"G4 54564 54 5$4 455$<44545>"G"I("&4544545>"G45""4455 "Jgalist  genv  gls   g post-defs   gls  gi  gpre-defs  glocs  gsins  ginfo   g real-name    gfilenamefoop/goops/save.scm        %  &   +   0   4   6   :   ;  T  q   v   z   ~      %                     "              !                  '   +  ,   6  & A   L   O   T  ! W   g   m  p   u  ! x        "         (            #      $                                    R   gnamegname-bindings!CjR su`h@] 4L54454L5>"G456go  :ginfo :gfilenamefoop/goops/save.scm            & %   :    : Ck h@]445>"GO445454556genv  ?gfilenamefoop/goops/save.scm     $  '   .   5   =  ?    ? gnamegpass-2!ClRrmRnhx]4>"G4>"G4 >"G$4'>"G"4>"G6gname  xgval  xgliteral?   xgfile   xgfilenamefoop/goops/save.scm             +   D   E   ]   t  x    x gnameg write-define!CoRoho]L6ggstand-in  gfilenamefoop/goops/save.scm        Cowhh]4L5L6`go  gfilenamefoop/goops/save.scm          Ch8]4O45>"GO456gfile  4genv  4gfilenamefoop/goops/save.scm         ,  4    4 gnamegwrite-empty-defines!CpRrswluUvG hW] 4>"G45445>"G4 >"G45$4'>"G"4>"G445>"G4 >"G445 >"G4 >"G)6Ogprefix  go  gfile   genv   ginfo   gfilenamefoop/goops/save.scm           "   %  2   ;   O   Y   Z   r              gnamegwrite-definition!CqRrrqsqthh]LL6`go  gfilenamefoop/goops/save.scm    !      Cn h`]4>"G445>"G4O45>"G6gfile  ]genv  ]gfilenamefoop/goops/save.scm                   #   ,   5   A   H  M   Y  ]    ] gnamegwrite-let*-head!CuRrnh`]4LL>"G4L>"G4 L>"G4L>"GL6gpatch  \gfilenamefoop/goops/save.scm           #   ,   @   E   L   X   \    \ Ch]O6gprefix  gbindings  gfile   genv   gfilenamefoop/goops/save.scm       gnamegwrite-rebindings!CvRqwh h]4LLL>"GL6`go  gfilenamefoop/goops/save.scm        Ch]O456gselector  gprefix  gfile   genv   gfilenamefoop/goops/save.scm         gnamegwrite-definitions!CxRrwyhP]4L5$44L55$CC$4L54L5CCgpatcher  Lgt Lgt  ! 0gfilenamefoop/goops/save.scm         ,   7 !  , !  % 3  7   8  & =  4 ?  & @  & E  4 G  & H    L gnameg name-objectsCwhH] 4LL>"G4OLQ45L>"GL6gpatch  Hg name-objects " 3gfilenamefoop/goops/save.scm        "   :   H    H Ch ]O44556gprefix  gfile  genv   gfilenamefoop/goops/save.scm              gnamegwrite-patches!CzR+boah0]4455$4545L6Cgb  )gfilenamefoop/goops/save.scm                !   ! '    ) Ch]O6galist  gfile  gfilenamefoop/goops/save.scm       gnamegwrite-immediates!C{Rpbyaoo hY] 4455$C445M5$45L454L564454455L>"G4545MNCQgb  gt  gt ( gfilenamefoop/goops/save.scm    !   ! '  !   !   !   "   "  ( "  ( !  < % ) = & ) D % " E ' ) L % " N $  O )  R ) & Y * & \ * ; d * & l )  u - , | . , - % -   Ch] HO6galist  gfile  genv   gwritten   gfilenamefoop/goops/save.scm             gnamegwrite-readables!C|R4*5$"i$!4.41455>"G"48i41;<i{iM>ACDh@-13454>"G4>"GCgalist >gfile >grest  >gport   >gfilenamefoop/goops/save.scm 2 3   3   4  + 5  >  C5 >"G4*5$"i$!4.41455>"G"48i41;<iiM>ACD/-cjlRw{xmzpuvr|h-1345 $"45 $"454>"G4>"G4>"G(")4 >"G4 >"G4 >"G4 5(24 >"G4>"G"4 >"G4>"G4>"G445>"G4 >"G4>"G4>"G4>"G44556galist gfile grest  gexcluded  5 guses  5 genv  D gfilenamefoop/goops/save.scm 8 9   9   9   9 +  9 6  :  ( :  , :  / : + 5 : 7 5 9  : ;  D ;  G <  [ =  o >  ?  A A  A B C  D  D  F F - F G G  G  I  I ,  I  J 1 K E L I L  J L * Y L b M h M - q M z N ~ N   N  O  O   O  P   Q   Q $  Q -  Q $  Q 8   C5 >"G4*5$"i$!4.41455>"G"48i41;<{i>ACDh0]45454>"GCgfile  )gport )gobjects   )gfilenamefoop/goops/save.scm S  T  T  U   T   V   ) C5 >"G4i4i55R4*5$"i$!4.41455>"G"8i41;<i>ACD$hX]4L>"G".45$C4L>"G4L5"4L5"gsexp  Fgfilenamefoop/goops/save.scm `   a   b   c  # c & e  : f  F f  F b  G b  S b   S Ch|]Ctgname  gvar  gfilenamefoop/goops/save.scm g   h   h   C hX] 454>"G4>"G4O>"G6gfile  Rgm  Rgfilenamefoop/goops/save.scm [  \  \  ]   ^  2 _  R g   R C5 6gm  0gt 8 Mgt  (gt  gt  gt  gt  gt s gt S hgt D Ygt 2 Ggt % :gt  5gt  gt # #gt ) )gt *{ *gt ;h ;}gt =p =gt D Egt E Egt G Ggt G Hgt I! I6gt J J*gt K1 KOgt K Kgt K Lgt LR Lqgt L Lgt M M5gt Mx Mgt M Mgt N< N[gt N Ngt O Ogt S, SBgt U Ugt V Vgt [ [gt \ \-gt \k \gt ^n ^gt _O _dgt `f `{gt aG a\gt mgt gt {gt  2gfilenamefoop/goops/save.scm   1 X  Z  [  \  ]  ^ l _ L e = g W p  b p  u y _ ~  +    b # #  ( 4 *t 9 5 r 8 } ;a  =i  D  E  G  G  I  J  K*  P{   P   P   P   P   P   P   P   Q  Rs   R   R   R   R   R   R   R   R  S$  U  V  X  Y  ZK  [  [ " [ % ^f . ^g 0 _H 3 `^ 6 `_ 8 a@ > gg U gp y gy z h | i  rF  tV  u  x#  z  |  ~  H    ^  e  f 2  8 t S  Y  Y ' Y  Y  [ ^ ( C6goops.go000064400000314760151027762650006250 0ustar00GOOF----LE-8-2.0ؙ]4hc] gguile  gdefine-module*   goop ggoops  gfilenameS f oop/goops.scm gimportsS gsrfi gsrfi-1     gice-9 gmatch   gutil    gexportsS g define-class gclass gstandard-define-class gdefine-generic gdefine-accessor g define-method gdefine-extended-generic gdefine-extended-generics !gmethod "gis-a? #gclass-of $gensure-metaclass %gensure-metaclass-with-supers &g make-class 'g make-generic (gensure-generic )gmake-extended-generic *g make-accessor +gensure-accessor ,g add-method! -gclass-slot-ref .gclass-slot-set! /g slot-unbound 0g slot-missing 1gslot-definition-name 2gslot-definition-options 3gslot-definition-allocation 4gslot-definition-getter 5gslot-definition-setter 6gslot-definition-accessor 7gslot-definition-init-value 8gslot-definition-init-form 9gslot-definition-init-thunk :gslot-definition-init-keyword ;gslot-init-function g compute-cpl ?gcompute-std-cpl @gcompute-get-n-set Ag compute-slots Bgcompute-getter-method Cgcompute-setter-method Dgallocate-instance Eg initialize Fg make-instance Ggmake Hgno-next-method Igno-applicable-method Jg no-method Kg change-class Lg#update-instance-for-different-class Mg shallow-clone Ng deep-clone Ogclass-redefinition Pg apply-generic Qg apply-method Rg apply-methods Sgcompute-applicable-methods Tg%compute-applicable-methods Ugmethod-more-specific? Vgsort-applicable-methods Wgclass-subclasses Xg class-methods Yg goops-error Zg min-fixnum [g max-fixnum \g instance? ]gslot-ref-using-class ^gslot-set-using-class! _gslot-bound-using-class? `gslot-exists-using-class? agslot-ref bg slot-set! cg slot-bound? dg class-name egclass-direct-supers fgclass-direct-subclasses ggclass-direct-methods hgclass-direct-slots igclass-precedence-list jg class-slots kggeneric-function-name lggeneric-function-methods mgmethod-generic-function ngmethod-specializers ogmethod-formals pgprimitive-generic-generic qgenable-primitive-generic! rgmethod-procedure sgaccessor-method-slot-definition tg slot-exists? ug find-method vg get-keyword w !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstGuv_ xgset-current-module yx zx {gcurrent-module |g*goops-module* }g%init-goops-builtins ~gprocess-use-modules ~ ~ glanguage gtree-il g primitives  gselectS gadd-interesting-primitive!  gdispatch   gmake-procedure gcompute-cmethod gerror   fno matching pattern gexpt g scm-error gmemq gassoc g gdsupersS gslotsS gnameS ggensym f metaclass gmap g append-map gfor-each gmember gappend gkeyword? fmalformed keyword arguments: ~a g kw-do-map g make-unbound gor-map g g metaclassS gfind-duplicate f3make-class: super class ~S is duplicate in class ~S f,make-class: slot ~S is duplicate in class ~S gmake-syntax-transformer   gmacro g $sc-dispatch   g_ gany  g syntax->datum   g datum->syntax   fmalformed superclass list: ~S g take-while g find-tail glist gquote g init-formS g init-thunkS glambda gsyntax-violation   f-source expression failed to match any pattern gdefine-class-pre-definition geach-any nj Ȍ nj ʌ nj ̌ g syntax-object gbegin gtop  gribcage gout   f l-bdc1916-ed    gx  f l-bdc1916-d0    ghygiene   ggetterS gsetterS gkey  g m-bdc1916-e3   f l-bdc1916-e4   gk garg grest   f l-bdc1916-db f l-bdc1916-dc f l-bdc1916-dd f l-bdc1916-de       gif  gor  gnot  gdefined?   " g     gtoplevel-define!     (      gaccessorS g    + gdefine-class-pre-definitions f l-bdc1916-f4   f l-bdc1916-f1     nj  nj   gslotname !gslotopt " ! #f l-bdc1916-115 $f l-bdc1916-116 %f l-bdc1916-117 &f l-bdc1916-118 '#$%& ("' )( *) +) ,g identifier? -gslot .- / 0f l-bdc1916-10c 1f l-bdc1916-10d 2f l-bdc1916-10e 3012 4./3 54 65 7f l-bdc1916-fe 8f l-bdc1916-ff 9f l-bdc1916-100 :789 ;./: <; =< >Ɍ ?gdummy @gname Agsupers B?@A- Cg m-bdc1916-121 DC ED Ff l-bdc1916-126 Gf l-bdc1916-127 Hf l-bdc1916-128 If l-bdc1916-129 JFGHI KBEJ LD Mf l-bdc1916-123 NM OLN PKO QP RP SP Tgand UTP VP WP X"P YP ZY [P \P ]iP ^OP _P `P a P b? cg m-bdc1916-132 dc ed ff l-bdc1916-137 gf l-bdc1916-138 hfg ibeh jd kf l-bdc1916-134 lk mjl nim on pfbad generic function name: ~S qgdefine r s tgprefixS ug symbol-append vfno prefixes supplied wg xgmake-setter-name ygsetter zg {gextendsS |g }g extended-by! ~g extended-by ginvalidate-method-cache! gdelq! gnot-extended-by! gprocedure-with-setter? gdefaultS g procedure g procedure? ggeneric-capability?  ?@ g m-bdc1916-19d   f l-bdc1916-1a2 f l-bdc1916-1a3    f l-bdc1916-19f    q gcond     +  "   G  gelse  gstring->symbol g string-append fsetter: gsymbol->string gupgrade-accessor gmethods g extended-byS gextends ggeneric-function gmodule-define! gfree-id g m-bdc1916-1c5   f l-bdc1916-1c7    y    nj  gargs gbody ?@  f l-bdc1916-1ca f l-bdc1916-1cb f l-bdc1916-1cc f l-bdc1916-1cd          "     +   , y !  nj ، f l-bdc1916-1d4 f l-bdc1916-1d5 f l-bdc1916-1d6 f l-bdc1916-1d7            G   , ! gfree-identifier=?   f l-bdc1916-26f   gcompute-procedures gcompute-make-procedure g->proper gcompute-procedure g find-free-id g parse-args   f l-bdc1916-1e9 f l-bdc1916-1e7 f l-bdc1916-1e5 f l-bdc1916-1e3 f l-bdc1916-1e1 f l-bdc1916-1df   f l-bdc1916-1de    !            Ɍ   greverse glp gls gformals g specializers  f l-bdc1916-1ed f l-bdc1916-1ee f l-bdc1916-1ef f l-bdc1916-1f0   f l-bdc1916-1ec       g !gtail "! #f l-bdc1916-212 $# %"$ &% ' & (gf )( * +f l-bdc1916-20a ,f l-bdc1916-20b -+, .)*- /. 0 / 1 2g next-method 3gid 43 5f l-bdc1916-26b 65 746 8 9f l-bdc1916-269 :f l-bdc1916-26a ;9: <8*; =7< >= ?gformal @? Af l-bdc1916-259 BA C@B D2 Ef l-bdc1916-255 FE GDF H If l-bdc1916-251 JI KHJ L2 Mf l-bdc1916-24c Nf l-bdc1916-24d Of l-bdc1916-24e PMNO QL/P RCGKQ  SR Tgreal-next-method UTR VU Wglet XWR YR ZR [gnull? \[R ]\Y ^gapply _^R `_UY a` bf l-bdc1916-263 cb d@c e ff l-bdc1916-25e gf heg idhGKQ  ji kTi lk mWi ni oi p[i qpn r^i srkn ts uf l-bdc1916-235 vu wev xgbody0 yx zf l-bdc1916-231 {z |y{ }f l-bdc1916-22d ~f l-bdc1916-22e }~ 8* w|   f l-bdc1916-287 f l-bdc1916-288  * f l-bdc1916-282 f l-bdc1916-283  * g specializer  f l-bdc1916-27b f l-bdc1916-27c  * gbody1 x f l-bdc1916-272 f l-bdc1916-273 f l-bdc1916-274  /   G g  g specializersS  gcons*  gformalsS   gbodyS  gmake-procedureS  g procedureS  g for-each* gdirect-methods gadd-method-in-classes! gdelv! gremove-method-in-classes! gcompute-new-list-of-methods glength* gmethod-n-specializers gfold gmax gcalculate-n-specialized g%invalidate-method-cache! g n-specialized ggf gm   b   b   g *unspecified*  ginternal-add-method! g  gproc   q ,  2   g gpg  p ,  gobj  f"~S is not a valid generic function Y   glet* gspec gmap*  a d  gsrc gprocedure-source  a    gcadr   gcddr    gcons !    W T    a  gcar gcdr g allocationS ginstanceS g init-valueS g init-keywordS gassq ggetters-n-setters gslot-definition gequal? gg-equal? gy  gset-primitive-generic!  gdisplay  gnumber->string  gobject-address  gdisplay-address  gwrite go gfile  f #  g write-object #   @ c f#<   d       !  "! #W" $# % &gmeta '# (&' )( *c& +T* ,d& - , .  /-  . 0+/ 1W)0 21 3 4# 5&4 65 7c 8T*7 9k :@9 ;: < @ = < >@= ?W;> @f ( A @ Bglength Cl DBC E D Ff)> G F H-?AEG I8H JW6I KJ L& ML Nc OT*N P Qc Ra SQR TPS Un VTU W V X- W  YOX ZWMY [Z \ ]\ ^gmerge-generics _g `g agmodule bgint1 cgval1 dgint2 egval2 fgvar ggval ha@bcdefg ig  jgeq? kjce lk mg make-variable nec o)n@ pmo qTlp rq sa@bcdef t uat veu wv xeu yex zbty {~ |ae{ }| ~} be{~ zf Tw  gduplicate-handlers gmerge-accessors ^a@bcdefg   gslots gclassS g each-subclassS  gclass-slot-g-n-s gunbound? gc gs  f!Slot `~S' is unbound in object ~S Y   f Slot `~S' is unbound in class ~S Y   fUnbound slot in object ~S Y  f#No slot with name `~S' in object ~S Y  f(No class slot with name `~S' in class ~S Y  gvalue  0   f0No next method when calling ~S with arguments ~S Y  f&No applicable method for ~S in call ~S 9 Y  fNo method defined for ~S Y  gself  gclone g%allocate-instance #    j 1   - c- a- b-    W    \ N  W b-    W  gold gnew  gremove-class-accessors!  g   gupdate-direct-method!     g  b W gset-car! gcpl  a   gdirect-subclasses  f  b  e    b  e  g %modify-class  gupdate-direct-subclass!   f  g redefined  b g%invalidate-class    g " a   gdelq1!  a     b     W      g    gloop gl n   gpair?  geqv?       !  "! #" $W# %$ & 'e (h )d *# +&'()* ,O+ -, .gcompute-slot-accessors /gg-n-s 0/ 1g init-thunk 2/ 312 4/ 5/4 635 7 8/ 9gmake-generic-bound-check-getter :/ ;9: <8; =g standard-get >=/ ?1> @gbound-check-get A@/ BA C<?B Dgslot-definitionS EG7CD/ FW6E GF H  Ig standard-set JI/ K82J LGHKD/ MW6L NM Og assert-bound Pgnum-standard-pre-cache Qgdefine-standard-accessor-method Rgcache Sgvector Tg struct-ref Ug struct-set! Vgiota Wgn XW Yg< Zg vector-ref [ZRW \gnfields ]ginteger? ^f-Bad getter and setter for slot `~S' in ~S: ~S _f*Bad getter closure for slot `~S' in ~S: ~S `f*Bad setter closure for slot `~S' in ~S: ~S af/Class-allocated slots should not reserve fields bgthunk? cf&Bad init-thunk for slot `~S' in ~S: ~S dgcompute-getters-n-setters e f?e gf hgfilter ig only-non-null jg merge-lists kgevery lgreverse! mf*merge-lists: Inconsistent precedence graph ngtop-sort ogbuild-transitive-closure pgbuild-constraints qgstd-tie-breaker rgcompute-clos-cpl sftop-sort: Invalid constraints tfstd-tie-breaker: Nothing valid u vgclass-slot-init-value wv xgthunk y9 zxy {z |x }7 ~x|} W{~ qw gcase 3  galready-allocated \ a   g+   b W   1 @  h 1 @ gmake-closure-variable w i    gr  a @    ! W W  W    gvirtualS  gget gslot-refS 2 v  gset g slot-set!S v   T  f4You must supply a #:slot-ref and a #:slot-set! in ~S Y   W      fAllocation "~S" is unknown Y  g%compute-slots   gobject ginitargs  g%initialize-object    gdslots v  v A  g???  v b g direct-supers  bA g direct-slots  b b b > b b A    b b  d b . W  a  b  A g %prep-layout!  g%inherit-magic! A W   ginitialize-object-procedure g gapplicable-struct    ggeneric  gprevious-definition v  v @  "  ^  !         b  gset-procedure-property! @ @ W     ggws  g%set-object-setter! v   geg  v{ bt  gdummy-procedure  ! !ggeneric-functionS "v! #b!" $v %b!$ &v 'b!& (v )b!( * +v ,b!*+ - .v /b!-. 0#%'),/ 1g%modify-instance 2gchange-object-class 3g old-instance 4g new-instance 534 64 7g new-class 837 9#3 :2397 ;: < =< >Ɍ ?ginstance @D A?@ BA CE? DWBC? ED F[  GJ HFG IS JI KJ LV MRL NI OMN PWKO QHP Rg%%compute-applicable-methods ST TS U Vgtargs W# XVW YX Zgsort [gm1 \gm2 ][\ ^U[\V _]^ `Z_ aWY` ba c# d# e[\V fg%method-more-specific? gf[\V hg ig build-next ji k lrk m nim o^ln po qg r sgletrec tgnext ugprocs vu wgnew-args xga y[w zyw {xz |{ }[u ~Hx Qutx }~ W| w v t  Qt s  gsystem-procedure glist2set g mapappend g %goops-loadedC5h"]4   w54z>"G4{i5|R4}i>"G4>"G4i#>"G4>"GaHmhe-134L56]gargs gfilenamef oop/goops.scm q  r "  r   Cr hX]$?45$( O" 4566456gmethods  Ugtypes  Ugw   Hgx   Hgmake-procedure   Hgfilenamef oop/goops.scm j  k   m   m ,  m   m  $ n  , p 8 s  B o H t I k   U gnamegcompute-cmethodCR 4i  5ZR4i  5[RYh-136g format-string gargs gfilenamef oop/goops.scm ~    0     gnameg goops-errorCYRih ]4455$CCgobj  gclass  gfilenamef oop/goops.scm     *         gnamegis-a?C"RHG h@]4M5$C4455MNCg meta-supers  =gentry =gnew  . =gfilenamef oop/goops.scm          # / & . * 6 , . .  . 5 ) 8 # :   = CO%RhZ]CRgx  gfilenamef oop/goops.scm   )   Cihc]45C[gm  gfilenamef oop/goops.scm $  + &  Ch8]4L5$" 4M5$4M5NCCgmeta  4gfilenamef oop/goops.scm         " # , 5 . 0   4 C% hP$](C4545H4O>"GJ(JCJ6gsupers  Pg all-metas  Pgall-cpls   Pg needed-metas  " Pgfilenamef oop/goops.scm          "  "  %  B  F  I P   P gnamegensure-metaclassC$RYhH ] (C$" 45$L64L5Cgl  Agt  'gfilenamef oop/goops.scm           ! ) #  $  +  /  3  6  7  < # ?  @   A gnamegkeywordsCh ](C4L5Cgl  gfilenamef oop/goops.scm       %  +  %     gnamegargsCh@]#OOQQ45456gmapper  ;gf  ;gkwargs   ;gkeywords   ;gargs   ;gk  & ;ga  / ;gfilenamef oop/goops.scm &  ) /  ;   ; gnameg kw-do-mapCRvihg]456_gclass  gfilenamef oop/goops.scm "  *  $   C$1YGh-13445545$" 4545$"4 54 54 4  55$4 >"G"$4 >"G"@ gsupers gslots goptions  gname   gsupers  8 gt  D \g metaclass  \ gtmp1  s gtmp2  s  gfilenamef oop/goops.scm   +       &  -  6 $ 8  8  ;  D  S  \  _  f  i s  s  }  ~      gnameg make-classC&R4Yhc]45C[gx  gfilenamef oop/goops.scm   , '  C&h0~]$CCvgkw  *garg  *gfilenamef oop/goops.scm   " ) '  * Ch0]$45CCgdef  /gfilenamef oop/goops.scm             $   / C hp-13$"4>"G4545$"4  5C gsupers igslots igt  : Lgslots  L igoptions  L igfilenamef oop/goops.scm        )  2  :  I 0 L  R  Z  c  i Chb] 45L4?6Zgargs  gv gfilenamef oop/goops.scm     Ch(`] 45$ O@6Xgy  'gtmp 'gfilenamef oop/goops.scm   ' C5R4h+]C#gout     Ch]456gk  garg  grest   gout   gfilenamef oop/goops.scm       C   h] 45$"$f4         5C$f4        5CCgk  garg  grest   gout   gkey  gfilenamef oop/goops.scm       C hPr]45" 45$@6$4?$@""jgx  Pgtmp Pgtmp   1gfilenamef oop/goops.scm    P C5R4h+]C#gout     C*+h h]45C`gslotname  gslotopt  grest   gout      C,hx]6pgslot  grest  gout   gfilenamef oop/goops.scm  /    C6hO]CGgslot  grest  gout     Ch]456ygslot  grest  gout   gfilenamef oop/goops.scm  ,  ,   C=hO]CGgslot  grest  gout      C h]!45$@45"N45" 45$@6$4 ?$ @""$4 ?$ @""gx  gtmp gtmp  " gtmp  1 vgtmp  @ Wgfilenamef oop/goops.scm '   C5R4>QRSUVWXZ[\]^_`ahj]     45 45Cbgdummy  gname  gsupers   gslot     Ch(] 45$@6gx  "gtmp "gfilenamef oop/goops.scm 6   " g macro-typeg syntax-rulesgpatternsgnamegsupersgslotg...C5R4oh>]C6gdummy  garg     Ch(] 45$@6gx  "gtmp "gfilenamef oop/goops.scm @   " g macro-typeg syntax-rulesgpatternsgargg...C5R4YpqT"rG(shx]$"4>"G     Cgname  xgfilenamef oop/goops.scm J  K K   L   L   L  # M   x Chb] 45L4?6Zgargs  gv gfilenamef oop/goops.scm  J    Ch(`] 45$ O@6Xgy  'gtmp 'gfilenamef oop/goops.scm J   ' C5R4Ypq)h8]$"4>"GCgname  7gval  7gfilenamef oop/goops.scm R  S S   T   T   T  # U   7 Chb] 45L4?6Zgargs  gv gfilenamef oop/goops.scm  R    Ch(`] 45$ O@6Xgy  'gtmp 'gfilenamef oop/goops.scm R   ' C5R4 vtuh_]L6Wgprefix  gfilenamef oop/goops.scm ] $ ^ &  Ch o]4OL5Cggname  gfilenamef oop/goops.scm [   \  ]   \    CYvh8-1345$4O5C6gnames 3gargs 3gprefixes   3gfilenamef oop/goops.scm W X   X   Y   Z   [ , Z  1 a  3 a  3 Chb] 45L4?6Zgargs  gv gfilenamef oop/goops.scm  W    Ch(`] 45$ O@6Xgy  'gtmp 'gfilenamef oop/goops.scm W   ' C5 RGh v-.,3#6ngname gfilenamef oop/goops.scm c  d   gnameg make-genericC'R"wh[]6Sggf  gfilenamef oop/goops.scm h  h !  Cx"w(yh(]45$445L5CCggf  #gfilenamef oop/goops.scm l '  m -  m )  n 3  n C  n 3 n - " p -  # CGz{|}yh-.,3#$"45$n$ 45"4O54  4  554 4 5>"G"4  54 >"GCggfs gname ggfs  ' ggws?  2 gsname  L gsetters  \ ges  ~ gans  gfilenamef oop/goops.scm f  g   g  ' g " ' g  * h  2 g  : i  @ j ! A j + L j  O l  \ j  _ r  n u ) ~ r  ~ j  x  x + x  z  i  }  gnamegmake-extended-genericC)Rb~ah]L456ggf  gfilenamef oop/goops.scm      "   /   "         Ch(]4O>"G6ggfs  !geg  !gfilenamef oop/goops.scm     !    ! gnameg extended-by!C}Rb~ah ]4L4556ggf  gfilenamef oop/goops.scm         #   0   #         Ch(]4O>"G6ggfs  !geg  !gfilenamef oop/goops.scm     !    ! gnamegnot-extended-by!CR"Gwy h-.,3#45$C45$45 4 564 5$4 5$C66gold-definition }gname }gfilenamef oop/goops.scm    "   &  0   ;   D   L  M  W   X  b  s  }   } gnamegensure-genericC(R4h`?]     C7gdummy  _gname  _  _ Ch(] 45$@6gx  "gtmp "gfilenamef oop/goops.scm    " g macro-typeg syntax-rulesgpatternsgnameC5Rh]44556gname  gfilenamef oop/goops.scm      !  +         gnamegmake-setter-nameCxRGxh@-.,3#4$ 45"56gname <gfilenamef oop/goops.scm   ,   -  :  <   < gnameg make-accessorC*R"wy'G(+*h-.,3#"45$ 45645$ 45645$#   4 5 4455645$-45$4  5" 45664 5$4455$C":"6gproc gname gfilenamef oop/goops.scm    &   +  3  4  @   E  M  N  X   c   l   o  $ y   {  |                            gnamegensure-accessorC+RaG"|zk~b}bhh]L6`gmethod  gfilenamef oop/goops.scm     "    Ch]45445$"4 5 4 5 545$P4 54>"G4 >"G4>"G"4O>"G4>"G4>"GCggeneric  gsetter  gmethods  = ggws  = ggfs  W gfilenamef oop/goops.scm      #          &   /  ! 5  3 7  ! =  =   B   N   O   U  % W   W   Z  n  t   {              gnamegupgrade-accessorCR{h]456gname  gval  gfilenamef oop/goops.scm          gnamegtoplevel-define!C R4hxc]     C[gdummy  qgname  qgargs   qgbody   q  q C hXc]    C[gdummy  Ugname  Ugargs   Ugbody   U  U Ch@]45$@45$@6gx  9gtmp 9gtmp  " 9gfilenamef oop/goops.scm    9 g macro-typeg syntax-rulesgpatternsgsettergnamegargsgbodyg...gnamegargsgbodyg...C5R4!h ] 4LL5$CLL6zgx  gy  gt  gfilenamef oop/goops.scm         C,hR]6Jgx  gfilenamef oop/goops.scm      Ch |] 4L545$CCtgx  gid gfilenamef oop/goops.scm             Ch@]45$ LO@4?$ O@Cgexp  ?greferent  ?gtmp  ?gtmp  % ?gfilenamef oop/goops.scm    ? gnameg find-free-idC h,]C$gargs    C  hf]4L54L5C^gfilenamef oop/goops.scm                 C,hU]6Mgtail  gfilenamef oop/goops.scm      C'h ]44L554L5Cgtail  gfilenamef oop/goops.scm                        C,hd]6\gf  grest  gfilenamef oop/goops.scm      C0hv]LLL6ngf  grest  gfilenamef oop/goops.scm           C,h]45$6C}gf  gs  grest   gfilenamef oop/goops.scm       "   Ch]LLL6}gf  gs  grest   gfilenamef oop/goops.scm           C h]#45"|45"E45$ O@4?$ O@6$4 ?$ LO@""$4 ?$ LO@"`"\gls  gformals  g specializers   gtmp  gtmp   gtmp  ( egtmp  B egfilenamef oop/goops.scm    gnameglpC12>SVXYZ]Ua h8.]LLC&gformal  4  4 Chk]LL6cgx  gxs  gfilenamef oop/goops.scm  $    ChB]L6:gfilenamef oop/goops.scm      ChH]45$ LO@45$ O@6gls  Dgout  Dgtmp  Dgtmp  ( Dgfilenamef oop/goops.scm   B  $ D    D gnameglpCjlmnoqrkt h8.]LL LC&gformal  7  7 Chh]4L5$ LO@OQ4L545$LLO@6gbody  cgtmp cglp  ( 8gtmp  8 cgtmp  C cgfilenamef oop/goops.scm (   3   5   8 .   c Ch-]LC%gbody0    C h0M]LLLL  CEg procedure  .gmake-procedure  .  . C hl]"LL4L5$<45$4O?" 45 ";"645$4O?" 45 " G4 5$ LLO@6dgformals  g specializer  gbody   gid   gtmp  % Lgtmp  _ g procedure  gmake-procedure  gtmp  gtmp   gfilenamef oop/goops.scm  I  ;   ; #  ;   ;   <  R > @ G K   ChH]OQ4545$LO@6gargs  Fgbody0  Fgbody1   Fglp  gtmp   Fgtmp  & Fgfilenamef oop/goops.scm     "   5     F   F C hP]OQ45$@45$ O@6gx  Kg find-free-id Kgtmp   Kgtmp  / Kgfilenamef oop/goops.scm    K C5!Rgbh(] 454L5$CL6gx  'gdm 'gfilenamef oop/goops.scm Z  [  [  \   \  ] " % ] 2 ' ]   ' Cnh]O456}gm  gfilenamef oop/goops.scm X ^  Z    gnamegadd-method-in-classes!CRbgh~]4L4556vgx  gfilenamef oop/goops.scm b  d  e   e #  e   c    Cnh]O456gm  gfilenamef oop/goops.scm ` f  b    gnamegremove-method-in-classes!CRnahhx]4545"?(C45$4>"GC""pggf  agnew  agnew-spec   agmethods   agl   Ygfilenamef oop/goops.scm h  i  j   j   j   i   k  l  % m ' n  , n + . n  1 n  5 n 6 q  ; q + @ q  M r  S t  Y t  Y k   a gnamegcompute-new-list-of-methodsCRah]456gm  gfilenamef oop/goops.scm v  w w  w  w    gnamegmethod-n-specializersCRhr]456jgm  gn  gfilenamef oop/goops.scm z   z   z    Clh] 456ggf  gfilenamef oop/goops.scm y  |   z    gnamegcalculate-n-specializedCRbh[]6Sggf  gfilenamef oop/goops.scm       Ca~ h@]4>"G445>"G456ggf  >gfilenamef oop/goops.scm ~             '   4  :   <  >    > gnameginvalidate-method-cache!CR4Giiiibh`]4>"G445>"G4>"G4>"GCggf  [gm  [gfilenamef oop/goops.scm                   -   6   H    [ C5 R"$4(i4i,5$,i",5"B4i,5$04"i,ii5$4Gii,5"""",R44rii5,ii>"G4i,5$",i$)4 i,4Gii,5>"G"4,i,i4Giiiiq,h0]45$4>"G6L6gproc  /gm  /gfilenamef oop/goops.scm          '   /    / Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4i,5$",i$)4 i,4Gii,5>"G"4,i,i4Giiii,phr]456jgpg  gm  gfilenamef oop/goops.scm          C5 >"G4i,5$",i$)4 i,4Gii,5>"G"4,i,i4Gii iiYhs]6kgobj  gm  gfilenamef oop/goops.scm        C5 >"G4i=5$"=i$)4 i=4Gii=5>"G"4,i=i4Giiida! hPJ]!44554455$45CCBgm  Jgspec  Jgsrc  " Jgargs  2 Hgbody  2 Hgfilenamef oop/goops.scm         ,                ,  "   "   *   -   1   2  8   9   F   G    J C5 >"G4io5$"oi$)4 io4Giio5>"G"4,ioi4Giiiahb]6Zgm  gfilenamef oop/goops.scm        C5 >"Gi1Ri2Rvh]6gs  gfilenamef oop/goops.scm       gnamegslot-definition-allocationC3Rvh]6}gs  gfilenamef oop/goops.scm       gnamegslot-definition-getterC4Rvh]6}gs  gfilenamef oop/goops.scm       gnamegslot-definition-setterC5Rvh]6gs  gfilenamef oop/goops.scm       gnamegslot-definition-accessorC6Rvh]456gs  gfilenamef oop/goops.scm     $      gnamegslot-definition-init-valueC7Rvh]456gs  gfilenamef oop/goops.scm     #      gnamegslot-definition-init-formC8Rvh]6gs  gfilenamef oop/goops.scm       gnamegslot-definition-init-thunkC9Rvh]6gs  gfilenamef oop/goops.scm       gnamegslot-definition-init-keywordC:Rjh]456gclass  g slot-name  gfilenamef oop/goops.scm          gnamegclass-slot-definitionC"G4iii>"G   h]445 56go  gfile  gfilenamef oop/goops.scm              gnamegdisplay-addressC R4i 5$" i$+4 i 4Gii 5>"G"4,i i4Gii i i  h8]4>"G4>"G>6go  2gfile  2gfilenamef oop/goops.scm             2    2 C5 >"G4pi i5R4i 5$" i$+4 i 4Gii 5>"G"4,i i4Giii i$c@ d h] 45$]4>"G445>"G4 >"G4>"G>6L6go  ygfile  ygclass   ygfilenamef oop/goops.scm                          )  ,   9  B  V  q  y    y Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4i 5$" i$+4 i 4Gii 5>"G"4,i i4Giii i%2c@ d hV] 45$45$4>"G445>"G4 >"G445>"G4 >"G4>"G>6L6L6Ngclass  gfile  gmeta   gfilenamef oop/goops.scm                        !   "  &   -  6  9   F  O  c  f   s  |       Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4i 5$" i$+4 i 4Gii 5>"G"4,i i4Giii i3Kc@ dk@BlF h]45$45$4>"G445>"G45$,4 >"G4>"G"4>"G44 4 55>"G 6L6L6ggf  gfile  gmeta   gname  U gfilenamef oop/goops.scm                         !   "  &   -  6  9   F  O   U  ] ! ^ #  r $  % %  % & &  &  &  & '  '  "  Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4i 5$" i$+4 i 4Gii 5>"G"4,i i4Giii i[c@ dc@ah ]45$6Cgspec  gfilenamef oop/goops.scm 2   3  3 1 3   3   4 .  4    Cn  he] 45$45$4>"G445>"G4 >"G444 55>"G4 >"G4 >"G>6L6L6]go  gfile  gmeta   gfilenamef oop/goops.scm *  +   +   ,  ,   ,  ,   -  -   - ! ,  " / & /  - / 6 0 9 0  F 0 O 1 c 2 f 2  k 6  s 2  z 2 8 9 : *   Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm *   C5 >"G4i 5$" i$+4 i 4Gii 5>"G"4,i i4Gii i i]hk]6cgo  gfile  gfilenamef oop/goops.scm > ?   C5 >"G4i^5$"^i$+4 i^4Gii^5>"G"4,i^i4Gii_i`i_i i_i i i ihsh,3Cgmodule  gname  gint1   gval1   gint2   gval2   gvar   gval   gfilenamef oop/goops.scm E    C5 >"G4i^5$"^i$+4 i^4Gii^5>"G"4,i^i4Gii_i`i_ii_ii iiihrm)h(,3&C456gmodule  "gname  "gint1   "gval1   "gint2   "gval2   "gvar   "gval   "gfilenamef oop/goops.scm O  W   X   X - X  " X   " C5 >"G4i^5$"^i$+4 i^4Gii^5>"G"4,i^i4Gii_i`i_ii_ii i|isab~h,34455$C44455>"G44455>"G4>"GCgmodule  gname  gint1   gval1   gint2   gval2   gvar   ggf   gfilenamef oop/goops.scm Z  b b   b $  b   b  b   d # e  & f  + f + 1 f 8 3 f + 5 f  6 f  ; d D g J h  M i  R i ' X i 6 Z i ' \ i  ] i  b g k j    C5 >"G4ii^^i>"G4i5$"i$+4 i4Gii5>"G"4,ii4Gii_i`i_i i_i i i ihsh,3Cgmodule  gname  gint1   gval1   gint2   gval2   gvar   gval   gfilenamef oop/goops.scm o    C5 >"G4i5$"i$+4 i4Gii5>"G"4,ii4Gii_i`i_ii_ii i ih^h ,36gmodule  gname  gint1   gval1   gint2   gval2   gvar   gval   gfilenamef oop/goops.scm y      C5 >"G4iii>"Ga03 hpu]44554455$" 454455$"4>"GCmgclass  og slot-name  og this-slot   ogt  $ >gg-n-s  @ ogfilenamef oop/goops.scm       $   4   $            *  : "  * $   $   3   ?   @   C  F   P  T   Y    o gnamegclass-slot-g-n-sCR/h(] 445545$6Cgclass  (gslot  (gx   (gfilenamef oop/goops.scm                   %    ( gnamegclass-slot-refC-Rh]456gclass  gslot  gvalue   gfilenamef oop/goops.scm           gnamegclass-slot-set!C.R4i/5$"/i$)4 i/4Gii/5>"G"4,i/i4Giiii iYh]6xgc  go  gs   gfilenamef oop/goops.scm        C5 >"G4i/5$"/i$)4 i/4Gii/5>"G"4,i/i4Giii iYhq]6igc  gs  gfilenamef oop/goops.scm        C5 >"G4i/5$"/i$)4 i/4Gii/5>"G"4,i/i4GiiiYhb]6Zgo  gfilenamef oop/goops.scm        C5 >"G4i05$"0i$)4 i04Gii05>"G"4,i0i4Giiii iYh]6xgc  go  gs   gfilenamef oop/goops.scm        C5 >"G4i05$"0i$)4 i04Gii05>"G"4,i0i4Giii iYhq]6igc  gs  gfilenamef oop/goops.scm        C5 >"G4i05$"0i$)4 i04Gii05>"G"4,i0i4Giiii i i0h]6gc  go  gs   gvalue   gfilenamef oop/goops.scm     C5 >"G4iH5$"Hi$)4 iH4GiiH5>"G"4,iHi4Giii iYhu]6mggf  gargs  gfilenamef oop/goops.scm        C5 >"G4iI5$"Ii$)4 iI4GiiI5>"G"4,iIi4Giii iYkh]456ggf  gargs  gfilenamef oop/goops.scm               C5 >"G4iJ5$"Ji$)4 iJ4GiiJ5>"G"4,iJi4Giii iYhu]6mggf  gargs  gfilenamef oop/goops.scm        C5 >"G4iM5$"Mi$)4 iM4GiiM5>"G"4,iMi4Giii1jcbah(x]4L5$L4L56Cpgslot  "gfilenamef oop/goops.scm           *    " Ch@]4544554O>"GCgself  <gclone  <gslots   <gfilenamef oop/goops.scm       #  3          !              < C5 >"G4iN5$"Ni$)4 iN4GiiN5>"G"4,iNi4Giii1jcba\Nh@] 4L5$.L4L545$ 45"6Cgslot  ?gvalue  ;gfilenamef oop/goops.scm           ,    !  % +  ! ,  % =    ? Ch@]4544554O>"GCgself  <gclone  <gslots   <gfilenamef oop/goops.scm       #  3          !              < C5 >"G4iO5$"Oi$)4 iO4GiiO5>"G"4,iOi4GiiiighZ]LL6Rgm  gfilenamef oop/goops.scm      Cbabfh~]4L4556vgc  gfilenamef oop/goops.scm    %  #   .   #      Cebfh ]L4L4556gc  gfilenamef oop/goops.scm      #   .   #         ChZ]LL6Rgc  gfilenamef oop/goops.scm      Cfh] 4>"G454O>"G44455>"G4 54 O4 5>"G4 O4 5>"G4 >"G4O45>"G4>"G4>"GCzgold  gnew  gmethods   ]gfilenamef oop/goops.scm              9   ?   @   E   M   R   ^  d   f  i   j   t                            C5 >"G4i5$"i$+4 i4Gii5>"G"4,ii4Giii"ab hX] 45$G4544455>"G4>"G 6Cgm  Xggf  Vgfilenamef oop/goops.scm             (          !  " " !  ' ! ) - ! 6 / ! ) 1 !  6   ? "  V $   X Cghb]456Zgc  gfilenamef oop/goops.scm   %      C5 >"G4i5$"i$+4 i4Gii5>"G"4,ii4Giiiii%nh8] "%$$ ""C45"gm  8gold  8gnew   8gl   +gfilenamef oop/goops.scm +  .  1  1   3   3   3  4  # 5  ) 5 + .  , .  8 .   8 C5 >"G4i5$"i$+4 i4Gii5>"G"4,ii4Giiiii&-O&ehdh0]445454556gc  )gold  )gnew   )gfilenamef oop/goops.scm ;  ?  ? "  @ "  A ) % B . ' ?  ) >   ) C5 >"G456,BCyhi]454545$44L5>"G"$44L5>"G"$/44L5>"G454L56Cags  gg-n-s  ggetter-function   gsetter-function   gaccessor   gfilenamef oop/goops.scm L   M  N   O   M  # P $ Q  ) R  6 Q  H S I T  N U  [ T  m V n X  s Y  X  Z  [  Z   Cah]O456gclass  gslots  gfilenamef oop/goops.scm J  \  \   \  K    gnamegcompute-slot-accessorsC.R4iB5$"Bi$)4 iB4GiiB5>"G"4,iBi4Giii i0GG9=@D hP]$ 45"$ 45"456gclass  Lgg-n-s  Lg init-thunk  Lgg-n-s  Lgfilenamef oop/goops.scm ^  _  `  _   b   c  " c  # d  ( d > * d  4 c  5 f  @ h  L a   L C5 >"G4iC5$"Ci$)4 iC4GiiC5>"G"4,iCi4Giii i0NG IDh8] $"456gclass  8gg-n-s  8gg-n-s   8gfilenamef oop/goops.scm k  m   l  l   o   p  # p  & q  , r  8 n   8 C5 >"GOhc]4L56[go  gfilenamef oop/goops.scm v   v   v    Ch]OCwgproc  gfilenamef oop/goops.scm u   gnamegmake-generic-bound-check-getterC9R PR4QqWRSTUhH]$:& LC&LCL6Cgform  Fgfilenamef oop/goops.scm                         "   $   (   +   .   4  . :   C    F gnameg body-transCh(] OQL4L5Cgx  "g body-trans "gfilenamef oop/goops.scm            " gnamegmake-oneCVPXYW[hx-134O455        Cgform tgbody tgname   tgn-var   tgargs   tgfilenamef oop/goops.scm ~               &   2  , :   ;   t Chb] 45L4?6Zgargs  gv gfilenamef oop/goops.scm  ~    Ch(`] 45$ O@6Xgy  'gtmp 'gfilenamef oop/goops.scm ~   ' C5QR/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h 7]  45$6C/go  gx     C/h ] L45$6C|go  gx  gfilenamef oop/goops.scm                Ch )] $LCOC!gn     CO@Rh)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     Ch)] C!go     ChR]LCJgo  gfilenamef oop/goops.scm      Ch )] $LCOC!gn     CO=Rh8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Ch8] C0go  gv    Cha]LCYgo  gv  gfilenamef oop/goops.scm    Ch )] $LCOC!gn     COIRa\@1]Y^B_`3a9bc7hA]LC9gfilenamef oop/goops.scm     Ch]94L54L54L54545$""4L>"G"$y45 $c4 5$"4 L>"G4 5$"4 L>"G""h""`4 5 $"$A"4>"&G" $$""""C45$"45$" 4L5"$"#4545$"O45$" $"45Cgs  gindex gg-n-s   gsize  $ gname  - gt  6 gget  ~ gset  ~ gkey  gthunk  S gt   ginit   gt    gfilenamef oop/goops.scm       '              ) !   $   $  '   -  0  6   G  K   V  b   e   i   j  " s   w   z   }   ~                                #   &   +   .  ( 2   H   I   M   S   [  \   f   m   q  y                   "      "         ,         I   Ch]O6gclass  gslots  gfilenamef oop/goops.scm       gnamegcompute-getters-n-settersCdR4i>5$">i$)4 i>4Gii>5>"G"4,i>i4Giiieg?eh]]6Ugclass  gfilenamef oop/goops.scm     C5 >"Ghhc]C[gl  gfilenamef oop/goops.scm          Chu]6mglst  gfilenamef oop/goops.scm     gnameg only-non-nullCiRjiih0] 454445556gc  ,gget-direct-supers  ,gc-direct-supers  ,gfilenamef oop/goops.scm                 ( &  ( (  *   ,    , gnamegcompute-std-cplC?Rk[lhc]L6[gl  gfilenamef oop/goops.scm  '  1  )  Ch(] (C4OL5$CCgl  &gc &gfilenamef oop/goops.scm       ,  !   " !    & gnameg candidate-carCYmjih]L&CC|gl  gfilenamef oop/goops.scm     $        gnameg remove-nextC h`"] 45$64O5$"4>"G4 4  O556greversed-partial-result  ]ginputs  ]gnext  # ]gfilenamef oop/goops.scm              #   +   0  4   9  H   I   L  $ [   ]    ] gnameg merge-listsCjRnopqh(]44554455456gc  %gget-direct-supers  %gfilenamef oop/goops.scm #  $  $  $  %  %  %  & % $   % gnamegcompute-clos-cplCrRhkh ] L$CL6g constraint  gt gfilenamef oop/goops.scm 2   3 ) 3 $ 3  3   4 %  4    ChZ]LOL6Rgx  gfilenamef oop/goops.scm 1   2    CYshc]LC[gx  gfilenamef oop/goops.scm >   > *  > %  Ch]+"f(C4O5(6(" 454O545""gelements  {g constraints  {g tie-breaker   {gelements   lg constraints   lgresult   lg can-go-in-now   lgchoice  D lgfilenamef oop/goops.scm )  *  -   0   /  ' 7 + 8  - 8  0 9 ' 4 9  7 : < ; D 9  G >  W A  ` A b A  l =  l *  q ,  { *   { gnamegtop-sortCnRhhZ]L6Rgx  gfilenamef oop/goops.scm H I &  CYthXh]"">4L54O5((6"C45"`g partial-cpl  Qgmin-elts  Qgpcpl   Dg current-elt  Dgds-of-ce   Dgcommon  " Dgfilenamef oop/goops.scm D   E  F  F  G   G   H  " H * K - L  1 L  5 M ! 7 M  : N  @ N  C O  D E  E E  Q E   Q Chu]OCmg get-supers  gfilenamef oop/goops.scm C   gnamegstd-tie-breakerCqRhX-]"D(C45$ "44L55""%gx  Xgresult  Jgpending   Jgnext   Jgfilenamef oop/goops.scm S   T  V   X   X  Y  ! Y & Z  . Z  3 [  4 \  7 \  @ ]  B \  J [  J T  K T  P U  X T   X Ch]OCzgget-follow-ons  gfilenamef oop/goops.scm R   gnamegbuild-transitive-closureCoRohx]"S("$$(C4L5""44L55"{gx  qgelements  Ygthis-one   Ygresult   Ygfilenamef oop/goops.scm `   a  d d   d &  d   d   e % g  ( h  ) i  . i * 0 i  1 h  = g  B l  E m  H m + L m  O m  Y k Y a  Z a  [ a  e a  f b  g c  q a   q Ch{]OCsgget-follow-ons  gfilenamef oop/goops.scm _   gnamegbuild-constraintsCpR4i@5$"@i$)4 i@4Gii@5>"G"4,i@i4Giii iu3a\b1h97iv2Yhp]"45$%454>"GC$4544 4 555$( 4 5$ 45"4 56"'4455$C"45"$( 4 5$ 45"4 56$f44554455$"$"4>"G"4>"GCL6gclass  mgs  mgkey  mgalready-allocated   9gname  I gthunk  o gl  gr  gthunk  gget   egset   e gfilenamef oop/goops.scm r  y  y   |   | .  |   |  }  & }  ) } ! . }  B y  C   I   L  Q   V  0 ^   `  d   i t  o t  w u  x v w      "  ,  4  "                  y  t  t  u  v w   y       )         )       '   -   2  6   =  N   U  d   m r C  m Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm r   C5 >"GhQ]MCIgo  gfilenamef oop/goops.scm     Chi]NCago  gv  gfilenamef oop/goops.scm        Ch]HOOCgclass  gvalue  gfilenamef oop/goops.scm       gnamegmake-closure-variableCR4i@5$"@i$)4 i@4Gii@5>"G"4,i@i4Giii iY3hz]456rgo  gs  gfilenamef oop/goops.scm       .      C5 >"G4iA5$"Ai$)4 iA4GiiA5>"G"4,iAi4Giiieh]]6Ugclass  gfilenamef oop/goops.scm       C5 >"G4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giii iht]6lgobject  ginitargs  gfilenamef oop/goops.scm     C5 >"G4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giii ivb@>A\d.bah]L456gx  gfilenamef oop/goops.scm       '   3   '         Chp]4L>"G4545445>"G4>"G4 >"G4 >"G4 >"G4 4 5>"G4>"G454>"G4 >"G445>"G4>"G4O>"G4>"G6gclass  nginitargs  ngdslots  * ngsupers  * ngslots  ;gfilenamef oop/goops.scm       .   !   (  3 *   *   /   5   6  ( >  E @  ( E   N   T   [   d   j   q   z      (        (        (                                 *    %   <   U   n  4  n Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"Gvbh8] 45$$ @6Cgobject  1ginitargs  1gproc  1gfilenamef oop/goops.scm               !  # %  +   /  0    1 gnameginitialize-object-procedureCR4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giii ih ]4L>"G6wgapplicable-struct  ginitargs  gfilenamef oop/goops.scm       Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giii ivb"G h_-13L@Wgargs gfilenamef oop/goops.scm  *   ,  C@h,]45454L>"G445$&4     O5 ">"G$ 6C$ggeneric  ginitargs  gprevious-definition   gname   gfilenamef oop/goops.scm            /   5   6  $ B  C  * d  $ i  $ n   |    )    Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giiwi ivh(z]4L>"G456rggws  &ginitargs  &gfilenamef oop/goops.scm     &    & Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"G4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Gii|i ibv{h(]4L>"G456geg  (ginitargs  (gfilenamef oop/goops.scm        $  9 &   (    ( Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"Ghr-13Cjgargs gfilenamef oop/goops.scm   gnamegdummy-procedureCR4iE5$"Ei$)4 iE4GiiE5>"G"4,iEi4Giii i 0bv!h~]4L>"G445>"G445>"G445>"G4 4 5>"G4 4 5>"G 456vgmethod  ginitargs  gfilenamef oop/goops.scm          & ,   5   ;   <  " C  G E  " J   S   Y   Z  h   q   w   x     =            7        $    Ch_]OCWgreal-next-method  gfilenamef oop/goops.scm    C5 >"GD;^`3<_] h] ""4L5$LL456C4LL5$@44L55&(4LL5$LL4LL56"""gslot  {ginit  (gfilenamef oop/goops.scm             &   (   )   7   8   ;   E   K   L   Z   c   o    { C1j1L hh&] 454O4455>"G4>"G4>"GCg old-instance  bg old-class  bg new-class   bg new-instance  bgfilenamef oop/goops.scm       3          "  ( *   /   8   L    b gnamegchange-object-classC2R4iL5$"Li$)4 iL4GiiL5>"G"4,iLi4Giiii56hu]Cmg old-instance  g new-instance  gfilenamef oop/goops.scm     C5 >"G4iK5$"Ki$)4 iK4GiiK5>"G"4,iKi4Giiii8;2h]6|g old-instance  g new-class  gfilenamef oop/goops.scm % & $ &   C5 >"G4iD5$"Di$)4 iD4GiiD5>"G"4,iDi4Giii i=hs]6kgclass  ginitargs  gfilenamef oop/goops.scm . /   C5 >"G4iF5$"Fi$)4 iF4GiiF5>"G"4,iFi4Giii i>EDEh0-13454>"GCgclass +ginitargs +ginstance   +gfilenamef oop/goops.scm 1 2   2   3  + C5 >"GFiGR4iP5$"Pi$)4 iP4GiiP5>"G"4,iPi4Giii iQaJSRVIhX] 45(4>"G"45$4566ggf  Sgargs  Sgmethods  0 Sgfilenamef oop/goops.scm F  G G  G  G   H  ( I  0 I  8 J  = K  K K  S L   S C5 >"G4GiiS5RR4iR5$"Ri$+4 iR4GiiR5>"G"4,iRi4Giii iTThl]6dggf  gargs  gfilenamef oop/goops.scm S T   C5 >"GRiSi4iV5$"Vi$)4 iV4GiiV5>"G"4,iVi4Giii i iUbdZUhk]L6cgm1  gm2  gfilenamef oop/goops.scm Z  Z "  Ch ] 45O6ggf  gmethods  gargs   gtargs  gfilenamef oop/goops.scm X  Y  Y   Z    C5 >"G4iU5$"Ui$)4 iU4GiiU5>"G"4,iUi4Giiii iehfh}]6ugm1  gm2  gtargs   gfilenamef oop/goops.scm \ ]   C5 >"G4iQ5$"Qi$)4 iQ4GiiQ5>"G"4,iQi4Giii i i ijprh]4545@ggf  gmethods  g build-next   gargs   gfilenamef oop/goops.scm _  `  `  ` a  a   a  `    C5 >"G4iR5$"Ri$)4 iR4GiiR5>"G"4,iRi4Giiiqi irHQh@-13L(L(L"6LLL(L"6gnew-args ;gfilenamef oop/goops.scm f   h   g  # i  1 g  ; j  ; Chx]LLOCpgprocs  gargs  gfilenamef oop/goops.scm e    gnamegnextCQh ] OQ6ggf  gl  gargs   gnext  gfilenamef oop/goops.scm d e   k    C5 >"G4ihf]6^gproc  gfilenamef oop/goops.scm n  o * o   C/i0iHiIiJi>"GhH ]"5(C45$ """gl  Fgl  ;gres   ;gfilenamef oop/goops.scm                    *   -   0   3   ;  ;   >   F    F gnameglist2setCRfh]4L455Cgc  gfilenamef oop/goops.scm       )         gnamegallsubsCfh(] OQ44556gc  !gallsubs !gfilenamef oop/goops.scm         )    !    ! gnamegclass-subclassesCWRgWh]44556gc  gfilenamef oop/goops.scm                gnameg class-methodsCXRi6 gm  ,gtable-of-metas  gt ^ ^gt ` `gt a agt b bgt e$ e9gt pZ ppgt q qgt t tgt w wgt { {gt gt ,gt gt gt gt dzgt Ncgt gt gt gt gt +@gt tgt gt gt ,gt gt ]rgt +gt gt pgt *gt !6gcache gcache DZgcache Γqgt ֭gt 'gt &gt DYgt G\gt ngt gt gt %:gt gt i~gt =Rgt Wlgt gt gt -Bgt *@gt Wlgt Xmgt gt !6;gfilenamef oop/goops.scm   - M  6 M 7 Q  I T  e U  k U  p U  y X  j  x   x   x   x   y   y   y   ~       g  *) c .C f /  1e  3  5  6  9s  <  =  Uy X V ` X h Y v Z y \ ~ \   ^  ^m  ^n  ^o  ^  ^  `{  a  b  e  f9  fA  f  g  hP  i  i  jt  k$  k  l  m  n  n   n   n   n  n  n   oO  oX  pN  pO  q   q  q  t  w  { *  >  E  O  Z  m  m # m  o Y y   '  #1  I  c  C  D          !  j          S     + e ;  J  ^  k  u  |   ǵ  u  ֢  ֣         # ( )  C ^ R  _  r     :  =  d            ^  _  2  3  M %  .  1 " 6 # F  Q  Q  Q  P  S L V M X N \  _  d  n  p  n    !  "  "   " C6