/*===========================================================================*/
/*   (Object/method.scm)                                                     */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -q -afile .afile -fsharing -fno-reflection -cc gcc-2.95 -lib-dir /users/serrano/prgm/project/bigloo/lib/2.6b -unsafev -no-hello -O2 -rm -unsafe -s -indent Object/method.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>


/* Object type definitions */
typedef struct BgL_typez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_siza7eza7;
   obj_t BgL_classz00;
   obj_t BgL_coercezd2tozd2;
   obj_t BgL_parentsz00;
   bool_t BgL_initzf3zf3;
   bool_t BgL_magiczf3zf3;
   obj_t BgL_z42z42;
   obj_t BgL_aliasz00;
   obj_t BgL_pointedzd2tozd2byz00;
   obj_t BgL_tvectorz00;
   obj_t BgL_locationz00;
   obj_t BgL_importzd2locationzd2;
} *BgL_typez00_bglt;

typedef struct BgL_valuez00_bgl {
   header_t header;
   obj_t widening;
} *BgL_valuez00_bglt;

typedef struct BgL_variablez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
} *BgL_variablez00_bglt;

typedef struct BgL_globalz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   obj_t BgL_modulez00;
   obj_t BgL_importz00;
   bool_t BgL_evaluablezf3zf3;
   bool_t BgL_libraryzf3zf3;
   bool_t BgL_userzf3zf3;
   obj_t BgL_pragmaz00;
   obj_t BgL_srcz00;
   obj_t BgL_jvmzd2typezd2namez00;
} *BgL_globalz00_bglt;

typedef struct BgL_localz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   bool_t BgL_userzf3zf3;
   long BgL_keyz00;
} *BgL_localz00_bglt;

typedef struct BgL_funz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
} *BgL_funz00_bglt;

typedef struct BgL_sfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_propertyz00;
   obj_t BgL_argsz00;
   obj_t BgL_bodyz00;
   obj_t BgL_classz00;
   obj_t BgL_dssslzd2keywordszd2;
   obj_t BgL_locz00;
} *BgL_sfunz00_bglt;

typedef struct BgL_cfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_argszd2typezd2;
   bool_t BgL_macrozf3zf3;
   bool_t BgL_infixzf3zf3;
   obj_t BgL_methodz00;
} *BgL_cfunz00_bglt;

typedef struct BgL_svarz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
} *BgL_svarz00_bglt;

typedef struct BgL_scnstz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_nodez00;
   obj_t BgL_classz00;
   obj_t BgL_locz00;
} *BgL_scnstz00_bglt;

typedef struct BgL_cvarz00_bgl {
   header_t header;
   obj_t widening;
   bool_t BgL_macrozf3zf3;
} *BgL_cvarz00_bglt;

typedef struct BgL_sexitz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_handlerz00;
   bool_t BgL_detachedzf3zf3;
} *BgL_sexitz00_bglt;

typedef struct BgL_feffectz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_readz00;
   obj_t BgL_writez00;
} *BgL_feffectz00_bglt;

typedef struct BgL_tclassz00_bgl {
   obj_t BgL_itszd2superzd2;
   obj_t BgL_slotsz00;
   struct BgL_globalz00_bgl * BgL_holderz00;
   obj_t BgL_wideningz00;
   long BgL_depthz00;
   bool_t BgL_finalzf3zf3;
   obj_t BgL_constructorz00;
   obj_t BgL_virtualzd2slotszd2numberz00;
   bool_t BgL_abstractzf3zf3;
   obj_t BgL_widezd2typezd2;
} *BgL_tclassz00_bglt;

typedef struct BgL_jclassz00_bgl {
   obj_t BgL_itszd2superzd2;
   obj_t BgL_slotsz00;
   obj_t BgL_packagez00;
} *BgL_jclassz00_bglt;

typedef struct BgL_wclassz00_bgl {
   obj_t BgL_itszd2classzd2;
} *BgL_wclassz00_bglt;


BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzobject_methodz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_argsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_miscz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_identz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_classz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_locationz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(long, char *);
BGL_EXPORTED_DECL obj_t BGl_makezd2methodzd2bodyz00zzobject_methodz00(obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
extern obj_t BGl_idzd2ofzd2idz00zzast_identz00(obj_t, obj_t);
static obj_t BGl_methodzd2initzd2zzobject_methodz00();
extern obj_t BGl_userzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_findzd2globalzd2zzast_envz00(obj_t, obj_t);
BGL_IMPORT obj_t open_input_string(obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
extern long BGl_arityz00zztools_argsz00(obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
extern obj_t BGl_tclassz00zzobject_classz00;
BGL_IMPORT obj_t BGl_gensymz00zz__r4_symbols_6_4z00;
extern obj_t BGl_globalz00zzast_varz00;
extern obj_t BGl_findzd2locationzd2zztools_locationz00(obj_t);
BGL_IMPORT obj_t BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(obj_t);
static obj_t BGl_cnstzd2initzd2zzobject_methodz00();
static obj_t BGl_importedzd2moduleszd2initz00zzobject_methodz00();
static obj_t BGl_requirezd2initializa7ationz75zzobject_methodz00 = BUNSPEC;
static obj_t BGl_libraryzd2moduleszd2initz00zzobject_methodz00();
extern obj_t BGl_markzd2symbolzd2nonzd2userz12zc0zzast_identz00(obj_t);
static obj_t BGl__makezd2methodzd2body2288z00zzobject_methodz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t __cnst[ 14 ] ;


DEFINE_STRING( BGl_string2302z00zzobject_methodz00, BgL_bgl_string2302za700za7za7object_methodza7002329z00, "(quote method-definition-error) add-method! begin cons* apply procedure? if @ find-super-class-method let call-next-method labels - next-method ", 144 );
DEFINE_STRING( BGl_string2301z00zzobject_methodz00, BgL_bgl_string2301za700za7za7object_methodza7002330z00, "method has a non-class dispatching type arg", 43 );
DEFINE_STRING( BGl_string2300z00zzobject_methodz00, BgL_bgl_string2300za700za7za7object_methodza7002331z00, "Can't find generic for method", 29 );
DEFINE_EXPORT_PROCEDURE( BGl_makezd2methodzd2bodyzd2envzd2zzobject_methodz00, BgL_bgl__makeza7d2methodza7d2body2288za700za7za7object_methodza7002332z00, BGl__makezd2methodzd2body2288z00zzobject_methodz00, 0L, 5 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzobject_methodz00(long BgL_checksumz00_682, char * BgL_fromz00_683)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzobject_methodz00))
{ 
BGl_requirezd2initializa7ationz75zzobject_methodz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzobject_methodz00(); 
BGl_cnstzd2initzd2zzobject_methodz00(); 
BGl_importedzd2moduleszd2initz00zzobject_methodz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzobject_methodz00()
{ AN_OBJECT;
{ /* ./Object/method.scm 15 */
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "object_method"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "object_method"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "object_method"); 
BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(((long)0), "object_method"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzobject_methodz00()
{ AN_OBJECT;
{ /* ./Object/method.scm 15 */
{ /* ./Object/method.scm 15 */
obj_t BgL_cportz00_675;
BgL_cportz00_675 = 
open_input_string(BGl_string2302z00zzobject_methodz00); 
{ 
long BgL_iz00_676;
BgL_iz00_676 = ((long)13); 
BgL_loopz00_677:
{ /* ./Object/method.scm 15 */
bool_t BgL_test2304z00_678;
BgL_test2304z00_678 = 
(BgL_iz00_676==((long)-1)); 
if(BgL_test2304z00_678)
{ /* ./Object/method.scm 15 */
return BUNSPEC;}  else 
{ /* ./Object/method.scm 15 */
{ /* ./Object/method.scm 15 */
obj_t BgL_arg2306z00_679;
{ /* ./Object/method.scm 15 */
obj_t BgL_list2309z00_680;
BgL_list2309z00_680 = 
MAKE_PAIR(BgL_cportz00_675, BNIL); 
BgL_arg2306z00_679 = 
BGl_readz00zz__readerz00(BgL_list2309z00_680); } 
{ /* ./Object/method.scm 15 */
int BgL_auxz00_699;
BgL_auxz00_699 = 
(int)(BgL_iz00_676); 
CNST_TABLE_SET(BgL_auxz00_699, BgL_arg2306z00_679); } } 
{ /* ./Object/method.scm 15 */
int BgL_auxz00_681;
{ /* ./Object/method.scm 15 */
long BgL_auxz00_702;
BgL_auxz00_702 = 
(BgL_iz00_676-((long)1)); 
BgL_auxz00_681 = 
(int)(BgL_auxz00_702); } 
{ 
long BgL_iz00_705;
BgL_iz00_705 = 
(long)(BgL_auxz00_681); 
BgL_iz00_676 = BgL_iz00_705; 
goto BgL_loopz00_677;} } } } } } } 
}



/* make-method-body */
BGL_EXPORTED_DEF obj_t BGl_makezd2methodzd2bodyz00zzobject_methodz00(obj_t BgL_idz00_1, obj_t BgL_argsz00_2, obj_t BgL_localsz00_3, obj_t BgL_bodyz00_4, obj_t BgL_srcz00_5)
{ AN_OBJECT;
{ /* ./Object/method.scm 30 */
{ /* ./Object/method.scm 31 */
obj_t BgL_idz00_331;
{ /* ./Object/method.scm 31 */
obj_t BgL_arg2126z00_464;
BgL_arg2126z00_464 = 
BGl_findzd2locationzd2zztools_locationz00(BgL_srcz00_5); 
BgL_idz00_331 = 
BGl_idzd2ofzd2idz00zzast_identz00(BgL_idz00_1, BgL_arg2126z00_464); } 
{ /* ./Object/method.scm 31 */
obj_t BgL_methodz00_332;
BgL_methodz00_332 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)0)), BEOA); 
{ /* ./Object/method.scm 32 */
long BgL_arityz00_333;
BgL_arityz00_333 = 
BGl_arityz00zztools_argsz00(BgL_argsz00_2); 
{ /* ./Object/method.scm 33 */
obj_t BgL_argszd2idzd2_334;
{ /* ./Object/method.scm 34 */
bool_t BgL_test2092z00_449;
BgL_test2092z00_449 = 
NULLP(BgL_localsz00_3); 
if(BgL_test2092z00_449)
{ /* ./Object/method.scm 34 */
BgL_argszd2idzd2_334 = BNIL; }  else 
{ /* ./Object/method.scm 34 */
obj_t BgL_head1810z00_450;
{ /* ./Object/method.scm 34 */
obj_t BgL_arg2115z00_461;
{ /* ./Object/method.scm 34 */
BgL_variablez00_bglt BgL_obj1093z00_604;
{ /* ./Object/method.scm 34 */
obj_t BgL_auxz00_715;
BgL_auxz00_715 = 
CAR(BgL_localsz00_3); 
BgL_obj1093z00_604 = 
(BgL_variablez00_bglt)(BgL_auxz00_715); } 
BgL_arg2115z00_461 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_604))->BgL_idz00); } 
BgL_head1810z00_450 = 
MAKE_PAIR(BgL_arg2115z00_461, BNIL); } 
{ 
obj_t BgL_l1808z00_451;obj_t BgL_tail1811z00_452;
{ /* ./Object/method.scm 34 */
obj_t BgL_arg2094z00_454;
BgL_arg2094z00_454 = 
CDR(BgL_localsz00_3); 
BgL_l1808z00_451 = BgL_arg2094z00_454; 
BgL_tail1811z00_452 = BgL_head1810z00_450; 
BgL_map1809z00_453:
{ /* ./Object/method.scm 34 */
bool_t BgL_test2097z00_455;
BgL_test2097z00_455 = 
NULLP(BgL_l1808z00_451); 
if(BgL_test2097z00_455)
{ /* ./Object/method.scm 34 */
BgL_argszd2idzd2_334 = BgL_head1810z00_450; }  else 
{ /* ./Object/method.scm 34 */
obj_t BgL_newtail1812z00_456;
{ /* ./Object/method.scm 34 */
obj_t BgL_arg2105z00_458;
{ /* ./Object/method.scm 34 */
BgL_variablez00_bglt BgL_obj1093z00_610;
{ /* ./Object/method.scm 34 */
obj_t BgL_auxz00_723;
BgL_auxz00_723 = 
CAR(BgL_l1808z00_451); 
BgL_obj1093z00_610 = 
(BgL_variablez00_bglt)(BgL_auxz00_723); } 
BgL_arg2105z00_458 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_610))->BgL_idz00); } 
BgL_newtail1812z00_456 = 
MAKE_PAIR(BgL_arg2105z00_458, BNIL); } 
SET_CDR(BgL_tail1811z00_452, BgL_newtail1812z00_456); 
{ /* ./Object/method.scm 34 */
obj_t BgL_arg2100z00_457;
BgL_arg2100z00_457 = 
CDR(BgL_l1808z00_451); 
{ 
obj_t BgL_tail1811z00_731;obj_t BgL_l1808z00_730;
BgL_l1808z00_730 = BgL_arg2100z00_457; 
BgL_tail1811z00_731 = BgL_newtail1812z00_456; 
BgL_tail1811z00_452 = BgL_tail1811z00_731; 
BgL_l1808z00_451 = BgL_l1808z00_730; 
goto BgL_map1809z00_453;} } } } } } } } 
{ /* ./Object/method.scm 34 */
BgL_typez00_bglt BgL_typez00_335;
{ /* ./Object/method.scm 35 */
BgL_variablez00_bglt BgL_obj1097z00_617;
{ /* ./Object/method.scm 35 */
obj_t BgL_auxz00_732;
BgL_auxz00_732 = 
CAR(BgL_localsz00_3); 
BgL_obj1097z00_617 = 
(BgL_variablez00_bglt)(BgL_auxz00_732); } 
BgL_typez00_335 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1097z00_617))->BgL_typez00); } 
{ /* ./Object/method.scm 35 */
obj_t BgL_mzd2idzd2_336;
{ /* ./Object/method.scm 41 */
obj_t BgL_arg2070z00_440;
{ /* ./Object/method.scm 41 */
obj_t BgL_arg2073z00_441;
{ /* ./Object/method.scm 41 */
obj_t BgL_arg2076z00_442;obj_t BgL_arg2077z00_443;
BgL_arg2076z00_442 = 
CNST_TABLE_REF(((long)1)); 
BgL_arg2077z00_443 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_335))->BgL_idz00); 
{ /* ./Object/method.scm 41 */
obj_t BgL_list2079z00_444;
{ /* ./Object/method.scm 41 */
obj_t BgL_arg2081z00_445;
{ /* ./Object/method.scm 41 */
obj_t BgL_arg2084z00_446;
BgL_arg2084z00_446 = 
MAKE_PAIR(BgL_arg2077z00_443, BNIL); 
BgL_arg2081z00_445 = 
MAKE_PAIR(BgL_arg2076z00_442, BgL_arg2084z00_446); } 
BgL_list2079z00_444 = 
MAKE_PAIR(BgL_idz00_331, BgL_arg2081z00_445); } 
BgL_arg2073z00_441 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2079z00_444); } } 
BgL_arg2070z00_440 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, BgL_arg2073z00_441, BEOA); } 
BgL_mzd2idzd2_336 = 
BGl_markzd2symbolzd2nonzd2userz12zc0zzast_identz00(BgL_arg2070z00_440); } 
{ /* ./Object/method.scm 40 */

{ /* ./Object/method.scm 42 */
bool_t BgL_test1813z00_337;
{ /* ./Object/method.scm 42 */
obj_t BgL_obj1607z00_619;
BgL_obj1607z00_619 = 
(obj_t)(BgL_typez00_335); 
BgL_test1813z00_337 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1607z00_619, BGl_tclassz00zzobject_classz00); } 
if(BgL_test1813z00_337)
{ /* ./Object/method.scm 44 */
BgL_globalz00_bglt BgL_holderz00_338;
{ /* ./Object/method.scm 44 */
BgL_tclassz00_bglt BgL_obj1615z00_620;
BgL_obj1615z00_620 = 
(BgL_tclassz00_bglt)(BgL_typez00_335); 
{ 
obj_t BgL_auxz00_749;
{ /* ./Object/method.scm 44 */
BgL_objectz00_bglt BgL_auxz00_750;
BgL_auxz00_750 = 
(BgL_objectz00_bglt)(BgL_obj1615z00_620); 
BgL_auxz00_749 = 
BGL_OBJECT_WIDENING(BgL_auxz00_750); } 
BgL_holderz00_338 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_749))->BgL_holderz00); } } 
{ /* ./Object/method.scm 44 */
obj_t BgL_modulez00_339;
BgL_modulez00_339 = 
(((BgL_globalz00_bglt)CREF(BgL_holderz00_338))->BgL_modulez00); 
{ /* ./Object/method.scm 45 */
obj_t BgL_genericz00_340;
BgL_genericz00_340 = 
BGl_findzd2globalzd2zzast_envz00(BgL_idz00_331, BNIL); 
{ /* ./Object/method.scm 46 */

{ /* ./Object/method.scm 48 */
bool_t BgL_test1814z00_341;
BgL_test1814z00_341 = 
BGl_iszd2azf3z21zz__objectz00(BgL_genericz00_340, BGl_globalz00zzast_varz00); 
if(BgL_test1814z00_341)
{ /* ./Object/method.scm 48 */
{ /* ./Object/method.scm 51 */
obj_t BgL_bodyz00_342;
{ /* ./Object/method.scm 51 */
obj_t BgL_arg1889z00_373;obj_t BgL_arg1890z00_374;
BgL_arg1889z00_373 = 
CNST_TABLE_REF(((long)2)); 
{ /* ./Object/method.scm 51 */
obj_t BgL_arg1893z00_375;obj_t BgL_arg1894z00_376;
{ /* ./Object/method.scm 51 */
obj_t BgL_arg1897z00_377;
{ /* ./Object/method.scm 51 */
obj_t BgL_arg1902z00_379;obj_t BgL_arg1904z00_380;
BgL_arg1902z00_379 = 
CNST_TABLE_REF(((long)3)); 
{ /* ./Object/method.scm 51 */
obj_t BgL_arg1911z00_382;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1915z00_383;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1919z00_385;obj_t BgL_arg1920z00_386;
BgL_arg1919z00_385 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1924z00_387;obj_t BgL_arg1925z00_388;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1928z00_389;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1933z00_391;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1936z00_392;
{ /* ./Object/method.scm 52 */
obj_t BgL_arg1941z00_394;obj_t BgL_arg1945z00_395;
BgL_arg1941z00_394 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./Object/method.scm 53 */
obj_t BgL_arg1948z00_396;obj_t BgL_arg1949z00_397;
BgL_arg1948z00_396 = 
CAR(BgL_argszd2idzd2_334); 
{ /* ./Object/method.scm 55 */
obj_t BgL_arg1953z00_398;
{ /* ./Object/method.scm 55 */
obj_t BgL_arg1956z00_399;
{ /* ./Object/method.scm 55 */
obj_t BgL_arg1962z00_401;obj_t BgL_arg1963z00_402;
BgL_arg1962z00_401 = 
CNST_TABLE_REF(((long)6)); 
{ /* ./Object/method.scm 55 */
obj_t BgL_arg1966z00_403;obj_t BgL_arg1968z00_404;
{ /* ./Object/method.scm 55 */
BgL_variablez00_bglt BgL_obj1093z00_624;
BgL_obj1093z00_624 = 
(BgL_variablez00_bglt)(BgL_holderz00_338); 
BgL_arg1966z00_403 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_624))->BgL_idz00); } 
BgL_arg1968z00_404 = 
MAKE_PAIR(BgL_modulez00_339, BNIL); 
BgL_arg1963z00_402 = 
MAKE_PAIR(BgL_arg1966z00_403, BgL_arg1968z00_404); } 
BgL_arg1956z00_399 = 
MAKE_PAIR(BgL_arg1962z00_401, BgL_arg1963z00_402); } 
BgL_arg1953z00_398 = 
MAKE_PAIR(BgL_arg1956z00_399, BNIL); } 
BgL_arg1949z00_397 = 
MAKE_PAIR(BgL_idz00_331, BgL_arg1953z00_398); } 
BgL_arg1945z00_395 = 
MAKE_PAIR(BgL_arg1948z00_396, BgL_arg1949z00_397); } 
BgL_arg1936z00_392 = 
MAKE_PAIR(BgL_arg1941z00_394, BgL_arg1945z00_395); } 
BgL_arg1933z00_391 = 
MAKE_PAIR(BgL_arg1936z00_392, BNIL); } 
BgL_arg1928z00_389 = 
MAKE_PAIR(BgL_methodz00_332, BgL_arg1933z00_391); } 
BgL_arg1924z00_387 = 
MAKE_PAIR(BgL_arg1928z00_389, BNIL); } 
{ /* ./Object/method.scm 57 */
obj_t BgL_arg1973z00_405;
{ /* ./Object/method.scm 57 */
obj_t BgL_arg1977z00_407;obj_t BgL_arg1978z00_408;
BgL_arg1977z00_407 = 
CNST_TABLE_REF(((long)7)); 
{ /* ./Object/method.scm 57 */
obj_t BgL_arg1981z00_409;obj_t BgL_arg1982z00_410;
{ /* ./Object/method.scm 57 */
obj_t BgL_arg1987z00_411;obj_t BgL_arg1988z00_412;
BgL_arg1987z00_411 = 
CNST_TABLE_REF(((long)8)); 
BgL_arg1988z00_412 = 
MAKE_PAIR(BgL_methodz00_332, BNIL); 
BgL_arg1981z00_409 = 
MAKE_PAIR(BgL_arg1987z00_411, BgL_arg1988z00_412); } 
{ /* ./Object/method.scm 58 */
obj_t BgL_arg1993z00_413;obj_t BgL_arg1994z00_414;
{ /* ./Object/method.scm 58 */
bool_t BgL_test1996z00_415;
BgL_test1996z00_415 = 
(BgL_arityz00_333>=((long)0)); 
if(BgL_test1996z00_415)
{ /* ./Object/method.scm 59 */
obj_t BgL_arg2000z00_416;
BgL_arg2000z00_416 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_argszd2idzd2_334, BNIL); 
BgL_arg1993z00_413 = 
MAKE_PAIR(BgL_methodz00_332, BgL_arg2000z00_416); }  else 
{ /* ./Object/method.scm 61 */
obj_t BgL_arg2005z00_417;obj_t BgL_arg2006z00_418;
BgL_arg2005z00_417 = 
CNST_TABLE_REF(((long)9)); 
{ /* ./Object/method.scm 61 */
obj_t BgL_arg2010z00_419;
{ /* ./Object/method.scm 61 */
obj_t BgL_arg2014z00_420;
{ /* ./Object/method.scm 61 */
obj_t BgL_arg2018z00_422;obj_t BgL_arg2019z00_423;
BgL_arg2018z00_422 = 
CNST_TABLE_REF(((long)10)); 
BgL_arg2019z00_423 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_argszd2idzd2_334, BNIL); 
BgL_arg2014z00_420 = 
MAKE_PAIR(BgL_arg2018z00_422, BgL_arg2019z00_423); } 
BgL_arg2010z00_419 = 
MAKE_PAIR(BgL_arg2014z00_420, BNIL); } 
BgL_arg2006z00_418 = 
MAKE_PAIR(BgL_methodz00_332, BgL_arg2010z00_419); } 
BgL_arg1993z00_413 = 
MAKE_PAIR(BgL_arg2005z00_417, BgL_arg2006z00_418); } } 
{ /* ./Object/method.scm 62 */
obj_t BgL_arg2025z00_424;
{ /* ./Object/method.scm 62 */
obj_t BgL_arg2029z00_426;obj_t BgL_arg2030z00_427;
BgL_arg2029z00_426 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./Object/method.scm 63 */
obj_t BgL_arg2033z00_428;
{ /* ./Object/method.scm 63 */
bool_t BgL_test2037z00_430;
BgL_test2037z00_430 = 
(BgL_arityz00_333>=((long)0)); 
if(BgL_test2037z00_430)
{ /* ./Object/method.scm 64 */
obj_t BgL_arg2040z00_431;
BgL_arg2040z00_431 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_argszd2idzd2_334, BNIL); 
BgL_arg2033z00_428 = 
MAKE_PAIR(BgL_idz00_331, BgL_arg2040z00_431); }  else 
{ /* ./Object/method.scm 67 */
obj_t BgL_arg2044z00_432;obj_t BgL_arg2045z00_433;
BgL_arg2044z00_432 = 
CNST_TABLE_REF(((long)9)); 
{ /* ./Object/method.scm 67 */
obj_t BgL_arg2048z00_434;
{ /* ./Object/method.scm 67 */
obj_t BgL_arg2051z00_435;
{ /* ./Object/method.scm 67 */
obj_t BgL_arg2055z00_437;obj_t BgL_arg2056z00_438;
BgL_arg2055z00_437 = 
CNST_TABLE_REF(((long)10)); 
BgL_arg2056z00_438 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_argszd2idzd2_334, BNIL); 
BgL_arg2051z00_435 = 
MAKE_PAIR(BgL_arg2055z00_437, BgL_arg2056z00_438); } 
BgL_arg2048z00_434 = 
MAKE_PAIR(BgL_arg2051z00_435, BNIL); } 
BgL_arg2045z00_433 = 
MAKE_PAIR(BgL_idz00_331, BgL_arg2048z00_434); } 
BgL_arg2033z00_428 = 
MAKE_PAIR(BgL_arg2044z00_432, BgL_arg2045z00_433); } } 
BgL_arg2030z00_427 = 
MAKE_PAIR(BgL_arg2033z00_428, BNIL); } 
BgL_arg2025z00_424 = 
MAKE_PAIR(BgL_arg2029z00_426, BgL_arg2030z00_427); } 
BgL_arg1994z00_414 = 
MAKE_PAIR(BgL_arg2025z00_424, BNIL); } 
BgL_arg1982z00_410 = 
MAKE_PAIR(BgL_arg1993z00_413, BgL_arg1994z00_414); } 
BgL_arg1978z00_408 = 
MAKE_PAIR(BgL_arg1981z00_409, BgL_arg1982z00_410); } 
BgL_arg1973z00_405 = 
MAKE_PAIR(BgL_arg1977z00_407, BgL_arg1978z00_408); } 
BgL_arg1925z00_388 = 
MAKE_PAIR(BgL_arg1973z00_405, BNIL); } 
BgL_arg1920z00_386 = 
MAKE_PAIR(BgL_arg1924z00_387, BgL_arg1925z00_388); } 
BgL_arg1915z00_383 = 
MAKE_PAIR(BgL_arg1919z00_385, BgL_arg1920z00_386); } 
BgL_arg1911z00_382 = 
MAKE_PAIR(BgL_arg1915z00_383, BNIL); } 
BgL_arg1904z00_380 = 
MAKE_PAIR(BNIL, BgL_arg1911z00_382); } 
BgL_arg1897z00_377 = 
MAKE_PAIR(BgL_arg1902z00_379, BgL_arg1904z00_380); } 
BgL_arg1893z00_375 = 
MAKE_PAIR(BgL_arg1897z00_377, BNIL); } 
BgL_arg1894z00_376 = 
MAKE_PAIR(BgL_bodyz00_4, BNIL); 
BgL_arg1890z00_374 = 
MAKE_PAIR(BgL_arg1893z00_375, BgL_arg1894z00_376); } 
BgL_bodyz00_342 = 
MAKE_PAIR(BgL_arg1889z00_373, BgL_arg1890z00_374); } 
{ /* ./Object/method.scm 51 */
obj_t BgL_ebodyz00_343;
{ /* ./Object/method.scm 69 */
bool_t BgL_test1878z00_369;
BgL_test1878z00_369 = 
EXTENDED_PAIRP(BgL_srcz00_5); 
if(BgL_test1878z00_369)
{ /* ./Object/method.scm 70 */
obj_t BgL_arg1880z00_370;obj_t BgL_arg1881z00_371;obj_t BgL_arg1882z00_372;
BgL_arg1880z00_370 = 
CAR(BgL_bodyz00_342); 
BgL_arg1881z00_371 = 
CDR(BgL_bodyz00_342); 
BgL_arg1882z00_372 = 
CER(BgL_srcz00_5); 
{ /* ./Object/method.scm 70 */
obj_t BgL_res2282z00_636;
BgL_res2282z00_636 = 
MAKE_EXTENDED_PAIR(BgL_arg1880z00_370, BgL_arg1881z00_371, BgL_arg1882z00_372); 
BgL_ebodyz00_343 = BgL_res2282z00_636; } }  else 
{ /* ./Object/method.scm 69 */
BgL_ebodyz00_343 = BgL_bodyz00_342; } } 
{ /* ./Object/method.scm 69 */
obj_t BgL_bdgz00_344;
{ /* ./Object/method.scm 72 */
obj_t BgL_arg1872z00_367;
{ /* ./Object/method.scm 72 */
obj_t BgL_arg1875z00_368;
BgL_arg1875z00_368 = 
MAKE_PAIR(BgL_ebodyz00_343, BNIL); 
BgL_arg1872z00_367 = 
MAKE_PAIR(BgL_argsz00_2, BgL_arg1875z00_368); } 
BgL_bdgz00_344 = 
MAKE_PAIR(BgL_mzd2idzd2_336, BgL_arg1872z00_367); } 
{ /* ./Object/method.scm 72 */
obj_t BgL_ebdgz00_345;
{ /* ./Object/method.scm 73 */
bool_t BgL_test1859z00_363;
BgL_test1859z00_363 = 
EXTENDED_PAIRP(BgL_srcz00_5); 
if(BgL_test1859z00_363)
{ /* ./Object/method.scm 74 */
obj_t BgL_arg1862z00_364;obj_t BgL_arg1864z00_365;obj_t BgL_arg1865z00_366;
BgL_arg1862z00_364 = 
CAR(BgL_bdgz00_344); 
BgL_arg1864z00_365 = 
CDR(BgL_bdgz00_344); 
BgL_arg1865z00_366 = 
CER(BgL_srcz00_5); 
{ /* ./Object/method.scm 74 */
obj_t BgL_res2283z00_644;
BgL_res2283z00_644 = 
MAKE_EXTENDED_PAIR(BgL_arg1862z00_364, BgL_arg1864z00_365, BgL_arg1865z00_366); 
BgL_ebdgz00_345 = BgL_res2283z00_644; } }  else 
{ /* ./Object/method.scm 73 */
BgL_ebdgz00_345 = BgL_bdgz00_344; } } 
{ /* ./Object/method.scm 73 */

{ /* ./Object/method.scm 76 */
obj_t BgL_arg1816z00_346;
{ /* ./Object/method.scm 76 */
obj_t BgL_arg1821z00_348;obj_t BgL_arg1822z00_349;
BgL_arg1821z00_348 = 
CNST_TABLE_REF(((long)2)); 
{ /* ./Object/method.scm 76 */
obj_t BgL_arg1825z00_350;obj_t BgL_arg1826z00_351;
BgL_arg1825z00_350 = 
MAKE_PAIR(BgL_ebdgz00_345, BNIL); 
{ /* ./Object/method.scm 77 */
obj_t BgL_arg1830z00_352;
{ /* ./Object/method.scm 77 */
obj_t BgL_arg1836z00_354;obj_t BgL_arg1837z00_355;
BgL_arg1836z00_354 = 
CNST_TABLE_REF(((long)12)); 
{ /* ./Object/method.scm 78 */
obj_t BgL_arg1840z00_356;
{ /* ./Object/method.scm 78 */
obj_t BgL_arg1843z00_357;obj_t BgL_arg1845z00_358;
{ /* ./Object/method.scm 78 */
obj_t BgL_arg1848z00_359;obj_t BgL_arg1849z00_360;
BgL_arg1848z00_359 = 
CNST_TABLE_REF(((long)6)); 
{ /* ./Object/method.scm 78 */
obj_t BgL_arg1853z00_361;obj_t BgL_arg1854z00_362;
{ /* ./Object/method.scm 78 */
BgL_variablez00_bglt BgL_obj1093z00_645;
BgL_obj1093z00_645 = 
(BgL_variablez00_bglt)(BgL_holderz00_338); 
BgL_arg1853z00_361 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_645))->BgL_idz00); } 
BgL_arg1854z00_362 = 
MAKE_PAIR(BgL_modulez00_339, BNIL); 
BgL_arg1849z00_360 = 
MAKE_PAIR(BgL_arg1853z00_361, BgL_arg1854z00_362); } 
BgL_arg1843z00_357 = 
MAKE_PAIR(BgL_arg1848z00_359, BgL_arg1849z00_360); } 
BgL_arg1845z00_358 = 
MAKE_PAIR(BgL_mzd2idzd2_336, BNIL); 
BgL_arg1840z00_356 = 
MAKE_PAIR(BgL_arg1843z00_357, BgL_arg1845z00_358); } 
BgL_arg1837z00_355 = 
MAKE_PAIR(BgL_idz00_331, BgL_arg1840z00_356); } 
BgL_arg1830z00_352 = 
MAKE_PAIR(BgL_arg1836z00_354, BgL_arg1837z00_355); } 
BgL_arg1826z00_351 = 
MAKE_PAIR(BgL_arg1830z00_352, BNIL); } 
BgL_arg1822z00_349 = 
MAKE_PAIR(BgL_arg1825z00_350, BgL_arg1826z00_351); } 
BgL_arg1816z00_346 = 
MAKE_PAIR(BgL_arg1821z00_348, BgL_arg1822z00_349); } 
{ /* ./Object/method.scm 76 */
obj_t BgL_list1818z00_347;
BgL_list1818z00_347 = 
MAKE_PAIR(BgL_arg1816z00_346, BNIL); 
return BgL_list1818z00_347;} } } } } } } }  else 
{ /* ./Object/method.scm 48 */
{ /* ./Object/method.scm 49 */
obj_t BgL_arg2132z00_651;
{ /* ./Object/method.scm 49 */
obj_t BgL_list2137z00_652;
{ /* ./Object/method.scm 49 */
obj_t BgL_auxz00_851;
BgL_auxz00_851 = 
CNST_TABLE_REF(((long)13)); 
BgL_list2137z00_652 = 
MAKE_PAIR(BgL_auxz00_851, BNIL); } 
BgL_arg2132z00_651 = BgL_list2137z00_652; } 
{ /* ./Object/method.scm 49 */
obj_t BgL_list2134z00_653;
BgL_list2134z00_653 = 
MAKE_PAIR(BgL_arg2132z00_651, BNIL); 
return 
BGl_userzd2errorzd2zztools_errorz00(BgL_idz00_331, BGl_string2300z00zzobject_methodz00, BgL_srcz00_5, BgL_list2134z00_653);} } } } } } } }  else 
{ /* ./Object/method.scm 43 */
obj_t BgL_arg2132z00_659;
{ /* ./Object/method.scm 43 */
obj_t BgL_list2137z00_660;
{ /* ./Object/method.scm 43 */
obj_t BgL_auxz00_856;
BgL_auxz00_856 = 
CNST_TABLE_REF(((long)13)); 
BgL_list2137z00_660 = 
MAKE_PAIR(BgL_auxz00_856, BNIL); } 
BgL_arg2132z00_659 = BgL_list2137z00_660; } 
{ /* ./Object/method.scm 43 */
obj_t BgL_list2134z00_661;
BgL_list2134z00_661 = 
MAKE_PAIR(BgL_arg2132z00_659, BNIL); 
return 
BGl_userzd2errorzd2zztools_errorz00(BgL_idz00_331, BGl_string2301z00zzobject_methodz00, BgL_srcz00_5, BgL_list2134z00_661);} } } } } } } } } } } 
}



/* _make-method-body2288 */
obj_t BGl__makezd2methodzd2body2288z00zzobject_methodz00(obj_t BgL_envz00_669, obj_t BgL_idz00_670, obj_t BgL_argsz00_671, obj_t BgL_localsz00_672, obj_t BgL_bodyz00_673, obj_t BgL_srcz00_674)
{ AN_OBJECT;
{ /* ./Object/method.scm 30 */
return 
BGl_makezd2methodzd2bodyz00zzobject_methodz00(BgL_idz00_670, BgL_argsz00_671, BgL_localsz00_672, BgL_bodyz00_673, BgL_srcz00_674);} 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzobject_methodz00()
{ AN_OBJECT;
{ /* ./Object/method.scm 15 */
return BUNSPEC;} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzobject_methodz00()
{ AN_OBJECT;
{ /* ./Object/method.scm 15 */
BGl_modulezd2initializa7ationz75zztools_argsz00(((long)42726), "object_method"); 
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "object_method"); 
BGl_modulezd2initializa7ationz75zztools_miscz00(((long)64117), "object_method"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "object_method"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "object_method"); 
BGl_modulezd2initializa7ationz75zzast_identz00(((long)51504), "object_method"); 
BGl_modulezd2initializa7ationz75zzast_envz00(((long)62031), "object_method"); 
BGl_modulezd2initializa7ationz75zzobject_classz00(((long)30791), "object_method"); 
return 
BGl_modulezd2initializa7ationz75zztools_locationz00(((long)32118), "object_method");} 
}

