GOOF----LE-8-2.0l(]a4hë] gguile¤ ¤ gdefine-module*¤ ¤ ¤ goop¤ ggoops¤ gdispatch¤ ¤ gfilenameS¤ foop/goops/dispatch.scm¤ gimportsS¤ ¤  ¤ gutil¤ ¤ ¤ gsystem¤ gbase¤ gtarget¤ ¤ ¤ ¤ gexportsS¤ gmemoize-method!¤ ¤ gset-current-module¤ ¤ ¤ gcurrent-module¤ g*dispatch-module*¤ ggensym¤ !fa¤ "ft¤ #gappend¤ $#¤ %#¤ &grest¤ 'glet¤ (gmap¤ )gclass-of¤ *fp¤ +gif¤ ,gand¤ -gapply¤ .&¤ /gassq-ref¤ 0geq?¤ 1fc¤ 2g cache-miss¤ 3gcons*¤ 4glist¤ 5gemit-linear-dispatch¤ 6g make-vector¤ 7fg¤ 8g vector-length¤ 9glambda¤ :gcdr¤ ;g case-lambda¤ g %host-type¤ ?gcompile¤ @?¤ A@?¤ B@?¤ CgenvS¤ DgfromS¤ Egscheme¤ FgoptsS¤ Gg partial-eval?S¤ Hgcse?S¤ IGH¤ Jgargs¤ KJ¤ Lgmax¤ Mgcompute-dispatch-procedure¤ Ng timer-init¤ Ogslot-ref¤ Pgeffective-methods¤ Qg slot-set!¤ Rg procedure¤ Sgcache-dispatch¤ Tgdelayed-compile¤ Ug n-specialized¤ V )¤ W )¤ Xgcompute-cmethod¤ Y X¤ Z X¤ [gmemoize-effective-method!¤ \gcompute-applicable-methods¤ ]g%compute-applicable-methods¤ ^gno-applicable-method¤ _gset-procedure-property!¤ `gsystem-procedure¤C5h8!Â]4    54>"G4i5R h8ù]"  ’$C™45Œ"ÿÿà™"ÿÿÔñgn  2gstem  2gn   &gsyms   &gfilenamefoop/goops/dispatch.scmŒ @ ŒŒ  A ŒŒ B ŒŒ  B ŒŒ  D ŒŒ  D ŒŒ  D ŒŒ & D ŒŒ & A ŒŒ ) A ŒŒ * A ŒŒ 2 A ŒŒ  2 gnameggen-symsŒC!"%&'()hp]Chgt  ga  gfilenamefoop/goops/dispatch.scmŒ P ŒŒ  Q ŒŒ   C *+,-./01234hX&]e4545"(.$ 45"45  D"¶ (L4  5Ž £Œ Œ  Œ$ 45ŒŒ"Œ   "ÿÿv4  5$!  Ž Ž Œ   "ÿÿ{4 5 Œ Œ Ž Ž Œ   "ÿÿJ  £   "ÿÿ4$45Œ"Œ  "ÿþÌggf-sym  Tgnargs  Tgmethods   Tgfree   Tgrest?   Tggen-syms   Tgargs   Tgtypes   Tgmethods  $gfree $gexp $gfree X gtypes X gspecs X gchecks  X gm-sym  e ªgvar  ´ gvar  ä gfilenamefoop/goops/dispatch.scmŒ ? ŒŒ  E ŒŒ E ŒŒ  E ŒŒ  E ŒŒ  F ŒŒ  F ŒŒ  F ŒŒ  E ŒŒ G ŒŒ & M ŒŒ , O ŒŒ - O ŒŒ = O ŒŒ > P ŒŒ M O ŒŒ T O ŒŒ X W ŒŒ ^ [ ŒŒ _ \ ŒŒ c \ #ŒŒ e \ ŒŒ e \ ŒŒ j ] ŒŒ m ^ 'ŒŒ p ^ ŒŒ s ^ ŒŒ x a ŒŒ ƒ b ŒŒ … c ŒŒ › d ŒŒ   a ŒŒ ª ] ŒŒ « f ŒŒ ² f (ŒŒ ´ f ŒŒ ´ f ŒŒ ¼ g ŒŒ Á i ŒŒ Ä j ŒŒ Æ k "ŒŒ É k )ŒŒ Î k "ŒŒ Ñ k ŒŒ Ý h ŒŒ Þ m ŒŒ â m 'ŒŒ ä m ŒŒ ä m ŒŒ é n %ŒŒ ì n ŒŒ ò o ŒŒ õ p ŒŒ ÷ q $ŒŒ ú q +ŒŒ ÿ q $ŒŒ  q ŒŒ  n ŒŒ  W ŒŒ  Y (ŒŒ  Y ŒŒ  Z ŒŒ $ W ŒŒ $ G ŒŒ * I ŒŒ 2 J ŒŒ 4 K $ŒŒ D L $ŒŒ J I ŒŒ T G ŒŒG  T gnamegemit-linear-dispatchŒC5R6 785hpb]4L5’$KL£(—"ÿÿÔ4L> G—Œ"ÿÿ§L4L5™6Zgn  kgclauses  kgfree   kgmethods   [gclause  @ [gfree  @ [gfilenamefoop/goops/dispatch.scmŒ Ž ŒŒ  ŒŒ ŒŒ  ŒŒ  ŒŒ  ŒŒ  ‘ ŒŒ “ ŒŒ . “ ŒŒ / ˜ ŒŒ C – ŒŒ J š ŒŒ O š &ŒŒ [ š ŒŒ ^ › ŒŒ e › ŒŒ k › ŒŒ  k gnameg emit-restŒC9(:;<=>BCDEFIh ™]4L5L@‘gp  gfilenamefoop/goops/dispatch.scmŒ · ŒŒ  ¸ ŒŒ  ¸ ŒŒ  º ŒŒ  » ŒŒ  ¸ ŒŒ  ¸ ŒŒ  ¼ ŒŒ   C5 hˆž] ’$/45Œ45O6L£(™"ÿÿ«4 L> G™Œ"ÿÿ~–gn  „gclauses  „gfree   „gexp  & 9gvals  & 9gmethods  > „gclause  i „gfree  i „gfilenamefoop/goops/dispatch.scmŒ œ ŒŒ  ŒŒ ŒŒ ž ŒŒ ž ŒŒ  ž ŒŒ    ŒŒ & ž ŒŒ 9 ¶ ŒŒ > ¡ ŒŒ > ¡ ŒŒ F ¢ ŒŒ I ¤ ŒŒ W ¤ ŒŒ X © ŒŒ l § ŒŒ s « ŒŒ x « %ŒŒ „ « ŒŒ  „ gnamegemit-reqŒC8J2KL hHç]R"-(ç4—54—5"Å(y45O O   Q  Q  45 ‘  $" £„ $ ŒŒ"Œ6 £$ ££Œ¤Ž"ÿÿY ££Œ¤Ž"ÿÿ;"ÿÿ3 £$Ž4  £5"ÿþîŽ4  £5"ÿþÓ ÿ ÿ"ÿþÃßggf  Cgcache  Cgls   3gnreq   3gnrest   3greq   ógrest   ógls  & ëggf-sym  3 ¥g emit-rest K ¥gemit-req K ¥gt m ‚gn  ´ Ígn  Ò ëgfilenamefoop/goops/dispatch.scmŒ t ŒŒ  v ŒŒ w ŒŒ y ŒŒ  y ŒŒ  y (ŒŒ  y ŒŒ  z ŒŒ  z ŒŒ  z )ŒŒ  z ŒŒ  y ŒŒ & € ŒŒ , ŒŒ - ŒŒ 1 ŒŒ 3 ŒŒ 3 ŒŒ e ® ŒŒ l ® ŒŒ m ® ŒŒ ~ ¯ ŒŒ  ¯ ŒŒ † ® ŒŒ ˆ ° ŒŒ – ° ŒŒ › ± ŒŒ   ² ŒŒ £ ² "ŒŒ ¥ ­ ŒŒ ¨ „ ŒŒ « „ ŒŒ ¯ ŒŒ ² … ŒŒ ´ … ŒŒ ´ … ŒŒ ½ † $ŒŒ  † -ŒŒ à † ŒŒ Ä † ŒŒ Ç ‡ ŒŒ Í ‡ ŒŒ Ð ‰ ŒŒ Ò ‰ ŒŒ Ò ‰ ŒŒ Û Š #ŒŒ à Š ,ŒŒ á Š ŒŒ â Š ŒŒ å ‹ ŒŒ ë ‹ ŒŒ ë € ŒŒ ö { ŒŒ ù { ŒŒ ý w ŒŒ  | ŒŒ  | ŒŒ  | 1ŒŒ  | %ŒŒ  | ŒŒ  | ŒŒ  ~ ŒŒ  ~ ŒŒ # ~ +ŒŒ % ~ ŒŒ ' ~ ŒŒ 3 ~ ŒŒ 3 v ŒŒE  C gnamegcompute-dispatch-procedureŒCMR NRNMOPQRShPû-13M™NM ‘$.4L4L554L>"G@L6ógargs Lgdispatch & Dgfilenamefoop/goops/dispatch.scmŒ Ê ŒŒ Ë ŒŒ  Ë ŒŒ  Í ŒŒ  Ì ŒŒ  Î ŒŒ  Ï ŒŒ " Ï )ŒŒ $ Ï ŒŒ & Î ŒŒ & Î ŒŒ ) Ð ŒŒ / Ð ŒŒ 6 Ð ŒŒ D Ñ ŒŒ L Õ ŒŒ L Ch‘] HOC‰ggf  gtimer  gfilenamefoop/goops/dispatch.scmŒ È ŒŒ  É ŒŒ   gnamegdelayed-compileŒCTRh8]  ‘$"„$C454L™Ž5ŒC gn  6gf  6gls   6gt   gfilenamefoop/goops/dispatch.scmŒ Ø ŒŒ  Ù ŒŒ  Ù ŒŒ  Ù ŒŒ  Ù ŒŒ  Ú ŒŒ Û ŒŒ % Û ŒŒ ' Û ŒŒ ( Û ŒŒ - Û &ŒŒ 2 Û /ŒŒ 4 Û ŒŒ 5 Û ŒŒ  6 gnameg map-untilŒCh8è]ˆ$#ˆ$&ŽŽ"ÿÿÚCC(„CCàgx  8gy  8gfilenamefoop/goops/dispatch.scmŒ Ü ŒŒ  Ý ŒŒ Ý ŒŒ Ý ŒŒ  Ý ŒŒ  Þ ŒŒ  Þ 'ŒŒ  Ý ŒŒ  ß "ŒŒ ß *ŒŒ ( ß ŒŒ 2 Ý ŒŒ 5 à ŒŒ  8 gnamegequal?ŒCOUW2Phå]"OOQQ45$X4455"1(64 £5$  £@Ž"ÿÿÏ45"ÿÿÀ6Ýggf  ‰gargs  ‰g map-until   ‰gequal?   ‰gtypes  ; gcache  A rgfilenamefoop/goops/dispatch.scmŒ × ŒŒ  â ŒŒ # â ŒŒ % â ŒŒ ) â ŒŒ * ã ŒŒ - ã ŒŒ 3 ã +ŒŒ 5 ã ŒŒ ; ã ŒŒ ; ã ŒŒ A ä ŒŒ G å ŒŒ O æ ŒŒ P ç ŒŒ U ç %ŒŒ W ç ŒŒ [ ç ŒŒ _ å ŒŒ b è $ŒŒ e è ŒŒ i è ŒŒ l é ŒŒ r é ŒŒ r ä ŒŒ s ä ŒŒ y ä %ŒŒ { ä ŒŒ ä ŒŒ ‰ ê ŒŒ  ‰ gnamegcache-dispatchŒCSRh•]45@ggf  gargs  gfilenamefoop/goops/dispatch.scmŒ ì ŒŒ  í ŒŒ  í ŒŒ   gnameg cache-missŒC2Rh0ð]  ‘$"„$C4LŽ™5ŒCègls  /gn  /gt   gfilenamefoop/goops/dispatch.scmŒ 𠌌  ñ ŒŒ  ñ ŒŒ  ñ ŒŒ  ñ ŒŒ  ò ŒŒ " ó ŒŒ # ó ŒŒ ( ó ŒŒ + ó )ŒŒ - ó ŒŒ . ó ŒŒ  / gnamegfirst-nŒC(WZOPQRTU h z]3O"¡(`454545Œ4>"G44 5>"GC4 5‘$4455"—Ž"ÿÿ_"V4545Œ4>"G44 5>"GCQ "ÿþõrggf  gargs  g applicable   gn   ¯gls   ¯gtypes   tgcmethod  ( tgcache  > tglen  ³  grest?  ³  gtypes  ³  gcmethod  ¼  gcache  Ó  gfirst-n   gfilenamefoop/goops/dispatch.scmŒ ï ŒŒ  ô ŒŒ  õ ŒŒ  ö ŒŒ  ö ŒŒ ü ŒŒ " ü ŒŒ ( ü ŒŒ ( ü ŒŒ 4 ý ŒŒ 5 þ ŒŒ ; þ %ŒŒ = þ ŒŒ > ý ŒŒ > ü ŒŒ A ÿ ŒŒ G ÿ ŒŒ N ÿ ŒŒ W  ŒŒ ]  ŒŒ ^  ŒŒ i  ŒŒ w ÷ ŒŒ } ÷ ŒŒ  ÷ ŒŒ € ÷ ŒŒ „ õ ŒŒ ˆ ø ŒŒ ø 'ŒŒ — ø ŒŒ ¡ ø ŒŒ ¤ ú ŒŒ § ú ŒŒ ¯ ú ŒŒ ³ û ŒŒ ´ ü ŒŒ ¶ ü ŒŒ ¼ ü ŒŒ ¼ ü ŒŒ É ý ŒŒ Ê þ ŒŒ Ð þ %ŒŒ Ò þ ŒŒ Ó ý ŒŒ Ó ü ŒŒ Ö ÿ ŒŒ Ü ÿ ŒŒ ã ÿ ŒŒ ì  ŒŒ ò  ŒŒ ó  ŒŒ þ  ŒŒ   ŒŒ6   gnamegmemoize-effective-method!ŒC[R\][^h8ß] 4&"5$ 66×ggf  3gargs  3g applicable   3gfilenamefoop/goops/dispatch.scmŒ  ŒŒ   ŒŒ  ŒŒ   ŒŒ   ŒŒ !  ŒŒ +  ŒŒ 3  ŒŒ  3 gnamegmemoize-method!ŒCR_ii`6ºgm  ,gfilenamefoop/goops/dispatch.scmŒ   ŒŒ -  ŒŒ 6  ŒŒ Á ? ŒŒ  t ŒŒ  Ç ŒŒ < È ŒŒ P × ŒŒ  ì ŒŒ õ ï ŒŒ !*  ŒŒ !4  )ŒŒ !7  ŒŒ  !7 C6