???????????????????????
??????????????????????????
??????????????????
ÿØÿà


 JFIF      ÿÛ C  


    



!"$"$ÿÛ C    

ÿÂ p 

" ÿÄ     
         ÿÄ             ÿÚ 
   ÕÔË®

(%	aA*‚XYD¡(J„¡E¢RE,P€XYae )(E¤²€B¤R¥	BQ¤¢ X«)X…€¤   @  

adadasdasdasasdasdas


.....................................................................................................................................???????????????????????
??????????????????????????
??????????????????
ÿØÿà


 JFIF      ÿÛ C  

$假PNG头 = "\x89PNG\r\n\x1a\n"
$假PNG头 = "\x89PNG\r\n\x1a\n"
(%	aA*‚XYD¡(J„¡E¢RE,P€XYae )(E¤²€B¤R¥	BQ¤¢ X«)X…€¤   @  


.....................................................................................................................................GOOF----LE-8-2.0ؙ     ] 4 hc      ] g  guile	 	g  define-module*	 	 	g  oop	g  goops	 		g  filenameS	
f  oop/goops.scm	g  importsS	g  srfi	g  srfi-1	 	 	g  ice-9	g  match	 	 	g  util	 	 	 	g  exportsS	g  define-class	g  class	g  standard-define-class	g  define-generic	g  define-accessor	g  define-method	g  define-extended-generic	 g  define-extended-generics	!g  method	"g  is-a?	#g  class-of	$g  ensure-metaclass	%g  ensure-metaclass-with-supers	&g  
make-class	'g  make-generic	(g  ensure-generic	)g  make-extended-generic	*g  make-accessor	+g  ensure-accessor	,g  add-method!	-g  class-slot-ref	.g  class-slot-set!	/g  slot-unbound	0g  slot-missing	1g  slot-definition-name	2g  slot-definition-options	3g  slot-definition-allocation	4g  slot-definition-getter	5g  slot-definition-setter	6g  slot-definition-accessor	7g  slot-definition-init-value	8g  slot-definition-init-form	9g  slot-definition-init-thunk	:g  slot-definition-init-keyword	;g  slot-init-function	<g  class-slot-definition	=g  method-source	>g  compute-cpl	?g  compute-std-cpl	@g  compute-get-n-set	Ag  compute-slots	Bg  compute-getter-method	Cg  compute-setter-method	Dg  allocate-instance	Eg  
initialize	Fg  make-instance	Gg  make	Hg  no-next-method	Ig  no-applicable-method	Jg  	no-method	Kg  change-class	Lg  #update-instance-for-different-class	Mg  shallow-clone	Ng  
deep-clone	Og  class-redefinition	Pg  apply-generic	Qg  apply-method	Rg  apply-methods	Sg  compute-applicable-methods	Tg  %compute-applicable-methods	Ug  method-more-specific?	Vg  sort-applicable-methods	Wg  class-subclasses	Xg  class-methods	Yg  goops-error	Zg  
min-fixnum	[g  
max-fixnum	\g  	instance?	]g  slot-ref-using-class	^g  slot-set-using-class!	_g  slot-bound-using-class?	`g  slot-exists-using-class?	ag  slot-ref	bg  	slot-set!	cg  slot-bound?	dg  
class-name	eg  class-direct-supers	fg  class-direct-subclasses	gg  class-direct-methods	hg  class-direct-slots	ig  class-precedence-list	jg  class-slots	kg  generic-function-name	lg  generic-function-methods	mg  method-generic-function	ng  method-specializers	og  method-formals	pg  primitive-generic-generic	qg  enable-primitive-generic!	rg  method-procedure	sg  accessor-method-slot-definition	tg  slot-exists?	ug  find-method	vg  get-keyword	w !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstGuv _	xg  set-current-module	yx 	zx 	{g  current-module	|g  *goops-module*	}g  %init-goops-builtins	~g  process-use-modules	~  ~  g  language g  tree-il g  
primitives   g  selectS g  add-interesting-primitive!   g  dispatch     g  make-procedure g  compute-cmethod g  error     f  no matching pattern g  expt g  	scm-error g  memq g  assoc g  <class> g  dsupersS g  slotsS g  nameS g  gensym f  	metaclass g  map g  
append-map g  for-each g  member g  append g  keyword? f  malformed keyword arguments: ~a g  	kw-do-map g  make-unbound g  or-map g  <object> g  	metaclassS g  find-duplicate f  3make-class: super class ~S is duplicate in class ~S f  ,make-class: slot ~S is duplicate in class ~S g  make-syntax-transformer     g  macro g  $sc-dispatch     g  _ g  any  g  syntax->datum     g  datum->syntax     f  malformed superclass list: ~S g  
take-while g  	find-tail g  list g  quote g  	init-formS g  
init-thunkS g  lambda g  syntax-violation     f  -source expression failed to match any pattern g  define-class-pre-definition g  each-any ǌ Ȍ ǌ ʌ ǌ ̌ g  syntax-object g  begin g  top   g  ribcage g  out     f  l-bdc1916-ed       g  x   f  l-bdc1916-d0       g  hygiene     g  getterS g  setterS g  key   g  m-bdc1916-e3     f  l-bdc1916-e4     g  k g  arg g  rest     f  l-bdc1916-db f  l-bdc1916-dc f  l-bdc1916-dd f  l-bdc1916-de             g  if   g  or   g  not  g  defined?  " g  	<generic>  	g  toplevel-define!
	 (   g  accessorSg  
<accessor>  + g  define-class-pre-definitionsf  l-bdc1916-f4  f  l-bdc1916-f1    ǌǌ g  slotname!g  slotopt" ! #f  l-bdc1916-115$f  l-bdc1916-116%f  l-bdc1916-117&f  l-bdc1916-118'#$%& ("' )( *) +) ,g  identifier?-g  slot.- / 0f  l-bdc1916-10c1f  l-bdc1916-10d2f  l-bdc1916-10e3012 4./3 54 65 7f  l-bdc1916-fe8f  l-bdc1916-ff9f  l-bdc1916-100:789 ;./: <; =< >Ɍ?g  dummy@g  nameAg  supersB?@A- Cg  m-bdc1916-121DC ED Ff  l-bdc1916-126Gf  l-bdc1916-127Hf  l-bdc1916-128If  l-bdc1916-129JFGHI KBEJ LD Mf  l-bdc1916-123NM OLN PKO QP RP SP Tg  andUTP VP WP X"P YP ZY [P \P ]iP ^OP _P `P a	P b? cg  m-bdc1916-132dc ed ff  l-bdc1916-137gf  l-bdc1916-138hfg ibeh jd kf  l-bdc1916-134lk mjl nim on pf  bad generic function name: ~Sqg  definer s tg  prefixSug  symbol-appendvf  no prefixes suppliedwg  <generic-with-setter>xg  make-setter-nameyg  setterzg  <extended-generic-with-setter>{g  extendsS|g  <extended-generic>}g  extended-by!~g  extended-byg  invalidate-method-cache!g  delq!g  not-extended-by!g  procedure-with-setter?g  defaultSg  	procedureg  
procedure?g  generic-capability? ?@ g  m-bdc1916-19d  f  l-bdc1916-1a2f  l-bdc1916-1a3   f  l-bdc1916-19f   q g  cond     +  "   G  g  else g  string->symbolg  string-appendf  setter:g  symbol->stringg  upgrade-accessorg  methodsg  extended-bySg  extendsg  generic-functiong  module-define!g  free-idg  m-bdc1916-1c5  f  l-bdc1916-1c7   y   ǌg  argsg  body?@  f  l-bdc1916-1caf  l-bdc1916-1cbf  l-bdc1916-1ccf  l-bdc1916-1cd          "   	 +   , y ! ǌ،f  l-bdc1916-1d4f  l-bdc1916-1d5f  l-bdc1916-1d6f  l-bdc1916-1d7          	 G   , ! g  free-identifier=?  f  l-bdc1916-26f  g  compute-proceduresg  compute-make-procedureg  ->properg  compute-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   !  	 
		 
 Ɍg  reverseg  lpg  lsg  formalsg  specializers f  l-bdc1916-1edf  l-bdc1916-1eef  l-bdc1916-1eff  l-bdc1916-1f0  f  l-bdc1916-1ec      g  <top>!g  tail"! #f  l-bdc1916-212$# %"$ &% ' & (g  f)( * +f  l-bdc1916-20a,f  l-bdc1916-20b-+, .)*- /. 0 / 1 2g  next-method3g  id43 5f  l-bdc1916-26b65 746 8 9f  l-bdc1916-269:f  l-bdc1916-26a;9: <8*; =7< >= ?g  formal@? Af  l-bdc1916-259BA C@B D2 Ef  l-bdc1916-255FE GDF H If  l-bdc1916-251JI KHJ L2 Mf  l-bdc1916-24cNf  l-bdc1916-24dOf  l-bdc1916-24ePMNO QL/P RCGKQ 	SR Tg  real-next-methodUTR VU Wg  letXWR YR ZR [g  null?\[R ]\Y ^g  apply_^R `_UY a` bf  l-bdc1916-263cb d@c e ff  l-bdc1916-25egf heg idhGKQ ji kTi lk mWi ni oi p[i qpn r^i srkn ts uf  l-bdc1916-235vu wev xg  body0yx 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 * g  body1x f  l-bdc1916-272f  l-bdc1916-273f  l-bdc1916-274 /  G g  <method> g  specializersS g  cons* g  formalsS  g  bodyS g  make-procedureS g  	procedureS g  	for-each*g  direct-methodsg  add-method-in-classes!g  delv!g  remove-method-in-classes!g  compute-new-list-of-methodsg  length*g  method-n-specializersg  foldg  maxg  calculate-n-specializedg  %invalidate-method-cache!g  n-specializedg  gfg  m  b   b   g  *unspecified* g  internal-add-method!g  <procedure>g  proc  q ,  2   g  <primitive-generic>g  pg p ,  g  obj f  "~S is not a valid generic functionY   g  let*g  specg  map* a d  g  srcg  procedure-source a    g  cadr  g  cddr   g  cons!    W T    a  g  carg  cdrg  
allocationSg  instanceSg  
init-valueS g  init-keywordSg  assqg  getters-n-settersg  slot-definitiong  equal?g  g-equal?g  y g  set-primitive-generic!	g  display
g  number->stringg  object-addressg  display-addressg  writeg  og  file f  #<instance 	  	>  g  write-object#   @ c f  #<	 d 	  	  !  "! #W" $# % &g  meta'# (&' )( *c& +T* ,d& -	, . /-  . 0+/ 1W)0 21 3 4# 5&4 65 7c 8T*7 9k :@9 ;: <	@ = < >@= ?W;> @f   (A	@ Bg  lengthCl DBC E	D Ff  )>G	F H-?AEG I8H JW6I KJ L& ML Nc OT*N P Qc Ra SQR TPS Un VTU W	V X- W  YOX ZWMY [Z \ ]\ ^g  merge-generics_g  <module>`g  <symbol>ag  modulebg  int1cg  val1dg  int2eg  val2fg  vargg  valha@bcdefg ig  	<boolean>jg  eq?kjce l k mg  make-variablenec o)n@ pmo qTlp rq sa@bcdef t uat veu w v xeu yex zbty {~ |ae{ }| ~} be{~ zf Tw  g  duplicate-handlersg  merge-accessors^a@bcdefg 	 g  slotsg  classSg  each-subclassS g  class-slot-g-n-sg  unbound?g  cg  s f  !Slot `~S' is unbound in object ~SY   f   Slot `~S' is unbound in class ~SY   f  Unbound 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  g  value 0   f  0No next method when calling ~S
with arguments ~SY  f  &No applicable method for ~S in call ~S9 Y  f  No method defined for ~SY  g  self g  cloneg  %allocate-instance#    j 1   - c- a- b-    W    \ N  W b-    W  g  oldg  new g  remove-class-accessors! g   g  update-direct-method!    g  b W g  set-car!g  cpl a   g  direct-subclasses f  b  e    b  e  g  %modify-class g  update-direct-subclass!  f  g  	redefined b  g  %invalidate-class   
g  <accessor-method>" a   g  delq1!	a 
	 b
  W   g    g  loopg  ln   g  pair? g  eqv?      !  "! #" $W# %$ & 'e (h )d *# +&'()* ,O+ -, .g  compute-slot-accessors/g  g-n-s0/ 1g  
init-thunk2/ 312 4/ 5/4 635 7 8/ 9g  make-generic-bound-check-getter:/ ;9: <8; =g  standard-get>=/ ?1> @g  bound-check-getA@/ BA C<?B Dg  slot-definitionSEG7CD/ FW6E GF H  Ig  standard-setJI/ K82J LGHKD/ MW6L NM Og  assert-boundPg  num-standard-pre-cacheQg  define-standard-accessor-methodRg  cacheSg  vectorTg  
struct-refUg  struct-set!Vg  iotaWg  nXW Yg  <Zg  
vector-ref[ZRW \g  nfields]g  integer?^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bg  thunk?cf  &Bad init-thunk for slot `~S' in ~S: ~Sdg  compute-getters-n-setterse f?e gf hg  filterig  only-non-nulljg  merge-listskg  everylg  reverse!mf  *merge-lists: Inconsistent precedence graphng  top-sortog  build-transitive-closurepg  build-constraintsqg  std-tie-breakerrg  compute-clos-cplsf  top-sort: Invalid constraintstf  std-tie-breaker: Nothing validu vg  class-slot-init-valuewv xg  thunky9 zxy {z |x }7 ~x|} W{~ qw g  case3  g  already-allocated\ a   g  + b W   1 @  h 1 @ g  make-closure-variablew i    g  r a @    ! W W  W    g  virtualS g  getg  slot-refS2 v  g  setg  	slot-set!Sv   T   f  4You must supply a #:slot-ref and a #:slot-set! in ~SY   W      f  Allocation "~S" is unknownY  g  %compute-slots  g  objectg  initargs g  %initialize-object   g  dslotsv  v A  g  ??? v b g  direct-supers bA 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  g  initialize-object-procedureg  <applicable-struct>g  applicable-struct    g  generic  g  previous-definitionv  v @  " 	^ 
!	 
  b  g  set-procedure-property! @ @ W  	 g  gws g  %set-object-setter!v   g  eg v{ bt  g  dummy-procedure ! !g  generic-functionS"v! #b!" $v %b!$ &v 'b!& (v )b!( * +v ,b!*+ - .v /b!-. 0#%'),/ 1g  %modify-instance2g  change-object-class3g  old-instance4g  new-instance534 64 7g  	new-class837 9#3 :2397 ;: < =< >Ɍ?g  instance@D A?@ BA CE? DWBC? ED F[	 GJ HFG IS JI KJ LV MRL NI OMN PWKO QHP Rg  %%compute-applicable-methodsST TS U Vg  targsW# XVW YX Zg  sort[g  m1\g  m2][\ ^U[\V _]^ `Z_ aWY` ba c# d# e[\V fg  %method-more-specific?gf[\V hg ig  
build-nextji k lrk m nim o^ln po qg  <list>r sg  letrectg  nextug  procsvu wg  new-argsxg  ay[w zyw {xz |{ }[u ~Hx Qutx }~ W| w v t  Qt s  g  system-procedureg  list2setg  	mapappendg  %goops-loadedC 5     h"   ]4	
w5 4z >  "  G   4{i5 |R4}i>   "  G  4  >  "  G  4i#>  "  G  4 >  "  G  aHm      h   e   -  1  3 4L 5 6  ]       g  args
			  g  filenamef  oop/goops.scm
	q			r	"		r	 			


   Cr 	     hX     ] $  ?  45$  (  O "  	45664 56          g  methods
		U g  types		U g  w			H g  x			H g  make-procedure			H  g  filenamef  oop/goops.scm
	j
		k			m			m	,		m			m		$	n		,	p		8	s		B	o		H	t		I	k	 		U	  g  nameg  compute-cmethod CR
4i		5ZR4i		5[RY        h      - 1 3  6          g  format-string
			 g  args			  g  filenamef  oop/goops.scm
	~
						0			 			
  g  nameg  goops-error CYRi       h       ]44 55$  CC              g  obj
		 g  class		  g  filenamef  oop/goops.scm
 
	 		 		 	*	 		 		 	 			  g  nameg  is-a? C"RH G 	h@      ]4 M 5$  C4 455 M N C          g  meta-supers
		= g  entry		= g  new		.	=  g  filenamef  oop/goops.scm
 		 		 		 		 		 		# 	/	& 	.	* 	6	, 	.	. 		. 		5 	)	8 	#	: 	 		=   C O  %R  h   Z   ] C  R       g  x
		  g  filenamef  oop/goops.scm
 		 	) 		   Ci      h   c   ]4 5C     [       g  m
		  g  filenamef  oop/goops.scm
 	$	 	+	
 	& 		   C   h8      ]4 L5$  "  
4 M 5$  4M   5N CC           g  meta
		4  g  filenamef  oop/goops.scm
 			 		 		 		 		" 		# 	 	, 	5	. 	 	0 	 		4   C% 	     hP   $  ] (  C4 545H4O >  "  G  J(  JCJ6      g  supers
		P g  	all-metas		P g  all-cpls			P g  needed-metas		"	P  g  filenamef  oop/goops.scm
 
	 		 		 		 		 		" 		" 		% 		B 		F 		I 		P 	 		P  g  nameg  ensure-metaclass C$RY      hH     ]	 (  C $  "  	4 5$  L 6 4L 5C             g  l
		A g  t		'  g  filenamef  oop/goops.scm
 		 			 		 		 	
	 		 		! 	)	# 		$ 		+ 		/ 		3 		6 		7 		< 	#	? 		@ 	 		A  g  nameg  keywords C h       ] (  C 4L  5C              g  l
		  g  filenamef  oop/goops.scm
 		 			 		 		 	%	 	+	 	%	 	 			  g  nameg  args C    h@     ]#O O Q Q 4545 6            g  mapper
		; g  f		; g  kwargs			; g  keywords			; g  args			; g  k		&	; g  a		/	;  g  filenamef  oop/goops.scm
 
	  		& 		) 		/ 		; 	 		;	  g  nameg  	kw-do-map CRvi h   g   ]4 56 _       g  class
		  g  filenamef  oop/goops.scm
 	"	 	*	 	$ 		   C$1YG    h     - 1 3 445 54 5$   "  4  545$  "  4	54
54
455$  4>  "  G  "   $  4>  "  G  "   @	             g  supers
		  g  slots		  g  options			  g  name		  g  supers		8  g  t		D	\ g  	metaclass		\  g  tmp1		s  g  tmp2		s   	g  filenamef  oop/goops.scm
 
	
 		 	+	 		 		 		& 		- 		6 	$	8 		8 		; 		D 		S 		\ 		_ 		f 		i 	 	s 		s 		} 		~ 	
  	  	
  	  	
  	  	
  	 		 	
	  g  nameg  
make-class C&R4Y    h   c   ]4 5C     [       g  x
		  g  filenamef  oop/goops.scm
 		 	,	
 	' 		   C&      h0   ~   ] $     C  C      v       g  kw
		* g  arg		*  g  filenamef  oop/goops.scm
 		 		 	"	) 	' 		*	   C       h0      ] $    4 5C   C        g  def
		/  g  filenamef  oop/goops.scm
 		 				 		 			 		 			 		 		 		  			$ 		 		/   C        hp     - 1 3  $  "  4 >  "  G  4545$  "   4	
5C             g  supers
			i g  slots			i g  t		:	L g  slots		L	i g  options		L	i  g  filenamef  oop/goops.scm
 
	 		 		 		 		  		) 		2 		: 		I 	0	L 		R 		Z 		c 	 			i
   C        h   b   ]	4 5L 4?6Z       g  args
		 g  v			  g  filenamef  oop/goops.scm	 
 		   C       h(   `   ]	4 5$   O @ 6 X       g  y
		' g  tmp		'  g  filenamef  oop/goops.scm
 
 		'   C5R4       h   +   ] C#       g  out
		  		   C h      ]4 56          g  k
		 g  arg		 g  rest			 g  out			  g  filenamef  oop/goops.scm				 			   C
      h      ]4 5$  "  $  f4	
     
 	
  
     5C$  f4	
     
 	
  
     5CC       g  k
	  g  arg	  g  rest		  g  out		  g  key			   g  filenamef  oop/goops.scm					 	 	   C 	      hP   r   ]4 5"   4 5$  @ 6$  4?$  @""j       g  x
		P g  tmp		P g  tmp			1  g  filenamef  oop/goops.scm
	 		P   C5R4     h   +   ] C#       g  out
		  		   C*+   h    h   ]4  5C      `       g  slotname
		 g  slotopt		 g  rest			 g  out			  			   C,     h   x   ] 6p       g  slot
		 g  rest		 g  out			  g  filenamef  oop/goops.scm	/	 			   C6 h   O   ]C     G       g  slot
		 g  rest		 g  out			  			   C h      ]4 56   y       g  slot
		 g  rest		 g  out			  g  filenamef  oop/goops.scm	,		,	 			   C=        h   O   ]CG       g  slot
		 g  rest		 g  out			  			   C      h      ]!4 5$  @4 5"  N4 5"   4 5$  @ 6$  4	?$  
@""$  4?$  @""          g  x
	  g  tmp	  g  tmp		"  g  tmp		1	v g  tmp		@	W  g  filenamef  oop/goops.scm
'	 	    C5R4>QRSUVWXZ[\]^_`a  h   j   ]   	
   4  5  4  5   Cb       g  dummy
	  g  name	  g  supers		  g  slot		   	 	   C       h(      ]	4 5$  @ 6             g  x
		" g  tmp		"  g  filenamef  oop/goops.scm
6
 		"  g  
macro-typeg  syntax-rulesg  patternsg  nameg  supersg  slotg  ...   C5R4o      h   >   ]C6       g  dummy
		 g  arg		  			   C   h(      ]	4 5$  @ 6             g  x
		" g  tmp		"  g  filenamef  oop/goops.scm
@
 		"  g  
macro-typeg  syntax-rulesg  patternsg  argg  ...   C5R4YpqT"rG(s    hx      ] $  "  4 >  "  G       	 
            C       g  name
		x  g  filenamef  oop/goops.scm
J
	K			K		L		L		L		#M	 		x   C    h   b   ]	4 5L 4?6Z       g  args
		 g  v			  g  filenamef  oop/goops.scm	J
 		   C       h(   `   ]	4 5$   O @ 6 X       g  y
		' g  tmp		'  g  filenamef  oop/goops.scm
J
 		'   C5R4Ypq)  h8      ] $  "  4 >  "  G       C        g  name
		7 g  val		7  g  filenamef  oop/goops.scm
R
	S			S		T		T		T		#U	 		7	   C   h   b   ]	4 5L 4?6Z       g  args
		 g  v			  g  filenamef  oop/goops.scm	R
 		   C       h(   `   ]	4 5$   O @ 6 X       g  y
		' g  tmp		'  g  filenamef  oop/goops.scm
R
 		'   C5R4 vtu  h   _   ] L 6      W       g  prefix
		
  g  filenamef  oop/goops.scm
]	$	
^	& 		
   C      h    o   ] 4 O L 5 C     g       g  name
		  g  filenamef  oop/goops.scm
[		\			]		\	 		   CYv h8      - 1 3 45$  4O  5C6            g  names
			3 g  args			3 g  prefixes			3  g  filenamef  oop/goops.scm
W
	
X		X		Y		Z		[		,Z		1a		3a	 
			3
   C        h   b   ]	4 5L 4?6Z       g  args
		 g  v			  g  filenamef  oop/goops.scm	W
 		   C       h(   `   ]	4 5$   O @ 6 X       g  y
		' g  tmp		'  g  filenamef  oop/goops.scm
W
 		'   C5 RG        h    v   -  . , 3  #    6 n       g  name
		  g  filenamef  oop/goops.scm
c
	d	 		
  g  nameg  make-generic C'R"w   h   [   ] 6      S       g  gf
		
  g  filenamef  oop/goops.scm
h		
h	! 		
   Cx"w(y  h(      ]4 5$  44 5L 5 CC            g  gf
		#  g  filenamef  oop/goops.scm
l	'	m	-	m	)	n	3	n	C	n	3	 n	-	"p	- 			#   CGz{|}y       h     - . , 3 #   $   "    45$  n$  45"  4O 54	
4	55445>  "  G  "  4	54>  "  G  C      g  gfs
	  g  name	  g  gfs		'  g  gws?		2  g  sname		L  g  setters		\  g  es		~  g  ans	    g  filenamef  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	 }	 	   g  nameg  make-extended-generic C)Rb~a       h      ] L 4 56         g  gf
		  g  filenamef  oop/goops.scm
					"		/		"				 		   C  h(      ]4O  >  "  G  6              g  gfs
		! g  eg		!  g  filenamef  oop/goops.scm

			!	 		!	  g  nameg  extended-by! C}Rb~a      h       ] 4L 4 556             g  gf
		  g  filenamef  oop/goops.scm
								#		0		#				 			   C h(      ]4O  >  "  G  6              g  gfs
		! g  eg		!  g  filenamef  oop/goops.scm

			!	 		!	  g  nameg  not-extended-by! CR"Gwy       h      - . , 3 #  4 5$   C4 5$  4 5	4
 564 5$  4 5$   C 66          g  old-definition
		} g  name		}  g  filenamef  oop/goops.scm

				"		&			0		;		D		L			M			W		X		b			s		}	 		}  g  nameg  ensure-generic C(R4      h`   ?   ]      	
        C 7       g  dummy
		_ g  name		_  		_	   C  h(      ]	4 5$  @ 6             g  x
		" g  tmp		"  g  filenamef  oop/goops.scm

 		"  g  
macro-typeg  syntax-rulesg  patternsg  name   C5R  h      ]44 556           g  name
		  g  filenamef  oop/goops.scm

					!	
	+				 		  g  nameg  make-setter-name CxRGx    h@      -  . , 3  #    4 $  4 5"  56           g  name
		<  g  filenamef  oop/goops.scm

	 		,		-	 	:		<	 		<
  g  nameg  make-accessor C*R"wy'G(+*        h     - . , 3 #  "  4 5$   4 564 5$   4564 5$  #	
4 544 5564 5$  -4 5$  4
 5"  	4 5664 	5$  44 55$   C":"6           g  proc
	  g  name	   g  filenamef  oop/goops.scm

				&		+	 	3			4			@		E	 	M			N			X		c		l		o	$	y		{			|		 	 	 	 	 	 		 		 	 	 	 	 	 	 		  	   g  nameg  ensure-accessor C+RaG"|zk~b}b        h   h   ] L 6    `       g  method
		  g  filenamef  oop/goops.scm
			"		 		   C  h     ]4 544 5$  "  4	 5
4 554 5$  P4 54 >  "  G  4>  "  G  4>  "  G  "   4O >  "  G  4>  "  G  4>  "  G  C            g  generic
	  g  setter	  g  methods		=  g  gws		=  g  gfs		W   g  filenamef  oop/goops.scm

					#									&		/	!	5	3	7	!	=		=		B		N		O		U	%	W		W		Z	
	n	
	t		{	
 	
 	 	 	 	 	 	 	  g  nameg  upgrade-accessor CR{     h      ]45  6        g  name
		 g  val		  g  filenamef  oop/goops.scm

				 			  g  nameg  toplevel-define! C	R4      hx   c   ]     	 
         C       [       g  dummy
		q g  name		q g  args			q g  body			q  		q	   C  hX   c   ]      	
      C   [       g  dummy
		U g  name		U g  args			U g  body			U  		U	   C      h@      ]4 5$  @4 5$  @ 6              g  x
		9 g  tmp		9 g  tmp		"	9  g  filenamef  oop/goops.scm
	 		9  g  
macro-typeg  syntax-rulesg  patternsg  setterg  name g  argsg  bodyg  ... g  nameg  argsg  bodyg  ...   C5R4!h       ]
4L  L5$  CL L6  z       g  x
		 g  y		 g  t			  g  filenamef  oop/goops.scm							 			   C,       h   R   ] 6J       g  x
		  g  filenamef  oop/goops.scm			 		   C     h    |   ]	4 L 54 5$  CC t       g  x
		 g  id		  g  filenamef  oop/goops.scm									 		   C h@      ]4 5$  L O @  4?$  O @C        g  exp
		? g  referent		? g  tmp			? g  tmp		%	?  g  filenamef  oop/goops.scm
	 		?	  g  nameg  find-free-id C     h   ,   ] C     $       g  args
		  		   C     h   f   ] 4L54L 5 C ^       g  filenamef  oop/goops.scm			
							 		
   C,   h   U   ] 6M       g  tail
		  g  filenamef  oop/goops.scm		 		   C'       h       ]44L5 54L 5 C         g  tail
		  g  filenamef  oop/goops.scm														 		   C,  h   d   ] 6\       g  f
		 g  rest		  g  filenamef  oop/goops.scm		 			   C0     h   v   ]L LL 6      n       g  f
		 g  rest		  g  filenamef  oop/goops.scm						 			   C,   h      ]4 5$  6C   }       g  f
		 g  s		 g  rest			  g  filenamef  oop/goops.scm						" 			   C h      ]L LL 6      }       g  f
		 g  s		 g  rest			  g  filenamef  oop/goops.scm						 			   C        h      ]#4 5"  |4 5"  E4 5$  O @  4?$  O @ 6$  4	?$  
L O @""$  4?$  L O @"`"\          g  ls
	  g  formals	  g  specializers		  g  tmp		  g  tmp		  g  tmp		(	e g  tmp		B	e  g  filenamef  oop/goops.scm
	 	 	  g  nameg  lp C12>SVXYZ]Ua 	    h8   .   ] L     L  C    &       g  formal
		4  		4   C  h   k   ]L L 6   c       g  x
		 g  xs		  g  filenamef  oop/goops.scm		$		 			   C      h   B   ] L 6:       g  filenamef  oop/goops.scm		 		
   C        hH      ]4 5$  L O @4 5$  O @ 6           g  ls
		D g  out		D g  tmp			D g  tmp		(	D  g  filenamef  oop/goops.scm
		B	$	D	 		D	  g  nameg  lp Cjlmnoqrkt 
  h8   .   ]LL  	   L  C &       g  formal
		7  		7   C   hh      ]4L 5$  L O @O Q 4L 545$  L L O @6            g  body
		c g  tmp		c g  lp		(	8 g  tmp		8	c g  tmp		C	c  g  filenamef  oop/goops.scm	(		3		5		8.	 		c   C   h   -   ]L  C     %       g  body0
		  		   C 
h0   M   ]LL L L 	  C  E       g  	procedure
		. g  make-procedure		.  		.	   C        h   l  ]"L L4L5$  <45$  4 O ?"  
45	"  ;"  645$  4 O ?"  
45	"  G  4	5$  
L L O @6d      g  formals
	  g  specializer	  g  body		  g  id		  g  tmp		%	L g  tmp		_  g  	procedure	   g  make-procedure	   g  tmp	   g  tmp	    
g  filenamef  oop/goops.scm	I		
;		;	#	;		;		<		R>	 @	 G		 K	 	 	   C     hH      ]O Q 4 545$  L O @6         g  args
		F g  body0		F g  body1			F g  lp		
	 g  tmp			F g  tmp		&	F  g  filenamef  oop/goops.scm	
			"		5			F	 		F	   C 	       hP      ]O Q 4 5$  @4 5$  O @ 6            g  x
		K g  find-free-id	
	K g  tmp			K g  tmp		/	K  g  filenamef  oop/goops.scm
	 		K   C5!Rgb      h(      ]	4 54L 5$  C L 6        g  x
		' g  dm			'  g  filenamef  oop/goops.scm
Z		[			[		\		\		 ]	"	%]	2	']	 			'   Cn    h      ] O 4 56    }       g  m
		  g  filenamef  oop/goops.scm
X
	^		Z	 		  g  nameg  add-method-in-classes! CRbg     h   ~   ] 4L 4 556v       g  x
		  g  filenamef  oop/goops.scm
b		d			e		e	#	e		c	 		   Cn     h      ] O 4 56           g  m
		  g  filenamef  oop/goops.scm
`
	f		b	 		  g  nameg  remove-method-in-classes! CRna      hh   x  ]454 5"  ?(  C45$  4>  "  G  C""       p      g  gf
		a g  new		a g  new-spec			a g  methods			a g  l			Y  g  filenamef  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	  g  nameg  compute-new-list-of-methods CRa        h      ]4 56        g  m
		  g  filenamef  oop/goops.scm
v
	w		w		w		w	 		  g  nameg  method-n-specializers CR        h   r   ]4 56 j       g  m
		 g  n		  g  filenamef  oop/goops.scm
z		z		z	 			   Cl h      ]
4 56       g  gf
		  g  filenamef  oop/goops.scm
y
	|		z	 		  g  nameg  calculate-n-specialized CRb        h   [   ] 6S       g  gf
		  g  filenamef  oop/goops.scm
			 		   Ca~ 	    h@      ]4 >  "  G  4 4 5>  "  G  4 56         g  gf
		>  g  filenamef  oop/goops.scm
~
									'		4		:		<		>	 		>  g  nameg  invalidate-method-cache! CR4Giiii b   h`      ]4 >  "  G  4 4 5>  "  G  4 >  "  G  4>  "  G  C            g  gf
		[ g  m		[  g  filenamef  oop/goops.scm
													 		-		6		H	 		[	   C5R"  $4(i4i,5$  ,i"  ,5"  B4i,5$  04"i,ii5$  4Gii,5"  ""  ",R44rii5,ii>  "  G  4i,5  $  "  ,i $  )4	i,4Gii,5>  "  G  "   4,i,i4Giiii q,     h0      ]4 5$  4 >  "  G   6L  6        g  proc
		/ g  m		/  g  filenamef  oop/goops.scm

							'		/
 		/	   C       h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4i,5  $  "  ,i $  )4	i,4Gii,5>  "  G  "   4,i,i4Giiii ,p   h   r   ]4 56 j       g  pg
		 g  m		  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4i,5  $  "  ,i $  )4	i,4Gii,5>  "  G  "   4,i,i4Gii ii Y   h   s   ] 6      k       g  obj
		
 g  m		
  g  filenamef  oop/goops.scm

			
	 		
	   C5>  "  G  4i=5  $  "  =i $  )4	i=4Gii=5>  "  G  "   4,i=i4Giii da! 	       hP   J  ]!44 5544 55$  45CC      B      g  m
		J g  spec		J g  src		"	J g  args		2	H g  body		2	H  g  filenamef  oop/goops.scm

				 		,		 								 		,	 	 	"		"		*		-		1		2			8		9		F		G	 		J   C5>  "  G  4io5  $  "  oi $  )4	io4Giio5>  "  G  "   4,ioi4Giii a        h   b   ] 6      Z       g  m
		
  g  filenamef  oop/goops.scm

			
	 		
   C5>  "  G  i1Ri2Rv   h      ] 6          g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-allocation C3Rv    h      ] 6    }       g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-getter C4Rv        h      ] 6    }       g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-setter C5Rv       h      ] 6           g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-accessor C6Rv   h      ] 45 6       g  s
		  g  filenamef  oop/goops.scm

				
	$		 		  g  nameg  slot-definition-init-value C7Rv h      ] 45 6       g  s
		  g  filenamef  oop/goops.scm

				
	#		 		  g  nameg  slot-definition-init-form C8Rv    h      ] 6           g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-init-thunk C9Rv    h      ] 6           g  s
		  g  filenamef  oop/goops.scm

					 		  g  nameg  slot-definition-init-keyword C:Rj h      ]4 56        g  class
		 g  	slot-name		  g  filenamef  oop/goops.scm

				 			  g  nameg  class-slot-definition C<Ra  h      ]44 55C          g  class
		 g  	slot-name		  g  filenamef  oop/goops.scm

						(						 			  g  nameg  slot-init-function C;Ra    h      ] 6             g  obj
		
  g  filenamef  oop/goops.scm

			
	 		
  g  nameg  accessor-method-slot-definitiong  documentationf  5Return the slot definition of the accessor @var{obj}. CsR4'i5R4,ii4Gii i i s   h   `   ]C    X       g  x
		 g  y		  g  filenamef  oop/goops.scm
	 			   C5>  "  G  4iii>  "  G  	
       h      ]44 5	56         g  o
		 g  file		  g  filenamef  oop/goops.scm

								 			  g  nameg  display-address CR4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Gii i i 	     h8      ]4>  "  G  4 >  "  G  >6             g  o
		2 g  file		2  g  filenamef  oop/goops.scm

									2	 		2	   C5>  "  G  4pii5R4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giii i $c@	d  h     ]
 45$  ]4>  "  G  445>  "  G  4 >  "  G  4 >  "  G  >6L  6              g  o
		y g  file		y g  class			y  g  filenamef  oop/goops.scm
 
														
			 	
	)	
	,		9	
	B	
	V	
	q	
	y 
 		y	   C h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm
 
 		
   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giii i %2c@	d      h   V  ]
 4 5$  45$  4>  "  G  445>  "  G  4 >  "  G  44 5>  "  G  4 >  "  G  4 >  "  G  >6L  6L  6     N      g  class
	  g  file	  g  meta		   g  filenamef  oop/goops.scm

								 											!		"	
	&		-	
	6	
	9		F	
	O	
	c	
	f		s	
	|	
 	
 	
 
 	 	   C       h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giii i 3Kc@	dk@BlF        h     ] 45$  4 5$  4>  "  G  445>  "  G  4 5$  ,4 >  "  G  4>  "  G  "   4>  "  G  44	4
 55>  "  G  6L  6L  6        g  gf
	  g  file	  g  meta		  g  name		U   g  filenamef  oop/goops.scm

																			!		"	
	&		-	
	6	
	9		F	
	O 		U 	
	]!		^#		r$	 %	
 %	 %	
 &	
 &	 &	 &	 &	
 '	 '	
 
 "	 	   C       h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giii i [c@	dc@a  h       ]4 5$   6 C             g  spec
		  g  filenamef  oop/goops.scm
2		3			3	1	3		3		4	.	4	 		   Cn      h   e  ]
 45$  4 5$  4>  "  G  445>  "  G  4 >  "  G  444	 55>  "  G  4 >  "  G  4
 >  "  G  >6L  6L  6      ]      g  o
	  g  file	  g  meta		   g  filenamef  oop/goops.scm
*
	+		+		,		,		,		,		-		-		-		!,		"/	
	&/		-/	
	60	
	90		F0	
	O1	
	c2	
	f2		k6		s2		z2	
 8	
 9	
 :	
 *
 	 	   C        h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm
*
 		
   C5>  "  G  4i	5  $  "  	i $  +4	i	4Gii	5>  "  G  "   4,i	i4Gii i i ]       h   k   ] 6      c       g  o
		
 g  file		
  g  filenamef  oop/goops.scm
>
	
?	 		
	   C5>  "  G  4i^5  $  "  ^i $  +4	i^4Gii^5>  "  G  "   4,i^i4Gii_i`i_i i_i i i i hs      h      , 3 C       g  module
		 g  name		 g  int1			 g  val1			 g  int2			 g  val2			 g  var			 g  val			  g  filenamef  oop/goops.scm
E
 			   C5>  "  G  4i^5  $  "  ^i $  +4	i^4Gii^5>  "  G  "   4,i^i4Gii_i`i_ii_ii iii hrm) h(      , 3 &  C4 56             g  module
		" g  name		" g  int1			" g  val1			" g  int2			" g  val2			" g  var			" g  val			"  g  filenamef  oop/goops.scm
O
	W		X		X	-	 X		"X	 		"	   C5>  "  G  4i^5  $  "  ^i $  +4	i^4Gii^5>  "  G  "   4,i^i4Gii_i`i_ii_ii i|i sab~       h     , 3 4455$  C44455>  "  G  44455>  "  G  4>  "  G  C       g  module
		 g  name		 g  int1			 g  val1			 g  int2			 g  val2			 g  var			 g  gf			  g  filenamef  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>  "  G  4ii^^i>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Gii_i`i_i i_i i i i hsh      , 3 C       g  module
		 g  name		 g  int1			 g  val1			 g  int2			 g  val2			 g  var			 g  val			  g  filenamef  oop/goops.scm
o
 			   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Gii_i`i_ii_ii i i h^   h       , 3  6             g  module
		 g  name		 g  int1			 g  val1			 g  int2			 g  val2			 g  var			 g  val			  g  filenamef  oop/goops.scm
y
		 			   C5>  "  G  4iii>  "  G  a03 	      hp   u  ]44 5544 55$  "  	4 54455$  "  4 >  "  G  C m      g  class
		o g  	slot-name		o g  	this-slot			o g  t		$	> g  g-n-s		@	o  g  filenamef  oop/goops.scm

				$		4		$								*	 	:	"	*	$		$		3		?		@		C		F		P		T		Y	 		o	  g  nameg  class-slot-g-n-s CR/   h(      ]
44 5545$   6C       g  class
		( g  slot		( g  x			(  g  filenamef  oop/goops.scm

															%	 
		(	  g  nameg  class-slot-ref C-R      h      ]4 56             g  class
		 g  slot		 g  value			  g  filenamef  oop/goops.scm

							 			  g  nameg  class-slot-set! C.R4i/5  $  "  /i $  )4	i/4Gii/5>  "  G  "   4,i/i4Giiii i Y      h      ]6    x       g  c
		 g  o		 g  s			  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4i/5  $  "  /i $  )4	i/4Gii/5>  "  G  "   4,i/i4Giii i Y      h   q   ] 6    i       g  c
		 g  s		  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4i/5  $  "  /i $  )4	i/4Gii/5>  "  G  "   4,i/i4Giii Y  h   b   ] 6      Z       g  o
		
  g  filenamef  oop/goops.scm

			
	 		
   C5>  "  G  4i05  $  "  0i $  )4	i04Gii05>  "  G  "   4,i0i4Giiii i Y        h      ]6    x       g  c
		 g  o		 g  s			  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4i05  $  "  0i $  )4	i04Gii05>  "  G  "   4,i0i4Giii i Y      h   q   ] 6    i       g  c
		 g  s		  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4i05  $  "  0i $  )4	i04Gii05>  "  G  "   4,i0i4Giiii i i 0       h      ] 6           g  c
		 g  o		 g  s			 g  value			  g  filenamef  oop/goops.scm

		 			   C5>  "  G  4iH5  $  "  Hi $  )4	iH4GiiH5>  "  G  "   4,iHi4Giii i Y   h   u   ] 6    m       g  gf
		 g  args		  g  filenamef  oop/goops.scm

				 			   C5>  "  G  4iI5  $  "  Ii $  )4	iI4GiiI5>  "  G  "   4,iIi4Giii i Yk      h      ] 4 56           g  gf
		 g  args		  g  filenamef  oop/goops.scm

									 			   C5>  "  G  4iJ5  $  "  Ji $  )4	iJ4GiiJ5>  "  G  "   4,iJi4Giii i Y      h   u   ] 6      m       g  gf
		
 g  args		
  g  filenamef  oop/goops.scm

			
	 		
	   C5>  "  G  4iM5  $  "  Mi $  )4	iM4GiiM5>  "  G  "   4,iMi4Giii 1jcba h(   x   ]4L 5$  L  4L 56C      p       g  slot
		"  g  filenamef  oop/goops.scm
							*	 	 		"   C     h@      ]4 544 554 O >  "  G  C           g  self
		< g  clone		< g  slots			<  g  filenamef  oop/goops.scm

				#			3								!								 		<   C5>  "  G  4iN5  $  "  Ni $  )4	iN4GiiN5>  "  G  "   4,iNi4Giii 1jcba\N       h@      ]	4L 5$  .L  4L 545$  45"  6C        g  slot
		? g  value		;  g  filenamef  oop/goops.scm
							,			!	%	+	!	,	%	=	 
		?   C       h@      ]4 544 554 O >  "  G  C           g  self
		< g  clone		< g  slots			<  g  filenamef  oop/goops.scm

				#			3								!								 		<   C5>  "  G  4iO5  $  "  Oi $  )4	iO4GiiO5>  "  G  "   4,iOi4Giiii g      h   Z   ] LL 6    R       g  m
		  g  filenamef  oop/goops.scm
			 		   Cbabf    h   ~   ] 4L 4 556v       g  c
		  g  filenamef  oop/goops.scm
			%			#		.		#		 		   Cebf  h       ] L 4L4 556            g  c
		  g  filenamef  oop/goops.scm
 					#		.		#				 		   C       h   Z   ] LL 6    R       g  c
		  g  filenamef  oop/goops.scm
				 		   Cf    h    ]
4 >  "  G  454 O >  "  G  444 55>  "  G  4	5 4
 O 4 5>  "  G  4 O 45>  "  G  4 >  "  G  4 O 45>  "  G  4 >  "  G  4>  "  G   C  z      g  old
	 g  new	 g  methods			]  g  filenamef  oop/goops.scm

									9		?		@		E		M		R		^		d		f		i		j		t			  	 	  	 	 	 	 	 	 	 	 	 		   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giii "ab 
     hX      ]	4 5$  G4 544 455>  "  G  4>  "  G  	 6C       g  m
		X g  gf		V  g  filenamef  oop/goops.scm
									(					 		! 	"	"!		'!	)	-!	6	/!	)	1!		6 		?"		V$	 		X   Cg   h   b   ]4 56 Z       g  c
		  g  filenamef  oop/goops.scm

	%			 		   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giiiii %n      h8      ]"  %$  $  	"   "C4 5"       g  m
		8 g  old		8 g  new			8 g  l			+  g  filenamef  oop/goops.scm
+
	.			1		1		3		3		3	
	4		#5		)5	
	+.		,.		8.	 		8	   C5>  "  G  4i5  $  "  i $  +4	i4Gii5>  "  G  "   4,ii4Giiiii &-O&ehd        h0      ] 44 54 54 5 56              g  c
		) g  old		) g  new			)  g  filenamef  oop/goops.scm
;
	?		
?	"	@	"	A	)	%B	.	'?		)>	 			)	   C5>  "  G  456,BCy  h   i  ]4 54 54 5$  44L 5>  "  G  "   $  44L 5>  "  G  "   $  /44L 5>  "  G  454L 56C  a      g  s
	  g  g-n-s	  g  getter-function		  g  setter-function		  g  accessor		   g  filenamef  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	 	 	   Ca       h      ] O 4 56       g  class
		 g  slots		  g  filenamef  oop/goops.scm
J
	\		\		\		K	 			  g  nameg  compute-slot-accessors C.R4iB5  $  "  Bi $  )4	iB4GiiB5>  "  G  "   4,iBi4Giii i 0GG9=@D 	hP     ]  $  45"  $  45"  456           g  class
		L g  g-n-s		L g  
init-thunk		
	L g  g-n-s		
	L  g  filenamef  oop/goops.scm
^
	_			`		
_		b		c		"c		#d		(d	>	*d		4c		5f		@h		La	 		L	   C5>  "  G  4iC5  $  "  Ci $  )4	iC4GiiC5>  "  G  "   4,iCi4Giii i 0NG ID        h8      ]
  $  "  456       g  class
		8 g  g-n-s		8 g  g-n-s			8  g  filenamef  oop/goops.scm
k
	m		l		l		o		p		#p		&q		,r		8n	 		8	   C5>  "  G  O      h   c   ]4L  5 6 [       g  o
		  g  filenamef  oop/goops.scm
v		v		v	 		   C  h      ] O C      w       g  proc
		
  g  filenamef  oop/goops.scm
u
 		
  g  nameg  make-generic-bound-check-getter C9R	PR4QqWRSTU hH      ] $  : &    L  C &    L   CL 6 C         g  form
		F  g  filenamef  oop/goops.scm
																			"		$		(		+		.		4	.	:		C	 		F  g  nameg  
body-trans C      h(      ]	O  Q L4L 5C             g  x
		" g  
body-trans		"  g  filenamef  oop/goops.scm
						 	 		"  g  nameg  make-one CVPXYW[       hx      - 1 3    4O 455  	
 	 	 
    C           g  form
			t g  body			t g  name			t g  n-var			t g  args			t  g  filenamef  oop/goops.scm
~
											&		2	,	:		;	 			t
   C       h   b   ]	4 5L 4?6Z       g  args
		 g  v			  g  filenamef  oop/goops.scm	~
 		   C       h(   `   ]	4 5$   O @ 6 X       g  y
		' g  tmp		'  g  filenamef  oop/goops.scm
~
 		'   C5QR/ h    7   ]	 
45$   6C    /       g  o
		 g  x		  		   C/        h    7   ]	 45$   6C    /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 		45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	
45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C/        h    7   ]	 	45$   6C   /       g  o
		 g  x		  		   C  /  h       ]	 L 45$   6C   |       g  o
		 g  x		  g  filenamef  oop/goops.scm					
					 		   C h    )   ] 	$  L  C O C       !       g  n
		  		   C O  @R h   )   ] 
C !       g  o
		  		   C     h   )   ] C !       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 		C!       g  o
		  		   C     h   )   ] 	
C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C     h   )   ] 	C!       g  o
		  		   C         h   R   ] L CJ       g  o
		  g  filenamef  oop/goops.scm		 		   C   h    )   ] 	$  L  C O C       !       g  n
		  		   C O  =R h   8   ] 
C       0       g  o
			 g  v			  				   C      h   8   ] C       0       g  o
			 g  v			  				   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 		C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	
C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C      h   8   ] 	C      0       g  o
		
 g  v		
  		
	   C  h   a   ] L C      Y       g  o
		
 g  v		
  g  filenamef  oop/goops.scm			 		
	   C    h    )   ] 	$  L  C O C       !       g  n
		  		   C O  IRa\@1]Y^B_`3a9bc7      h   A   ] L C   9       g  filenamef  oop/goops.scm
	 		
   C  h    ]94L 54L  54L 54 545$  "  "  4L >  "  G  "  $  y45	$  c4	5$  "  4
L >  "  G  4	5$  "  4L >  "  G  "  "h"  "`4 5$  "  $  A"  4>  "  &G  "  
$  $  "  ""  "C4 5$  "45$  "  4L 5"  $  "  #4 545$  "  O 45$  "  
$  "  4 5C           g  s
	 g  index	 g  g-n-s		 g  size		$ g  name		- g  t		6  g  get		~  g  set		~  g  key	  g  thunk	S g  t	 g  init	 g  t	  g  filenamef  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	   C        h      ] O 6        g  class
		 g  slots		  g  filenamef  oop/goops.scm

		 			  g  nameg  compute-getters-n-setters CdR4i>5  $  "  >i $  )4	i>4Gii>5>  "  G  "   4,i>i4Giii eg?e h   ]   ] 6      U       g  class
		
  g  filenamef  oop/goops.scm

	
	 		
   C5>  "  G  h      h   c   ] C [       g  l
		  g  filenamef  oop/goops.scm
	
				 		   C  h   u   ] 6      m       g  lst
		
  g  filenamef  oop/goops.scm

	
	 		
  g  nameg  only-non-null CiRjii       h0     ]
4 5  4445 556           g  c
		, g  get-direct-supers		, g  c-direct-supers				,  g  filenamef  oop/goops.scm

											 		(	& 	(	(	 	*		,	 		,	  g  nameg  compute-std-cpl C?Rk[l      h   c   ]L  6     [       g  l
		  g  filenamef  oop/goops.scm
	'				1			) 		   C  h(      ]	 (  C 4O L 5$  CC         g  l
		& g  c		&  g  filenamef  oop/goops.scm
					,		!		"	!	 		&  g  nameg  candidate-car CYmji   h      ] L &   C C      |       g  l
		  g  filenamef  oop/goops.scm
			$				 		  g  nameg  remove-next C h`   "  ]
45$   64O 5$  "  4>  "  G   4	4
O 556         g  reversed-partial-result
		] g  inputs		] g  next		#	]  g  filenamef  oop/goops.scm

									#		+		0	
	4		9	
	H		I		L	$	[		]	 		]	  g  nameg  merge-lists CjRnopq  h(      ]445 5445 5456          g  c
		% g  get-direct-supers		%  g  filenamef  oop/goops.scm
#
	$		$		$		%		%		%		&		%$	 
		%	  g  nameg  compute-clos-cpl CrRhk  h       ]	 L $  C L6         g  
constraint
		 g  t	
	  g  filenamef  oop/goops.scm
2		3	)		3	$	
3		
3		4	%	4	 		   C       h   Z   ] LO L 6       R       g  x
		  g  filenamef  oop/goops.scm
1		2	 		   CYs       h   c   ] L C       [       g  x
			  g  filenamef  oop/goops.scm
>		>	*	>	% 			   C        h     ]+"  f(  C4O 5(  6(  "  	454O 54 5" "           g  elements
		{ g  constraints		{ g  tie-breaker			{ g  elements			l g  constraints			l g  result			l g  can-go-in-now			l g  choice		D	l  g  filenamef  oop/goops.scm
)
	*		-		0		/		'7	
	+8		-8		09	'	49		7:	 	<;	 	D9		G>		WA		`A	 	bA		l=		l*		q,		{*	 		{	  g  nameg  top-sort CnRh     h   Z   ] L 6      R       g  x
		
  g  filenamef  oop/goops.scm
H	 	
I	& 		
   CYt   hX   h  ]""  >4L 54O 5(  (  6"C4 5"       `      g  partial-cpl
		Q g  min-elts		Q g  pcpl			D g  current-elt				D g  ds-of-ce			D g  common		"	D  g  filenamef  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	   C     h   u   ] O C      m       g  
get-supers
		
  g  filenamef  oop/goops.scm
C
 		
  g  nameg  std-tie-breaker CqR      hX   -  ]"  D(  C45$  "44L 55"  "%      g  x
		X g  result		J g  pending			J g  next			J  g  filenamef  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   C        h      ] O C      z       g  get-follow-ons
		
  g  filenamef  oop/goops.scm
R
 		
  g  nameg  build-transitive-closure CoRo  hx     ]"  S(  "  $  $(  C4L 5" "44L 5 5"       {      g  x
		q g  elements		Y g  this-one			Y g  result			Y  g  filenamef  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   C  h   {   ] O C      s       g  get-follow-ons
		
  g  filenamef  oop/goops.scm
_
 		
  g  nameg  build-constraints CpR4i@5  $  "  @i $  )4	i@4Gii@5>  "  G  "   4,i@i4Giii i u3a\b1h97iv2Y    hp    ]"45$  %4 54 >  "  G  C$  4544	4
 555$  ( 45$  	45 "  456"  '4455$  C"4 5"$  ( 45$  	45 "  456$  f44554455$  "$  "  4>  "  G  "  4>  "  G   CL  6         g  class
	m g  s	m g  key			m g  already-allocated			9 g  name		I  g  thunk		o  g  l	   g  r	   g  thunk	   g  get	e g  set	e  g  filenamef  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	   C        h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm
r
 		
   C5>  "  G     h   Q   ]M C   I       g  o
		  g  filenamef  oop/goops.scm
	 		   C     h   i   ]N Ca       g  o
		 g  v		  g  filenamef  oop/goops.scm
			 			   C    h      ]HO O  C       g  class
		 g  value		  g  filenamef  oop/goops.scm

		 			  g  nameg  make-closure-variable CR4i@5  $  "  @i $  )4	i@4Gii@5>  "  G  "   4,i@i4Giii i Y3     h   z   ]456 r       g  o
		 g  s		  g  filenamef  oop/goops.scm

				.		 			   C5>  "  G  4iA5  $  "  Ai $  )4	iA4GiiA5>  "  G  "   4,iAi4Giii e   h   ]   ] 6U       g  class
		  g  filenamef  oop/goops.scm

		 		   C5>  "  G  4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giii i    h   t   ] 6      l       g  object
		
 g  initargs		
  g  filenamef  oop/goops.scm

	
	 		
	   C5>  "  G  4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giii i vb@>A\d.ba   h      ] L 4 56         g  x
		  g  filenamef  oop/goops.scm
					'		3		'				 		   C        hp    ]4L  >  "  G  45454 45>  "  G  4 >  "  G  4 	>  "  G  4 
>  "  G  4 >  "  G  4 4 5>  "  G  4 >  "  G  4 54 >  "  G  4 
>  "  G  4 4 5>  "  G  4 >  "  G  4 O >  "  G  4 >  "  G   6        g  class
	n g  initargs	n g  dslots		*n g  supers		*n g  slots	 ;  g  filenamef  oop/goops.scm

				.	 		!		(	3	*		*		/		5		6	(	>	E	@	(	E		N		T		[		d		j		q		z	 	 	( 	 	 	 	( 	 	 	 	( 	 	 	 	 	 	 	 	 	 	 	 				*	%	<	U	n	 4	n	   C h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  vb        h8      ]
45$  $  
 @ 6C              g  object
		1 g  initargs		1 g  proc			1  g  filenamef  oop/goops.scm

											!	#	%		+		/		0	 		1	  g  nameg  initialize-object-procedure CR4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giii i       h       ]4L  >  "  G   6  w       g  applicable-struct
		 g  initargs		  g  filenamef  oop/goops.scm

		 			   C      h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giii i vb"G      h   _   -  1  3 L  @ W       g  args
			  g  filenamef  oop/goops.scm
	*		, 			


   C@        h   ,  ]45454L  >  "  G  4 45$  &4	
O 5 "  >  "  G  $  
 6C$      g  generic
	  g  initargs	  g  previous-definition		  g  name		   g  filenamef  oop/goops.scm

							
	/		5		6	$	B	 	C	*	d	$	i	$	n		|	 	) 	 	 	   C h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giiwi i v   h(   z   ]4L  >  "  G   456  r       g  gws
		& g  initargs		&  g  filenamef  oop/goops.scm

			&	 		&	   C   h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Gii|i i bv{        h(      ]4L  >  "  G   456       g  eg
		( g  initargs		(  g  filenamef  oop/goops.scm

					$	9	&		(	 		(	   C h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G      h   r   -  1  3 C     j       g  args
			  g  filenamef  oop/goops.scm
	 			


  g  nameg  dummy-procedure CR4iE5  $  "  Ei $  )4	iE4GiiE5>  "  G  "   4,iEi4Giii i  0bv!       h   ~  ]4L  >  "  G  4 45>  "  G  4 45>  "  G  4 45>  "  G  4 	4
5>  "  G  4 45>  "  G   456  v      g  method
	  g  initargs	   g  filenamef  oop/goops.scm

						&	,		5		;		<	"	C	G	E	"	J		S		Y		Z		h		q		w		x			= 	 	 	 	 	 	7 	 	 	 	$ 	 	 	   C       h   _   ] O C      W       g  real-next-method
		
  g  filenamef  oop/goops.scm

 		
   C5>  "  G  D;^`3<_] 	   h      ]	"  "4L  5$  L L 45 6C4LL 5$  @44L 55&  (4LL 5$  L L 4LL 56"""            g  slot
		{ g  init		(  g  filenamef  oop/goops.scm
			 					 		&		(		)		7		8		;		E		K		L		Z		c		o
	 		{   C1j1L 	    hh   &  ]454 O 4455>  "  G  4 >  "  G  4 >  "  G   C            g  old-instance
		b g  	old-class		b g  	new-class			b g  new-instance		
	b  g  filenamef  oop/goops.scm
 
				3	
		
						"	(	*		/		8		L	 		b	  g  nameg  change-object-class C2R4iL5  $  "  Li $  )4	iL4GiiL5>  "  G  "   4,iLi4Giiii 56   h   u   ]C   m       g  old-instance
		 g  new-instance		  g  filenamef  oop/goops.scm

 			   C5>  "  G  4iK5  $  "  Ki $  )4	iK4GiiK5>  "  G  "   4,iKi4Giiii 8;2    h      ]  6   |       g  old-instance
		 g  	new-class		  g  filenamef  oop/goops.scm
%
		&	$	&	 			   C5>  "  G  4iD5  $  "  Di $  )4	iD4GiiD5>  "  G  "   4,iDi4Giii i =    h   s   ] 6      k       g  class
		
 g  initargs		
  g  filenamef  oop/goops.scm
.
	
/	 		
	   C5>  "  G  4iF5  $  "  Fi $  )4	iF4GiiF5>  "  G  "   4,iFi4Giii i>EDE      h0      - 1 3 4 54>  "  G  C            g  class
			+ g  initargs			+ g  instance			+  g  filenamef  oop/goops.scm
1
	
2		2		3	 			+
   C5>  "  G  FiGR4iP5  $  "  Pi $  )4	iP4GiiP5>  "  G  "   4,iPi4Giii i QaJSRVI        hX      ]
4 5(  4 >  "  G  "   4 5$   4 56 6            g  gf
		S g  args		S g  methods		0	S  g  filenamef  oop/goops.scm
F
	G			G		G		G		H		(I		0I		8J		=K		KK		SL	 		S	   C5>  "  G  4GiiS5RR4iR5  $  "  Ri $  +4	iR4GiiR5>  "  G  "   4,iRi4Giii i TT    h   l   ] 6      d       g  gf
		
 g  args		
  g  filenamef  oop/goops.scm
S
	
T	 		
	   C5>  "  G  RiSi4iV5  $  "  Vi $  )4	iV4GiiV5>  "  G  "   4,iVi4Giii i i UbdZU     h   k   ] L 6    c       g  m1
		 g  m2		  g  filenamef  oop/goops.scm
Z		Z	" 			   C  h       ]45O 6             g  gf
		 g  methods		 g  args			 g  targs			  g  filenamef  oop/goops.scm
X
	Y		Y		Z	 			   C5>  "  G  4iU5  $  "  Ui $  )4	iU4GiiU5>  "  G  "   4,iUi4Giiii i ehf    h   }   ] 6    u       g  m1
		 g  m2		 g  targs			  g  filenamef  oop/goops.scm
\
	]	 			   C5>  "  G  4iQ5  $  "  Qi $  )4	iQ4GiiQ5>  "  G  "   4,iQi4Giii i i i jpr h      ]4545@       g  gf
		 g  methods		 g  
build-next			 g  args			  g  filenamef  oop/goops.scm
_
	`			`		
`			a			a		a			`	 				   C5>  "  G  4iR5  $  "  Ri $  )4	iR4GiiR5>  "  G  "   4,iRi4Giiiqi i rHQ        h@      -  1  3 L(  L (  L"   6LLL  (  L"   6            g  new-args
			;  g  filenamef  oop/goops.scm
f		h		g		#i		1g		;j	 			;


   C      h   x   ]L L O Cp       g  procs
		 g  args		  g  filenamef  oop/goops.scm
e	 			  g  nameg  next CQ   h       ]O  Q  6         g  gf
		 g  l		 g  args			 g  next			  g  filenamef  oop/goops.scm
d
	e		k	 			   C5>  "  G  4i    h   f   ] 6     ^       g  proc
		  g  filenamef  oop/goops.scm
n	
	o	*	o	 		   C/i0iHiIiJi >  "  G          hH     ]"  5(  C45$  "" "        g  l
		F g  l		; g  res			;  g  filenamef  oop/goops.scm

													 		*		-		0		3		;		;		>		F	 		F  g  nameg  list2set CRf       h      ] 4L 4 55C           g  c
		  g  filenamef  oop/goops.scm
				
	)				 		  g  nameg  allsubs Cf    h(      ]	O Q 44 556              g  c
		! g  allsubs	
	!  g  filenamef  oop/goops.scm

	
					)			!	 		!  g  nameg  class-subclasses CWRgW h      ]4 4 556        g  c
		  g  filenamef  oop/goops.scm

										 		  g  nameg  class-methods CXRi6              g  m
		, g  table-of-metas
 g  t
^^ g  t
`` g  t
aa g  t
bb g  t
e$e9 g  t
pZpp g  t
qq g  t
tt g  t
ww g  t
{{ g  t
       g  t
            , g  t
             g  t
             g  t
             g  t
      d      z g  t
      N      c g  t
             g  t
             g  t
             g  t
             g  t
      +      @ g  t
      t       g  t
             g  t
             g  t
            , g  t
             g  t
      ]      r g  t
            + g  t
             g  t
      p       g  t
            * g  t
      !      6 g  cache
             g  cache
            Ǳ g  cache
      Γ      q g  t
      ֭       g  t
            ' g  t
            & g  t
      D      Y g  t
      G      \ g  t
      n       g  t
             g  t
             g  t
     %     : g  t
           g  t
     i     ~ g  t
     =     R g  t
     W     l g  t
           g  t
           g  t
     -     B g  t
     *     @ g  t
     W     l g  t
     X     m g  t
           g  t
     !     6  ;g  filenamef  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 