/*===========================================================================*/
/*   (Object/struct.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/struct.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;

typedef struct BgL_slotz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_srcz00;
   obj_t BgL_classzd2ownerzd2;
   obj_t BgL_typez00;
   bool_t BgL_readzd2onlyzf3z21;
   obj_t BgL_defaultzd2valuezd2;
   obj_t BgL_virtualzd2numzd2;
   obj_t BgL_getterz00;
   obj_t BgL_setterz00;
   obj_t BgL_indexedz00;
   obj_t BgL_userzd2infozd2;
} *BgL_slotz00_bglt;


BGL_EXPORTED_DECL obj_t BGl_genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00(BgL_typez00_bglt, obj_t);
BGL_IMPORT obj_t BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_methodzd2initzd2zzobject_structz00();
static obj_t BGl_savezd2slotzd2zzobject_structz00(obj_t, obj_t, obj_t, long, obj_t);
BGL_IMPORT obj_t open_input_string(obj_t);
extern obj_t BGl_makezd2pragmazd2directzd2setz12zc0zzobject_toolsz00(BgL_typez00_bglt, BgL_slotz00_bglt, obj_t, obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
extern obj_t BGl_makezd2pragmazd2indexedzd2setz12zc0zzobject_toolsz00(BgL_typez00_bglt, BgL_slotz00_bglt, obj_t, obj_t, obj_t);
static obj_t BGl_genzd2structzd2ze3widezd2classz31zzobject_structz00(obj_t, BgL_typez00_bglt, obj_t, obj_t);
static obj_t BGl_restorezd2slotzd2zzobject_structz00(obj_t, obj_t, obj_t, BgL_typez00_bglt, long, obj_t);
extern obj_t BGl_za2targetzd2languageza2zd2zzengine_paramz00;
BGL_IMPORT obj_t BGl_gensymz00zz__r4_symbols_6_4z00;
extern obj_t BGl_makezd2pragmazd2indexedzd2initzd2setz12z12zzobject_toolsz00(BgL_typez00_bglt, BgL_slotz00_bglt, obj_t, obj_t);
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
static obj_t BGl_cnstzd2initzd2zzobject_structz00();
static obj_t BGl_genzd2widezd2classzd2ze3structz31zzobject_structz00(obj_t, BgL_typez00_bglt, obj_t, obj_t);
static obj_t BGl__genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00(obj_t, obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzobject_structz00();
BGL_EXPORTED_DECL obj_t BGl_genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00(BgL_typez00_bglt, obj_t);
static obj_t BGl_genzd2structzd2ze3plainzd2classz31zzobject_structz00(obj_t, BgL_typez00_bglt, obj_t, obj_t);
extern obj_t BGl_makezd2typedzd2identz00zzast_identz00(obj_t, obj_t);
BGL_IMPORT obj_t string_append_3(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzobject_structz00(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_modulezd2initializa7ationz75zztype_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_cachez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_toolsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_identz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_classz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_toolsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_slotsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_privatez00(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_IMPORT obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
extern bool_t BGl_slotzd2virtualzf3z21zzobject_slotsz00(BgL_slotz00_bglt);
extern obj_t BGl_za2heapzd2debugza2zd2zzengine_paramz00;
static obj_t BGl_genzd2plainzd2classzd2ze3structz31zzobject_structz00(obj_t, BgL_typez00_bglt, obj_t, obj_t);
static obj_t BGl__genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00(obj_t, obj_t, obj_t);
extern obj_t BGl_epairifyz00zztools_miscz00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(obj_t);
static long BGl_slotszd2lengthzd2zzobject_structz00(obj_t);
extern obj_t BGl_makezd2privatezd2sexpz00zzast_privatez00(obj_t, obj_t, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zzobject_structz00 = BUNSPEC;
static obj_t BGl_libraryzd2moduleszd2initz00zzobject_structz00();
static obj_t __cnst[ 49 ] ;


DEFINE_STRING( BGl_string3349z00zzobject_structz00, BgL_bgl_string3349za700za7za7object_structza7003376z00, "object-mark-producer! @ class-num object-class-num-set! pragma cast (jvm .net) new old object-widening-set! s::struct struct+object->object::object vector-ref-ur done o vector-length s struct-ref f ::long v i struct-key struct-key-set! call-next-method aux ::struct quote make-struct object->struct::struct define-method res obj +fx -ref vector-set-ur! begin struct-set! =fx if labels make-vector -len - let len loop j vec ", 423 );
DEFINE_STRING( BGl_string3348z00zzobject_structz00, BgL_bgl_string3348za700za7za7object_structza7003377z00, ")($1))", 6 );
DEFINE_STRING( BGl_string3347z00zzobject_structz00, BgL_bgl_string3347za700za7za7object_structza7003378z00, "((", 2 );
DEFINE_STRING( BGl_string3346z00zzobject_structz00, BgL_bgl_string3346za700za7za7object_structza7003379z00, "dynamically indexed slots are not supported yet in -gbdb2 mode", 62 );
DEFINE_STRING( BGl_string3345z00zzobject_structz00, BgL_bgl_string3345za700za7za7object_structza7003380z00, "restore-slot", 12 );
DEFINE_EXPORT_PROCEDURE( BGl_genzd2plainzd2classzc3zd2ze3structzd2envz20zzobject_structz00, BgL_bgl__genza7d2plainza7d2classza7c3za7d2za7e3structza7f2za7za7object_structza7003381za7, BGl__genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_genzd2widezd2classzc3zd2ze3structzd2envz20zzobject_structz00, BgL_bgl__genza7d2wideza7d2classza7c3za7d2za7e3structza7f2za7za7object_structza7003382za7, BGl__genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00, 0L, 2 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzobject_structz00(long BgL_checksumz00_1197, char * BgL_fromz00_1198)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzobject_structz00))
{ 
BGl_requirezd2initializa7ationz75zzobject_structz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzobject_structz00(); 
BGl_cnstzd2initzd2zzobject_structz00(); 
BGl_importedzd2moduleszd2initz00zzobject_structz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzobject_structz00()
{ AN_OBJECT;
{ /* ./Object/struct.scm 15 */
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "object_struct"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "object_struct"); 
BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(((long)0), "object_struct"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzobject_structz00()
{ AN_OBJECT;
{ /* ./Object/struct.scm 15 */
{ /* ./Object/struct.scm 15 */
obj_t BgL_cportz00_1190;
BgL_cportz00_1190 = 
open_input_string(BGl_string3349z00zzobject_structz00); 
{ 
long BgL_iz00_1191;
BgL_iz00_1191 = ((long)48); 
BgL_loopz00_1192:
{ /* ./Object/struct.scm 15 */
bool_t BgL_test3351z00_1193;
BgL_test3351z00_1193 = 
(BgL_iz00_1191==((long)-1)); 
if(BgL_test3351z00_1193)
{ /* ./Object/struct.scm 15 */
return BUNSPEC;}  else 
{ /* ./Object/struct.scm 15 */
{ /* ./Object/struct.scm 15 */
obj_t BgL_arg3354z00_1194;
{ /* ./Object/struct.scm 15 */
obj_t BgL_list3357z00_1195;
BgL_list3357z00_1195 = 
MAKE_PAIR(BgL_cportz00_1190, BNIL); 
BgL_arg3354z00_1194 = 
BGl_readz00zz__readerz00(BgL_list3357z00_1195); } 
{ /* ./Object/struct.scm 15 */
int BgL_auxz00_1213;
BgL_auxz00_1213 = 
(int)(BgL_iz00_1191); 
CNST_TABLE_SET(BgL_auxz00_1213, BgL_arg3354z00_1194); } } 
{ /* ./Object/struct.scm 15 */
int BgL_auxz00_1196;
{ /* ./Object/struct.scm 15 */
long BgL_auxz00_1216;
BgL_auxz00_1216 = 
(BgL_iz00_1191-((long)1)); 
BgL_auxz00_1196 = 
(int)(BgL_auxz00_1216); } 
{ 
long BgL_iz00_1219;
BgL_iz00_1219 = 
(long)(BgL_auxz00_1196); 
BgL_iz00_1191 = BgL_iz00_1219; 
goto BgL_loopz00_1192;} } } } } } } 
}



/* gen-plain-class<->struct */
BGL_EXPORTED_DEF obj_t BGl_genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00(BgL_typez00_bglt BgL_classz00_1, obj_t BgL_srczd2defzd2_2)
{ AN_OBJECT;
{ /* ./Object/struct.scm 37 */
{ /* ./Object/struct.scm 39 */
bool_t BgL_test1870z00_388;
{ /* ./Object/struct.scm 39 */
BgL_tclassz00_bglt BgL_obj1626z00_1102;
BgL_obj1626z00_1102 = 
(BgL_tclassz00_bglt)(BgL_classz00_1); 
{ 
obj_t BgL_auxz00_1222;
{ /* ./Object/struct.scm 39 */
BgL_objectz00_bglt BgL_auxz00_1223;
BgL_auxz00_1223 = 
(BgL_objectz00_bglt)(BgL_obj1626z00_1102); 
BgL_auxz00_1222 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1223); } 
BgL_test1870z00_388 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1222))->BgL_abstractzf3zf3); } } 
if(BgL_test1870z00_388)
{ /* ./Object/struct.scm 39 */
return BNIL;}  else 
{ /* ./Object/struct.scm 41 */
obj_t BgL_arg1872z00_389;obj_t BgL_arg1873z00_390;
{ /* ./Object/struct.scm 41 */
obj_t BgL_arg1881z00_393;obj_t BgL_arg1882z00_394;
BgL_arg1881z00_393 = 
(((BgL_typez00_bglt)CREF(BgL_classz00_1))->BgL_idz00); 
{ /* ./Object/struct.scm 41 */
BgL_tclassz00_bglt BgL_obj1612z00_1104;
BgL_obj1612z00_1104 = 
(BgL_tclassz00_bglt)(BgL_classz00_1); 
{ 
obj_t BgL_auxz00_1230;
{ /* ./Object/struct.scm 41 */
BgL_objectz00_bglt BgL_auxz00_1231;
BgL_auxz00_1231 = 
(BgL_objectz00_bglt)(BgL_obj1612z00_1104); 
BgL_auxz00_1230 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1231); } 
BgL_arg1882z00_394 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1230))->BgL_slotsz00); } } 
BgL_arg1872z00_389 = 
BGl_genzd2plainzd2classzd2ze3structz31zzobject_structz00(BgL_arg1881z00_393, BgL_classz00_1, BgL_arg1882z00_394, BgL_srczd2defzd2_2); } 
{ /* ./Object/struct.scm 42 */
obj_t BgL_arg1887z00_395;obj_t BgL_arg1888z00_396;
BgL_arg1887z00_395 = 
(((BgL_typez00_bglt)CREF(BgL_classz00_1))->BgL_idz00); 
{ /* ./Object/struct.scm 42 */
BgL_tclassz00_bglt BgL_obj1612z00_1106;
BgL_obj1612z00_1106 = 
(BgL_tclassz00_bglt)(BgL_classz00_1); 
{ 
obj_t BgL_auxz00_1238;
{ /* ./Object/struct.scm 42 */
BgL_objectz00_bglt BgL_auxz00_1239;
BgL_auxz00_1239 = 
(BgL_objectz00_bglt)(BgL_obj1612z00_1106); 
BgL_auxz00_1238 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1239); } 
BgL_arg1888z00_396 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1238))->BgL_slotsz00); } } 
BgL_arg1873z00_390 = 
BGl_genzd2structzd2ze3plainzd2classz31zzobject_structz00(BgL_arg1887z00_395, BgL_classz00_1, BgL_arg1888z00_396, BgL_srczd2defzd2_2); } 
{ /* ./Object/struct.scm 41 */
obj_t BgL_list1875z00_391;
{ /* ./Object/struct.scm 41 */
obj_t BgL_arg1877z00_392;
BgL_arg1877z00_392 = 
MAKE_PAIR(BgL_arg1873z00_390, BNIL); 
BgL_list1875z00_391 = 
MAKE_PAIR(BgL_arg1872z00_389, BgL_arg1877z00_392); } 
return BgL_list1875z00_391;} } } } 
}



/* _gen-plain-class<->struct */
obj_t BGl__genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00(obj_t BgL_envz00_1184, obj_t BgL_classz00_1185, obj_t BgL_srczd2defzd2_1186)
{ AN_OBJECT;
{ /* ./Object/struct.scm 37 */
return 
BGl_genzd2plainzd2classzc3zd2ze3structzf2zzobject_structz00(
(BgL_typez00_bglt)(BgL_classz00_1185), BgL_srczd2defzd2_1186);} 
}



/* gen-wide-class<->struct */
BGL_EXPORTED_DEF obj_t BGl_genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00(BgL_typez00_bglt BgL_classz00_3, obj_t BgL_srczd2defzd2_4)
{ AN_OBJECT;
{ /* ./Object/struct.scm 47 */
{ /* ./Object/struct.scm 49 */
obj_t BgL_arg1894z00_398;obj_t BgL_arg1895z00_399;
{ /* ./Object/struct.scm 49 */
obj_t BgL_arg1906z00_402;obj_t BgL_arg1908z00_403;
BgL_arg1906z00_402 = 
(((BgL_typez00_bglt)CREF(BgL_classz00_3))->BgL_idz00); 
{ /* ./Object/struct.scm 49 */
BgL_tclassz00_bglt BgL_obj1612z00_1110;
BgL_obj1612z00_1110 = 
(BgL_tclassz00_bglt)(BgL_classz00_3); 
{ 
obj_t BgL_auxz00_1250;
{ /* ./Object/struct.scm 49 */
BgL_objectz00_bglt BgL_auxz00_1251;
BgL_auxz00_1251 = 
(BgL_objectz00_bglt)(BgL_obj1612z00_1110); 
BgL_auxz00_1250 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1251); } 
BgL_arg1908z00_403 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1250))->BgL_slotsz00); } } 
BgL_arg1894z00_398 = 
BGl_genzd2widezd2classzd2ze3structz31zzobject_structz00(BgL_arg1906z00_402, BgL_classz00_3, BgL_arg1908z00_403, BgL_srczd2defzd2_4); } 
{ /* ./Object/struct.scm 50 */
obj_t BgL_arg1915z00_404;obj_t BgL_arg1916z00_405;
BgL_arg1915z00_404 = 
(((BgL_typez00_bglt)CREF(BgL_classz00_3))->BgL_idz00); 
{ /* ./Object/struct.scm 50 */
BgL_tclassz00_bglt BgL_obj1612z00_1112;
BgL_obj1612z00_1112 = 
(BgL_tclassz00_bglt)(BgL_classz00_3); 
{ 
obj_t BgL_auxz00_1258;
{ /* ./Object/struct.scm 50 */
BgL_objectz00_bglt BgL_auxz00_1259;
BgL_auxz00_1259 = 
(BgL_objectz00_bglt)(BgL_obj1612z00_1112); 
BgL_auxz00_1258 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1259); } 
BgL_arg1916z00_405 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1258))->BgL_slotsz00); } } 
BgL_arg1895z00_399 = 
BGl_genzd2structzd2ze3widezd2classz31zzobject_structz00(BgL_arg1915z00_404, BgL_classz00_3, BgL_arg1916z00_405, BgL_srczd2defzd2_4); } 
{ /* ./Object/struct.scm 49 */
obj_t BgL_list1897z00_400;
{ /* ./Object/struct.scm 49 */
obj_t BgL_arg1902z00_401;
BgL_arg1902z00_401 = 
MAKE_PAIR(BgL_arg1895z00_399, BNIL); 
BgL_list1897z00_400 = 
MAKE_PAIR(BgL_arg1894z00_398, BgL_arg1902z00_401); } 
return BgL_list1897z00_400;} } } 
}



/* _gen-wide-class<->struct */
obj_t BGl__genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00(obj_t BgL_envz00_1187, obj_t BgL_classz00_1188, obj_t BgL_srczd2defzd2_1189)
{ AN_OBJECT;
{ /* ./Object/struct.scm 47 */
return 
BGl_genzd2widezd2classzc3zd2ze3structzf2zzobject_structz00(
(BgL_typez00_bglt)(BgL_classz00_1188), BgL_srczd2defzd2_1189);} 
}



/* save-slot */
obj_t BGl_savezd2slotzd2zzobject_structz00(obj_t BgL_onamez00_5, obj_t BgL_snamez00_6, obj_t BgL_cnamez00_7, long BgL_iz00_8, obj_t BgL_slotz00_9)
{ AN_OBJECT;
{ /* ./Object/struct.scm 55 */
{ 

{ /* ./Object/struct.scm 83 */
bool_t BgL_test1920z00_408;
BgL_test1920z00_408 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_slotz00_9)); 
if(BgL_test1920z00_408)
{ /* ./Object/struct.scm 83 */
return BUNSPEC;}  else 
{ /* ./Object/struct.scm 85 */
bool_t BgL_test1922z00_409;
{ /* ./Object/struct.scm 85 */
BgL_slotz00_bglt BgL_obj1824z00_1115;
BgL_obj1824z00_1115 = 
(BgL_slotz00_bglt)(BgL_slotz00_9); 
{ /* ./Object/struct.scm 85 */
obj_t BgL_auxz00_1272;
BgL_auxz00_1272 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1824z00_1115))->BgL_indexedz00); 
BgL_test1922z00_409 = 
CBOOL(BgL_auxz00_1272); } } 
if(BgL_test1922z00_409)
{ /* ./Object/struct.scm 85 */
{ /* ./Object/struct.scm 62 */
obj_t BgL_vecz00_411;obj_t BgL_jz00_412;obj_t BgL_loopz00_413;obj_t BgL_lenz00_414;
BgL_vecz00_411 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)0)), BEOA); 
BgL_jz00_412 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)1)), BEOA); 
BgL_loopz00_413 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)2)), BEOA); 
BgL_lenz00_414 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)3)), BEOA); 
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1930z00_415;obj_t BgL_arg1931z00_416;
BgL_arg1930z00_415 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1934z00_417;obj_t BgL_arg1935z00_418;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1938z00_419;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1945z00_421;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1948z00_422;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1952z00_424;obj_t BgL_arg1953z00_425;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1956z00_426;obj_t BgL_arg1958z00_427;obj_t BgL_arg1960z00_428;
BgL_arg1956z00_426 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./Object/struct.scm 66 */
BgL_slotz00_bglt BgL_obj1808z00_1116;
BgL_obj1808z00_1116 = 
(BgL_slotz00_bglt)(BgL_slotz00_9); 
BgL_arg1958z00_427 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1808z00_1116))->BgL_idz00); } 
BgL_arg1960z00_428 = 
CNST_TABLE_REF(((long)6)); 
{ /* ./Object/struct.scm 66 */
obj_t BgL_list1962z00_429;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1964z00_430;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1968z00_431;
{ /* ./Object/struct.scm 66 */
obj_t BgL_arg1971z00_432;
BgL_arg1971z00_432 = 
MAKE_PAIR(BgL_arg1960z00_428, BNIL); 
BgL_arg1968z00_431 = 
MAKE_PAIR(BgL_arg1958z00_427, BgL_arg1971z00_432); } 
BgL_arg1964z00_430 = 
MAKE_PAIR(BgL_arg1956z00_426, BgL_arg1968z00_431); } 
BgL_list1962z00_429 = 
MAKE_PAIR(BgL_cnamez00_7, BgL_arg1964z00_430); } 
BgL_arg1952z00_424 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list1962z00_429); } } 
BgL_arg1953z00_425 = 
MAKE_PAIR(BgL_onamez00_5, BNIL); 
BgL_arg1948z00_422 = 
MAKE_PAIR(BgL_arg1952z00_424, BgL_arg1953z00_425); } 
BgL_arg1945z00_421 = 
MAKE_PAIR(BgL_arg1948z00_422, BNIL); } 
BgL_arg1938z00_419 = 
MAKE_PAIR(BgL_lenz00_414, BgL_arg1945z00_421); } 
BgL_arg1934z00_417 = 
MAKE_PAIR(BgL_arg1938z00_419, BNIL); } 
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg1977z00_433;
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg1981z00_435;obj_t BgL_arg1982z00_436;
BgL_arg1981z00_435 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg1987z00_437;obj_t BgL_arg1988z00_438;
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg1993z00_439;
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg2000z00_441;
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg2005z00_442;
{ /* ./Object/struct.scm 67 */
obj_t BgL_arg2010z00_444;obj_t BgL_arg2011z00_445;
BgL_arg2010z00_444 = 
CNST_TABLE_REF(((long)7)); 
BgL_arg2011z00_445 = 
MAKE_PAIR(BgL_lenz00_414, BNIL); 
BgL_arg2005z00_442 = 
MAKE_PAIR(BgL_arg2010z00_444, BgL_arg2011z00_445); } 
BgL_arg2000z00_441 = 
MAKE_PAIR(BgL_arg2005z00_442, BNIL); } 
BgL_arg1993z00_439 = 
MAKE_PAIR(BgL_vecz00_411, BgL_arg2000z00_441); } 
BgL_arg1987z00_437 = 
MAKE_PAIR(BgL_arg1993z00_439, BNIL); } 
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2015z00_446;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2019z00_448;obj_t BgL_arg2021z00_449;
BgL_arg2019z00_448 = 
CNST_TABLE_REF(((long)8)); 
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2025z00_450;obj_t BgL_arg2026z00_451;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2029z00_452;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2033z00_454;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2037z00_455;obj_t BgL_arg2038z00_456;
BgL_arg2037z00_455 = 
MAKE_PAIR(BgL_jz00_412, BNIL); 
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2042z00_457;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2046z00_459;obj_t BgL_arg2047z00_460;
BgL_arg2046z00_459 = 
CNST_TABLE_REF(((long)9)); 
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2050z00_461;obj_t BgL_arg2051z00_462;
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2054z00_463;obj_t BgL_arg2055z00_464;
BgL_arg2054z00_463 = 
CNST_TABLE_REF(((long)10)); 
{ /* ./Object/struct.scm 68 */
obj_t BgL_arg2058z00_465;
BgL_arg2058z00_465 = 
MAKE_PAIR(BgL_lenz00_414, BNIL); 
BgL_arg2055z00_464 = 
MAKE_PAIR(BgL_jz00_412, BgL_arg2058z00_465); } 
BgL_arg2050z00_461 = 
MAKE_PAIR(BgL_arg2054z00_463, BgL_arg2055z00_464); } 
{ /* ./Object/struct.scm 69 */
obj_t BgL_arg2062z00_466;obj_t BgL_arg2063z00_467;
{ /* ./Object/struct.scm 69 */
obj_t BgL_arg2066z00_468;obj_t BgL_arg2067z00_469;
BgL_arg2066z00_468 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./Object/struct.scm 69 */
obj_t BgL_arg2070z00_470;
{ /* ./Object/struct.scm 69 */
obj_t BgL_arg2073z00_471;
BgL_arg2073z00_471 = 
MAKE_PAIR(BgL_vecz00_411, BNIL); 
{ /* ./Object/struct.scm 69 */
obj_t BgL_auxz00_1319;
BgL_auxz00_1319 = 
BINT(BgL_iz00_8); 
BgL_arg2070z00_470 = 
MAKE_PAIR(BgL_auxz00_1319, BgL_arg2073z00_471); } } 
BgL_arg2067z00_469 = 
MAKE_PAIR(BgL_snamez00_6, BgL_arg2070z00_470); } 
BgL_arg2062z00_466 = 
MAKE_PAIR(BgL_arg2066z00_468, BgL_arg2067z00_469); } 
{ /* ./Object/struct.scm 70 */
obj_t BgL_arg2077z00_472;
{ /* ./Object/struct.scm 70 */
obj_t BgL_arg2081z00_474;obj_t BgL_arg2082z00_475;
BgL_arg2081z00_474 = 
CNST_TABLE_REF(((long)12)); 
{ /* ./Object/struct.scm 71 */
obj_t BgL_arg2085z00_476;obj_t BgL_arg2086z00_477;
{ /* ./Object/struct.scm 71 */
obj_t BgL_arg2089z00_478;obj_t BgL_arg2090z00_479;
BgL_arg2089z00_478 = 
CNST_TABLE_REF(((long)13)); 
{ /* ./Object/struct.scm 75 */
obj_t BgL_arg2093z00_480;
{ /* ./Object/struct.scm 75 */
obj_t BgL_arg2096z00_481;
{ /* ./Object/struct.scm 75 */
obj_t BgL_arg2099z00_482;
{ /* ./Object/struct.scm 75 */
obj_t BgL_arg2103z00_484;obj_t BgL_arg2105z00_485;
{ /* ./Object/struct.scm 75 */
obj_t BgL_arg2108z00_486;obj_t BgL_arg2109z00_487;obj_t BgL_arg2111z00_488;
BgL_arg2108z00_486 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./Object/struct.scm 76 */
BgL_slotz00_bglt BgL_obj1808z00_1117;
BgL_obj1808z00_1117 = 
(BgL_slotz00_bglt)(BgL_slotz00_9); 
BgL_arg2109z00_487 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1808z00_1117))->BgL_idz00); } 
BgL_arg2111z00_488 = 
CNST_TABLE_REF(((long)14)); 
{ /* ./Object/struct.scm 74 */
obj_t BgL_list2113z00_489;
{ /* ./Object/struct.scm 74 */
obj_t BgL_arg2115z00_490;
{ /* ./Object/struct.scm 74 */
obj_t BgL_arg2118z00_491;
{ /* ./Object/struct.scm 74 */
obj_t BgL_arg2122z00_492;
BgL_arg2122z00_492 = 
MAKE_PAIR(BgL_arg2111z00_488, BNIL); 
BgL_arg2118z00_491 = 
MAKE_PAIR(BgL_arg2109z00_487, BgL_arg2122z00_492); } 
BgL_arg2115z00_490 = 
MAKE_PAIR(BgL_arg2108z00_486, BgL_arg2118z00_491); } 
BgL_list2113z00_489 = 
MAKE_PAIR(BgL_cnamez00_7, BgL_arg2115z00_490); } 
BgL_arg2103z00_484 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2113z00_489); } } 
{ /* ./Object/struct.scm 74 */
obj_t BgL_arg2127z00_493;
BgL_arg2127z00_493 = 
MAKE_PAIR(BgL_jz00_412, BNIL); 
BgL_arg2105z00_485 = 
MAKE_PAIR(BgL_onamez00_5, BgL_arg2127z00_493); } 
BgL_arg2099z00_482 = 
MAKE_PAIR(BgL_arg2103z00_484, BgL_arg2105z00_485); } 
BgL_arg2096z00_481 = 
MAKE_PAIR(BgL_arg2099z00_482, BNIL); } 
BgL_arg2093z00_480 = 
MAKE_PAIR(BgL_jz00_412, BgL_arg2096z00_481); } 
BgL_arg2090z00_479 = 
MAKE_PAIR(BgL_vecz00_411, BgL_arg2093z00_480); } 
BgL_arg2085z00_476 = 
MAKE_PAIR(BgL_arg2089z00_478, BgL_arg2090z00_479); } 
{ /* ./Object/struct.scm 80 */
obj_t BgL_arg2132z00_494;
{ /* ./Object/struct.scm 80 */
obj_t BgL_arg2136z00_496;
{ /* ./Object/struct.scm 80 */
obj_t BgL_arg2139z00_497;
{ /* ./Object/struct.scm 80 */
obj_t BgL_arg2144z00_499;obj_t BgL_arg2145z00_500;
BgL_arg2144z00_499 = 
CNST_TABLE_REF(((long)15)); 
{ /* ./Object/struct.scm 80 */
obj_t BgL_arg2148z00_501;
{ /* ./Object/struct.scm 80 */
obj_t BgL_auxz00_1343;
BgL_auxz00_1343 = 
BINT(((long)1)); 
BgL_arg2148z00_501 = 
MAKE_PAIR(BgL_auxz00_1343, BNIL); } 
BgL_arg2145z00_500 = 
MAKE_PAIR(BgL_jz00_412, BgL_arg2148z00_501); } 
BgL_arg2139z00_497 = 
MAKE_PAIR(BgL_arg2144z00_499, BgL_arg2145z00_500); } 
BgL_arg2136z00_496 = 
MAKE_PAIR(BgL_arg2139z00_497, BNIL); } 
BgL_arg2132z00_494 = 
MAKE_PAIR(BgL_loopz00_413, BgL_arg2136z00_496); } 
BgL_arg2086z00_477 = 
MAKE_PAIR(BgL_arg2132z00_494, BNIL); } 
BgL_arg2082z00_475 = 
MAKE_PAIR(BgL_arg2085z00_476, BgL_arg2086z00_477); } 
BgL_arg2077z00_472 = 
MAKE_PAIR(BgL_arg2081z00_474, BgL_arg2082z00_475); } 
BgL_arg2063z00_467 = 
MAKE_PAIR(BgL_arg2077z00_472, BNIL); } 
BgL_arg2051z00_462 = 
MAKE_PAIR(BgL_arg2062z00_466, BgL_arg2063z00_467); } 
BgL_arg2047z00_460 = 
MAKE_PAIR(BgL_arg2050z00_461, BgL_arg2051z00_462); } 
BgL_arg2042z00_457 = 
MAKE_PAIR(BgL_arg2046z00_459, BgL_arg2047z00_460); } 
BgL_arg2038z00_456 = 
MAKE_PAIR(BgL_arg2042z00_457, BNIL); } 
BgL_arg2033z00_454 = 
MAKE_PAIR(BgL_arg2037z00_455, BgL_arg2038z00_456); } 
BgL_arg2029z00_452 = 
MAKE_PAIR(BgL_loopz00_413, BgL_arg2033z00_454); } 
BgL_arg2025z00_450 = 
MAKE_PAIR(BgL_arg2029z00_452, BNIL); } 
{ /* ./Object/struct.scm 81 */
obj_t BgL_arg2152z00_502;
{ /* ./Object/struct.scm 81 */
obj_t BgL_arg2156z00_504;
{ /* ./Object/struct.scm 81 */
obj_t BgL_auxz00_1361;
BgL_auxz00_1361 = 
BINT(((long)0)); 
BgL_arg2156z00_504 = 
MAKE_PAIR(BgL_auxz00_1361, BNIL); } 
BgL_arg2152z00_502 = 
MAKE_PAIR(BgL_loopz00_413, BgL_arg2156z00_504); } 
BgL_arg2026z00_451 = 
MAKE_PAIR(BgL_arg2152z00_502, BNIL); } 
BgL_arg2021z00_449 = 
MAKE_PAIR(BgL_arg2025z00_450, BgL_arg2026z00_451); } 
BgL_arg2015z00_446 = 
MAKE_PAIR(BgL_arg2019z00_448, BgL_arg2021z00_449); } 
BgL_arg1988z00_438 = 
MAKE_PAIR(BgL_arg2015z00_446, BNIL); } 
BgL_arg1982z00_436 = 
MAKE_PAIR(BgL_arg1987z00_437, BgL_arg1988z00_438); } 
BgL_arg1977z00_433 = 
MAKE_PAIR(BgL_arg1981z00_435, BgL_arg1982z00_436); } 
BgL_arg1935z00_418 = 
MAKE_PAIR(BgL_arg1977z00_433, BNIL); } 
BgL_arg1931z00_416 = 
MAKE_PAIR(BgL_arg1934z00_417, BgL_arg1935z00_418); } 
return 
MAKE_PAIR(BgL_arg1930z00_415, BgL_arg1931z00_416);} } }  else 
{ /* ./Object/struct.scm 85 */
{ /* ./Object/struct.scm 57 */
obj_t BgL_arg2165z00_506;obj_t BgL_arg2166z00_507;
BgL_arg2165z00_506 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2169z00_508;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2172z00_509;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2175z00_510;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2179z00_512;obj_t BgL_arg2180z00_513;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2183z00_514;obj_t BgL_arg2184z00_515;
BgL_arg2183z00_514 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./Object/struct.scm 59 */
BgL_slotz00_bglt BgL_obj1808z00_1118;
BgL_obj1808z00_1118 = 
(BgL_slotz00_bglt)(BgL_slotz00_9); 
BgL_arg2184z00_515 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1808z00_1118))->BgL_idz00); } 
{ /* ./Object/struct.scm 59 */
obj_t BgL_list2186z00_516;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2188z00_517;
{ /* ./Object/struct.scm 59 */
obj_t BgL_arg2191z00_518;
BgL_arg2191z00_518 = 
MAKE_PAIR(BgL_arg2184z00_515, BNIL); 
BgL_arg2188z00_517 = 
MAKE_PAIR(BgL_arg2183z00_514, BgL_arg2191z00_518); } 
BgL_list2186z00_516 = 
MAKE_PAIR(BgL_cnamez00_7, BgL_arg2188z00_517); } 
BgL_arg2179z00_512 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2186z00_516); } } 
BgL_arg2180z00_513 = 
MAKE_PAIR(BgL_onamez00_5, BNIL); 
BgL_arg2175z00_510 = 
MAKE_PAIR(BgL_arg2179z00_512, BgL_arg2180z00_513); } 
BgL_arg2172z00_509 = 
MAKE_PAIR(BgL_arg2175z00_510, BNIL); } 
{ /* ./Object/struct.scm 57 */
obj_t BgL_auxz00_1385;
BgL_auxz00_1385 = 
BINT(BgL_iz00_8); 
BgL_arg2169z00_508 = 
MAKE_PAIR(BgL_auxz00_1385, BgL_arg2172z00_509); } } 
BgL_arg2166z00_507 = 
MAKE_PAIR(BgL_snamez00_6, BgL_arg2169z00_508); } 
return 
MAKE_PAIR(BgL_arg2165z00_506, BgL_arg2166z00_507);} } } } } } 
}



/* slots-length */
long BGl_slotszd2lengthzd2zzobject_structz00(obj_t BgL_slotsz00_10)
{ AN_OBJECT;
{ /* ./Object/struct.scm 93 */
{ 
obj_t BgL_slotsz00_521;long BgL_lenz00_522;
BgL_slotsz00_521 = BgL_slotsz00_10; 
BgL_lenz00_522 = ((long)0); 
BgL_loopz00_523:
{ /* ./Object/struct.scm 97 */
bool_t BgL_test2197z00_524;
BgL_test2197z00_524 = 
NULLP(BgL_slotsz00_521); 
if(BgL_test2197z00_524)
{ /* ./Object/struct.scm 97 */
return BgL_lenz00_522;}  else 
{ /* ./Object/struct.scm 99 */
bool_t BgL_test2198z00_525;
{ /* ./Object/struct.scm 99 */
obj_t BgL_arg2210z00_529;
BgL_arg2210z00_529 = 
CAR(BgL_slotsz00_521); 
BgL_test2198z00_525 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_arg2210z00_529)); } 
if(BgL_test2198z00_525)
{ /* ./Object/struct.scm 99 */
{ /* ./Object/struct.scm 100 */
obj_t BgL_arg2200z00_526;
BgL_arg2200z00_526 = 
CDR(BgL_slotsz00_521); 
{ 
obj_t BgL_slotsz00_1397;
BgL_slotsz00_1397 = BgL_arg2200z00_526; 
BgL_slotsz00_521 = BgL_slotsz00_1397; 
goto BgL_loopz00_523;} } }  else 
{ /* ./Object/struct.scm 99 */
{ /* ./Object/struct.scm 102 */
obj_t BgL_arg2204z00_527;long BgL_arg2205z00_528;
BgL_arg2204z00_527 = 
CDR(BgL_slotsz00_521); 
BgL_arg2205z00_528 = 
(((long)1)+BgL_lenz00_522); 
{ 
long BgL_lenz00_1401;obj_t BgL_slotsz00_1400;
BgL_slotsz00_1400 = BgL_arg2204z00_527; 
BgL_lenz00_1401 = BgL_arg2205z00_528; 
BgL_lenz00_522 = BgL_lenz00_1401; 
BgL_slotsz00_521 = BgL_slotsz00_1400; 
goto BgL_loopz00_523;} } } } } } } 
}



/* gen-plain-class->struct */
obj_t BGl_genzd2plainzd2classzd2ze3structz31zzobject_structz00(obj_t BgL_cnamez00_11, BgL_typez00_bglt BgL_typez00_12, obj_t BgL_slotsz00_13, obj_t BgL_srczd2defzd2_14)
{ AN_OBJECT;
{ /* ./Object/struct.scm 107 */
{ /* ./Object/struct.scm 108 */
long BgL_lenz00_530;obj_t BgL_onamez00_531;obj_t BgL_snamez00_532;
{ /* ./Object/struct.scm 108 */
long BgL_arg2335z00_588;
BgL_arg2335z00_588 = 
BGl_slotszd2lengthzd2zzobject_structz00(BgL_slotsz00_13); 
BgL_lenz00_530 = 
(((long)1)+BgL_arg2335z00_588); } 
BgL_onamez00_531 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)16)), BEOA); 
BgL_snamez00_532 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)17)), BEOA); 
{ /* ./Object/struct.scm 112 */
obj_t BgL_arg2215z00_533;
{ /* ./Object/struct.scm 112 */
obj_t BgL_arg2218z00_534;obj_t BgL_arg2219z00_535;
BgL_arg2218z00_534 = 
CNST_TABLE_REF(((long)18)); 
{ /* ./Object/struct.scm 112 */
obj_t BgL_arg2222z00_536;obj_t BgL_arg2223z00_537;
{ /* ./Object/struct.scm 112 */
obj_t BgL_arg2226z00_538;obj_t BgL_arg2227z00_539;
BgL_arg2226z00_538 = 
CNST_TABLE_REF(((long)19)); 
{ /* ./Object/struct.scm 112 */
obj_t BgL_arg2230z00_540;
BgL_arg2230z00_540 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_onamez00_531, BgL_cnamez00_11); 
BgL_arg2227z00_539 = 
MAKE_PAIR(BgL_arg2230z00_540, BNIL); } 
BgL_arg2222z00_536 = 
MAKE_PAIR(BgL_arg2226z00_538, BgL_arg2227z00_539); } 
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2235z00_542;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2239z00_544;obj_t BgL_arg2240z00_545;
BgL_arg2239z00_544 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2243z00_546;obj_t BgL_arg2244z00_547;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2247z00_548;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2251z00_550;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2254z00_551;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2258z00_553;obj_t BgL_arg2260z00_554;
BgL_arg2258z00_553 = 
CNST_TABLE_REF(((long)20)); 
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2263z00_555;obj_t BgL_arg2264z00_556;
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2267z00_557;obj_t BgL_arg2268z00_558;
BgL_arg2267z00_557 = 
CNST_TABLE_REF(((long)21)); 
BgL_arg2268z00_558 = 
MAKE_PAIR(BgL_cnamez00_11, BNIL); 
BgL_arg2263z00_555 = 
MAKE_PAIR(BgL_arg2267z00_557, BgL_arg2268z00_558); } 
{ /* ./Object/struct.scm 113 */
obj_t BgL_arg2272z00_559;
BgL_arg2272z00_559 = 
MAKE_PAIR(BUNSPEC, BNIL); 
{ /* ./Object/struct.scm 113 */
obj_t BgL_auxz00_1421;
BgL_auxz00_1421 = 
BINT(BgL_lenz00_530); 
BgL_arg2264z00_556 = 
MAKE_PAIR(BgL_auxz00_1421, BgL_arg2272z00_559); } } 
BgL_arg2260z00_554 = 
MAKE_PAIR(BgL_arg2263z00_555, BgL_arg2264z00_556); } 
BgL_arg2254z00_551 = 
MAKE_PAIR(BgL_arg2258z00_553, BgL_arg2260z00_554); } 
BgL_arg2251z00_550 = 
MAKE_PAIR(BgL_arg2254z00_551, BNIL); } 
BgL_arg2247z00_548 = 
MAKE_PAIR(BgL_snamez00_532, BgL_arg2251z00_550); } 
BgL_arg2243z00_546 = 
MAKE_PAIR(BgL_arg2247z00_548, BNIL); } 
{ /* ./Object/struct.scm 114 */
obj_t BgL_arg2276z00_560;
{ /* ./Object/struct.scm 114 */
obj_t BgL_arg2280z00_562;obj_t BgL_arg2281z00_563;
BgL_arg2280z00_562 = 
CNST_TABLE_REF(((long)12)); 
{ /* ./Object/struct.scm 115 */
obj_t BgL_arg2284z00_564;obj_t BgL_arg2285z00_565;
{ /* ./Object/struct.scm 115 */
obj_t BgL_arg2288z00_566;obj_t BgL_arg2289z00_567;
BgL_arg2288z00_566 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./Object/struct.scm 115 */
obj_t BgL_arg2292z00_568;
{ /* ./Object/struct.scm 115 */
obj_t BgL_arg2296z00_570;
BgL_arg2296z00_570 = 
MAKE_PAIR(BFALSE, BNIL); 
{ /* ./Object/struct.scm 115 */
obj_t BgL_auxz00_1432;
BgL_auxz00_1432 = 
BINT(((long)0)); 
BgL_arg2292z00_568 = 
MAKE_PAIR(BgL_auxz00_1432, BgL_arg2296z00_570); } } 
BgL_arg2289z00_567 = 
MAKE_PAIR(BgL_snamez00_532, BgL_arg2292z00_568); } 
BgL_arg2284z00_564 = 
MAKE_PAIR(BgL_arg2288z00_566, BgL_arg2289z00_567); } 
{ /* ./Object/struct.scm 116 */
obj_t BgL_arg2300z00_571;obj_t BgL_arg2301z00_572;
{ 
long BgL_iz00_573;obj_t BgL_slotsz00_574;obj_t BgL_resz00_575;
BgL_iz00_573 = ((long)1); 
BgL_slotsz00_574 = BgL_slotsz00_13; 
BgL_resz00_575 = BNIL; 
BgL_loopz00_576:
{ /* ./Object/struct.scm 120 */
bool_t BgL_test2304z00_577;
BgL_test2304z00_577 = 
(BgL_iz00_573==BgL_lenz00_530); 
if(BgL_test2304z00_577)
{ /* ./Object/struct.scm 120 */
BgL_arg2300z00_571 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_resz00_575); }  else 
{ /* ./Object/struct.scm 122 */
bool_t BgL_test2306z00_578;
{ /* ./Object/struct.scm 122 */
obj_t BgL_arg2328z00_586;
BgL_arg2328z00_586 = 
CAR(BgL_slotsz00_574); 
BgL_test2306z00_578 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_arg2328z00_586)); } 
if(BgL_test2306z00_578)
{ /* ./Object/struct.scm 122 */
{ /* ./Object/struct.scm 123 */
long BgL_arg2308z00_579;obj_t BgL_arg2309z00_580;
BgL_arg2308z00_579 = 
(BgL_iz00_573+((long)1)); 
BgL_arg2309z00_580 = 
CDR(BgL_slotsz00_574); 
{ 
obj_t BgL_slotsz00_1447;long BgL_iz00_1446;
BgL_iz00_1446 = BgL_arg2308z00_579; 
BgL_slotsz00_1447 = BgL_arg2309z00_580; 
BgL_slotsz00_574 = BgL_slotsz00_1447; 
BgL_iz00_573 = BgL_iz00_1446; 
goto BgL_loopz00_576;} } }  else 
{ /* ./Object/struct.scm 122 */
{ /* ./Object/struct.scm 127 */
long BgL_arg2314z00_581;obj_t BgL_arg2315z00_582;obj_t BgL_arg2316z00_583;
BgL_arg2314z00_581 = 
(BgL_iz00_573+((long)1)); 
BgL_arg2315z00_582 = 
CDR(BgL_slotsz00_574); 
{ /* ./Object/struct.scm 133 */
obj_t BgL_arg2321z00_584;
{ /* ./Object/struct.scm 133 */
obj_t BgL_arg2324z00_585;
BgL_arg2324z00_585 = 
CAR(BgL_slotsz00_574); 
BgL_arg2321z00_584 = 
BGl_savezd2slotzd2zzobject_structz00(BgL_onamez00_531, BgL_snamez00_532, BgL_cnamez00_11, BgL_iz00_573, BgL_arg2324z00_585); } 
BgL_arg2316z00_583 = 
MAKE_PAIR(BgL_arg2321z00_584, BgL_resz00_575); } 
{ 
obj_t BgL_resz00_1455;obj_t BgL_slotsz00_1454;long BgL_iz00_1453;
BgL_iz00_1453 = BgL_arg2314z00_581; 
BgL_slotsz00_1454 = BgL_arg2315z00_582; 
BgL_resz00_1455 = BgL_arg2316z00_583; 
BgL_resz00_575 = BgL_resz00_1455; 
BgL_slotsz00_574 = BgL_slotsz00_1454; 
BgL_iz00_573 = BgL_iz00_1453; 
goto BgL_loopz00_576;} } } } } } 
BgL_arg2301z00_572 = 
MAKE_PAIR(BgL_snamez00_532, BNIL); 
BgL_arg2285z00_565 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg2300z00_571, BgL_arg2301z00_572); } 
BgL_arg2281z00_563 = 
MAKE_PAIR(BgL_arg2284z00_564, BgL_arg2285z00_565); } 
BgL_arg2276z00_560 = 
MAKE_PAIR(BgL_arg2280z00_562, BgL_arg2281z00_563); } 
BgL_arg2244z00_547 = 
MAKE_PAIR(BgL_arg2276z00_560, BNIL); } 
BgL_arg2240z00_545 = 
MAKE_PAIR(BgL_arg2243z00_546, BgL_arg2244z00_547); } 
BgL_arg2235z00_542 = 
MAKE_PAIR(BgL_arg2239z00_544, BgL_arg2240z00_545); } 
BgL_arg2223z00_537 = 
MAKE_PAIR(BgL_arg2235z00_542, BNIL); } 
BgL_arg2219z00_535 = 
MAKE_PAIR(BgL_arg2222z00_536, BgL_arg2223z00_537); } 
BgL_arg2215z00_533 = 
MAKE_PAIR(BgL_arg2218z00_534, BgL_arg2219z00_535); } 
return 
BGl_epairifyz00zztools_miscz00(BgL_arg2215z00_533, BgL_srczd2defzd2_14);} } } 
}



/* gen-wide-class->struct */
obj_t BGl_genzd2widezd2classzd2ze3structz31zzobject_structz00(obj_t BgL_cnamez00_15, BgL_typez00_bglt BgL_typez00_16, obj_t BgL_slotsz00_17, obj_t BgL_srczd2defzd2_18)
{ AN_OBJECT;
{ /* ./Object/struct.scm 141 */
{ /* ./Object/struct.scm 142 */
long BgL_lenz00_589;
BgL_lenz00_589 = 
BGl_slotszd2lengthzd2zzobject_structz00(BgL_slotsz00_17); 
{ /* ./Object/struct.scm 142 */
obj_t BgL_onamez00_590;
BgL_onamez00_590 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)16)), BEOA); 
{ /* ./Object/struct.scm 143 */
obj_t BgL_resz00_591;
BgL_resz00_591 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)17)), BEOA); 
{ /* ./Object/struct.scm 144 */
obj_t BgL_tresz00_592;
{ /* ./Object/struct.scm 145 */
obj_t BgL_list2520z00_673;
{ /* ./Object/struct.scm 145 */
obj_t BgL_arg2522z00_674;
{ /* ./Object/struct.scm 145 */
obj_t BgL_auxz00_1474;
BgL_auxz00_1474 = 
CNST_TABLE_REF(((long)22)); 
BgL_arg2522z00_674 = 
MAKE_PAIR(BgL_auxz00_1474, BNIL); } 
BgL_list2520z00_673 = 
MAKE_PAIR(BgL_resz00_591, BgL_arg2522z00_674); } 
BgL_tresz00_592 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2520z00_673); } 
{ /* ./Object/struct.scm 145 */
obj_t BgL_auxz00_593;
BgL_auxz00_593 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)23)), BEOA); 
{ /* ./Object/struct.scm 146 */

{ /* ./Object/struct.scm 148 */
obj_t BgL_arg2341z00_594;
{ /* ./Object/struct.scm 148 */
obj_t BgL_arg2344z00_595;obj_t BgL_arg2345z00_596;
BgL_arg2344z00_595 = 
CNST_TABLE_REF(((long)18)); 
{ /* ./Object/struct.scm 148 */
obj_t BgL_arg2348z00_597;obj_t BgL_arg2349z00_598;
{ /* ./Object/struct.scm 148 */
obj_t BgL_arg2353z00_599;obj_t BgL_arg2354z00_600;
BgL_arg2353z00_599 = 
CNST_TABLE_REF(((long)19)); 
{ /* ./Object/struct.scm 148 */
obj_t BgL_arg2357z00_601;
BgL_arg2357z00_601 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_onamez00_590, BgL_cnamez00_15); 
BgL_arg2354z00_600 = 
MAKE_PAIR(BgL_arg2357z00_601, BNIL); } 
BgL_arg2348z00_597 = 
MAKE_PAIR(BgL_arg2353z00_599, BgL_arg2354z00_600); } 
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2362z00_603;
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2366z00_605;obj_t BgL_arg2367z00_606;
BgL_arg2366z00_605 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2371z00_607;obj_t BgL_arg2372z00_608;
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2376z00_609;
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2381z00_611;
{ /* ./Object/struct.scm 149 */
obj_t BgL_arg2384z00_612;
{ /* ./Object/struct.scm 149 */
obj_t BgL_auxz00_1488;
BgL_auxz00_1488 = 
CNST_TABLE_REF(((long)24)); 
BgL_arg2384z00_612 = 
MAKE_PAIR(BgL_auxz00_1488, BNIL); } 
BgL_arg2381z00_611 = 
MAKE_PAIR(BgL_arg2384z00_612, BNIL); } 
BgL_arg2376z00_609 = 
MAKE_PAIR(BgL_tresz00_592, BgL_arg2381z00_611); } 
BgL_arg2371z00_607 = 
MAKE_PAIR(BgL_arg2376z00_609, BNIL); } 
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2389z00_614;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2393z00_616;obj_t BgL_arg2394z00_617;
BgL_arg2393z00_616 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2397z00_618;obj_t BgL_arg2398z00_619;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2401z00_620;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2405z00_622;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2408z00_623;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2412z00_625;obj_t BgL_arg2413z00_626;
BgL_arg2412z00_625 = 
CNST_TABLE_REF(((long)20)); 
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2416z00_627;obj_t BgL_arg2417z00_628;
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2420z00_629;obj_t BgL_arg2421z00_630;
BgL_arg2420z00_629 = 
CNST_TABLE_REF(((long)21)); 
BgL_arg2421z00_630 = 
MAKE_PAIR(BgL_cnamez00_15, BNIL); 
BgL_arg2416z00_627 = 
MAKE_PAIR(BgL_arg2420z00_629, BgL_arg2421z00_630); } 
{ /* ./Object/struct.scm 150 */
obj_t BgL_arg2425z00_631;
BgL_arg2425z00_631 = 
MAKE_PAIR(BUNSPEC, BNIL); 
{ /* ./Object/struct.scm 150 */
obj_t BgL_auxz00_1500;
BgL_auxz00_1500 = 
BINT(BgL_lenz00_589); 
BgL_arg2417z00_628 = 
MAKE_PAIR(BgL_auxz00_1500, BgL_arg2425z00_631); } } 
BgL_arg2413z00_626 = 
MAKE_PAIR(BgL_arg2416z00_627, BgL_arg2417z00_628); } 
BgL_arg2408z00_623 = 
MAKE_PAIR(BgL_arg2412z00_625, BgL_arg2413z00_626); } 
BgL_arg2405z00_622 = 
MAKE_PAIR(BgL_arg2408z00_623, BNIL); } 
BgL_arg2401z00_620 = 
MAKE_PAIR(BgL_auxz00_593, BgL_arg2405z00_622); } 
BgL_arg2397z00_618 = 
MAKE_PAIR(BgL_arg2401z00_620, BNIL); } 
{ /* ./Object/struct.scm 151 */
obj_t BgL_arg2429z00_632;obj_t BgL_arg2430z00_633;
{ 
long BgL_iz00_634;obj_t BgL_slotsz00_635;obj_t BgL_resz00_636;
BgL_iz00_634 = ((long)0); 
BgL_slotsz00_635 = BgL_slotsz00_17; 
BgL_resz00_636 = BNIL; 
BgL_loopz00_637:
{ /* ./Object/struct.scm 155 */
bool_t BgL_test2433z00_638;
BgL_test2433z00_638 = 
(BgL_iz00_634==BgL_lenz00_589); 
if(BgL_test2433z00_638)
{ /* ./Object/struct.scm 155 */
BgL_arg2429z00_632 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_resz00_636); }  else 
{ /* ./Object/struct.scm 157 */
bool_t BgL_test2435z00_639;
{ /* ./Object/struct.scm 157 */
obj_t BgL_arg2457z00_647;
BgL_arg2457z00_647 = 
CAR(BgL_slotsz00_635); 
BgL_test2435z00_639 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_arg2457z00_647)); } 
if(BgL_test2435z00_639)
{ /* ./Object/struct.scm 157 */
{ /* ./Object/struct.scm 158 */
long BgL_arg2437z00_640;obj_t BgL_arg2438z00_641;
BgL_arg2437z00_640 = 
(BgL_iz00_634+((long)1)); 
BgL_arg2438z00_641 = 
CDR(BgL_slotsz00_635); 
{ 
obj_t BgL_slotsz00_1518;long BgL_iz00_1517;
BgL_iz00_1517 = BgL_arg2437z00_640; 
BgL_slotsz00_1518 = BgL_arg2438z00_641; 
BgL_slotsz00_635 = BgL_slotsz00_1518; 
BgL_iz00_634 = BgL_iz00_1517; 
goto BgL_loopz00_637;} } }  else 
{ /* ./Object/struct.scm 157 */
{ /* ./Object/struct.scm 162 */
long BgL_arg2443z00_642;obj_t BgL_arg2444z00_643;obj_t BgL_arg2445z00_644;
BgL_arg2443z00_642 = 
(BgL_iz00_634+((long)1)); 
BgL_arg2444z00_643 = 
CDR(BgL_slotsz00_635); 
{ /* ./Object/struct.scm 164 */
obj_t BgL_arg2450z00_645;
{ /* ./Object/struct.scm 164 */
obj_t BgL_arg2453z00_646;
BgL_arg2453z00_646 = 
CAR(BgL_slotsz00_635); 
BgL_arg2450z00_645 = 
BGl_savezd2slotzd2zzobject_structz00(BgL_onamez00_590, BgL_auxz00_593, BgL_cnamez00_15, BgL_iz00_634, BgL_arg2453z00_646); } 
BgL_arg2445z00_644 = 
MAKE_PAIR(BgL_arg2450z00_645, BgL_resz00_636); } 
{ 
obj_t BgL_resz00_1526;obj_t BgL_slotsz00_1525;long BgL_iz00_1524;
BgL_iz00_1524 = BgL_arg2443z00_642; 
BgL_slotsz00_1525 = BgL_arg2444z00_643; 
BgL_resz00_1526 = BgL_arg2445z00_644; 
BgL_resz00_636 = BgL_resz00_1526; 
BgL_slotsz00_635 = BgL_slotsz00_1525; 
BgL_iz00_634 = BgL_iz00_1524; 
goto BgL_loopz00_637;} } } } } } 
{ /* ./Object/struct.scm 166 */
obj_t BgL_arg2462z00_648;obj_t BgL_arg2463z00_649;
{ /* ./Object/struct.scm 166 */
obj_t BgL_arg2466z00_650;obj_t BgL_arg2467z00_651;
BgL_arg2466z00_650 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./Object/struct.scm 166 */
obj_t BgL_arg2470z00_652;
{ /* ./Object/struct.scm 166 */
obj_t BgL_arg2474z00_654;
BgL_arg2474z00_654 = 
MAKE_PAIR(BgL_auxz00_593, BNIL); 
{ /* ./Object/struct.scm 166 */
obj_t BgL_auxz00_1529;
BgL_auxz00_1529 = 
BINT(((long)0)); 
BgL_arg2470z00_652 = 
MAKE_PAIR(BgL_auxz00_1529, BgL_arg2474z00_654); } } 
BgL_arg2467z00_651 = 
MAKE_PAIR(BgL_resz00_591, BgL_arg2470z00_652); } 
BgL_arg2462z00_648 = 
MAKE_PAIR(BgL_arg2466z00_650, BgL_arg2467z00_651); } 
{ /* ./Object/struct.scm 168 */
obj_t BgL_arg2478z00_655;obj_t BgL_arg2479z00_656;
{ /* ./Object/struct.scm 168 */
obj_t BgL_arg2482z00_657;obj_t BgL_arg2483z00_658;
BgL_arg2482z00_657 = 
CNST_TABLE_REF(((long)25)); 
{ /* ./Object/struct.scm 168 */
obj_t BgL_arg2486z00_659;
{ /* ./Object/struct.scm 168 */
obj_t BgL_arg2489z00_660;
{ /* ./Object/struct.scm 168 */
obj_t BgL_arg2493z00_662;obj_t BgL_arg2494z00_663;
BgL_arg2493z00_662 = 
CNST_TABLE_REF(((long)26)); 
BgL_arg2494z00_663 = 
MAKE_PAIR(BgL_resz00_591, BNIL); 
BgL_arg2489z00_660 = 
MAKE_PAIR(BgL_arg2493z00_662, BgL_arg2494z00_663); } 
BgL_arg2486z00_659 = 
MAKE_PAIR(BgL_arg2489z00_660, BNIL); } 
BgL_arg2483z00_658 = 
MAKE_PAIR(BgL_auxz00_593, BgL_arg2486z00_659); } 
BgL_arg2478z00_655 = 
MAKE_PAIR(BgL_arg2482z00_657, BgL_arg2483z00_658); } 
{ /* ./Object/struct.scm 169 */
obj_t BgL_arg2498z00_664;obj_t BgL_arg2499z00_665;
{ /* ./Object/struct.scm 169 */
obj_t BgL_arg2502z00_666;obj_t BgL_arg2503z00_667;
BgL_arg2502z00_666 = 
CNST_TABLE_REF(((long)25)); 
{ /* ./Object/struct.scm 169 */
obj_t BgL_arg2506z00_668;
{ /* ./Object/struct.scm 169 */
obj_t BgL_arg2509z00_669;
{ /* ./Object/struct.scm 169 */
obj_t BgL_arg2513z00_671;obj_t BgL_arg2514z00_672;
BgL_arg2513z00_671 = 
CNST_TABLE_REF(((long)21)); 
BgL_arg2514z00_672 = 
MAKE_PAIR(BgL_cnamez00_15, BNIL); 
BgL_arg2509z00_669 = 
MAKE_PAIR(BgL_arg2513z00_671, BgL_arg2514z00_672); } 
BgL_arg2506z00_668 = 
MAKE_PAIR(BgL_arg2509z00_669, BNIL); } 
BgL_arg2503z00_667 = 
MAKE_PAIR(BgL_resz00_591, BgL_arg2506z00_668); } 
BgL_arg2498z00_664 = 
MAKE_PAIR(BgL_arg2502z00_666, BgL_arg2503z00_667); } 
BgL_arg2499z00_665 = 
MAKE_PAIR(BgL_resz00_591, BNIL); 
BgL_arg2479z00_656 = 
MAKE_PAIR(BgL_arg2498z00_664, BgL_arg2499z00_665); } 
BgL_arg2463z00_649 = 
MAKE_PAIR(BgL_arg2478z00_655, BgL_arg2479z00_656); } 
BgL_arg2430z00_633 = 
MAKE_PAIR(BgL_arg2462z00_648, BgL_arg2463z00_649); } 
BgL_arg2398z00_619 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg2429z00_632, BgL_arg2430z00_633); } 
BgL_arg2394z00_617 = 
MAKE_PAIR(BgL_arg2397z00_618, BgL_arg2398z00_619); } 
BgL_arg2389z00_614 = 
MAKE_PAIR(BgL_arg2393z00_616, BgL_arg2394z00_617); } 
BgL_arg2372z00_608 = 
MAKE_PAIR(BgL_arg2389z00_614, BNIL); } 
BgL_arg2367z00_606 = 
MAKE_PAIR(BgL_arg2371z00_607, BgL_arg2372z00_608); } 
BgL_arg2362z00_603 = 
MAKE_PAIR(BgL_arg2366z00_605, BgL_arg2367z00_606); } 
BgL_arg2349z00_598 = 
MAKE_PAIR(BgL_arg2362z00_603, BNIL); } 
BgL_arg2345z00_596 = 
MAKE_PAIR(BgL_arg2348z00_597, BgL_arg2349z00_598); } 
BgL_arg2341z00_594 = 
MAKE_PAIR(BgL_arg2344z00_595, BgL_arg2345z00_596); } 
return 
BGl_epairifyz00zztools_miscz00(BgL_arg2341z00_594, BgL_srczd2defzd2_18);} } } } } } } } 
}



/* restore-slot */
obj_t BGl_restorezd2slotzd2zzobject_structz00(obj_t BgL_onamez00_19, obj_t BgL_snamez00_20, obj_t BgL_cnamez00_21, BgL_typez00_bglt BgL_typez00_22, long BgL_iz00_23, obj_t BgL_slotz00_24)
{ AN_OBJECT;
{ /* ./Object/struct.scm 177 */
{ /* ./Object/struct.scm 178 */
obj_t BgL_loopz00_675;
BgL_loopz00_675 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)2)), BEOA); 
{ /* ./Object/struct.scm 178 */
obj_t BgL_runnerz00_676;
BgL_runnerz00_676 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)27)), BEOA); 
{ /* ./Object/struct.scm 179 */
obj_t BgL_vz00_677;
BgL_vz00_677 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)28)), BEOA); 
{ /* ./Object/struct.scm 180 */
obj_t BgL_lenz00_678;
BgL_lenz00_678 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)3)), BEOA); 
{ /* ./Object/struct.scm 181 */
obj_t BgL_runnerzd2typedzd2_679;
{ /* ./Object/struct.scm 182 */
obj_t BgL_list2774z00_788;
{ /* ./Object/struct.scm 182 */
obj_t BgL_arg2776z00_789;
{ /* ./Object/struct.scm 182 */
obj_t BgL_auxz00_1574;
BgL_auxz00_1574 = 
CNST_TABLE_REF(((long)29)); 
BgL_arg2776z00_789 = 
MAKE_PAIR(BgL_auxz00_1574, BNIL); } 
BgL_list2774z00_788 = 
MAKE_PAIR(BgL_runnerz00_676, BgL_arg2776z00_789); } 
BgL_runnerzd2typedzd2_679 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2774z00_788); } 
{ /* ./Object/struct.scm 182 */

{ /* ./Object/struct.scm 184 */
bool_t BgL_test2528z00_680;
BgL_test2528z00_680 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_slotz00_24)); 
if(BgL_test2528z00_680)
{ /* ./Object/struct.scm 184 */
return BUNSPEC;}  else 
{ /* ./Object/struct.scm 186 */
bool_t BgL_test2529z00_681;
{ /* ./Object/struct.scm 186 */
BgL_slotz00_bglt BgL_obj1824z00_1147;
BgL_obj1824z00_1147 = 
(BgL_slotz00_bglt)(BgL_slotz00_24); 
{ /* ./Object/struct.scm 186 */
obj_t BgL_auxz00_1583;
BgL_auxz00_1583 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1824z00_1147))->BgL_indexedz00); 
BgL_test2529z00_681 = 
CBOOL(BgL_auxz00_1583); } } 
if(BgL_test2529z00_681)
{ /* ./Object/struct.scm 186 */
{ /* ./Object/struct.scm 195 */
bool_t BgL_test2530z00_682;
{ /* ./Object/struct.scm 195 */
bool_t BgL_test2532z00_683;
{ /* ./Object/struct.scm 195 */
obj_t BgL_objz00_1148;
BgL_objz00_1148 = BGl_za2heapzd2debugza2zd2zzengine_paramz00; 
BgL_test2532z00_683 = 
INTEGERP(BgL_objz00_1148); } 
if(BgL_test2532z00_683)
{ /* ./Object/struct.scm 196 */
long BgL_n1z00_1149;
BgL_n1z00_1149 = 
(long)CINT(BGl_za2heapzd2debugza2zd2zzengine_paramz00); 
BgL_test2530z00_682 = 
(BgL_n1z00_1149>=((long)1)); }  else 
{ /* ./Object/struct.scm 195 */
BgL_test2530z00_682 = ((bool_t)0); } } 
if(BgL_test2530z00_682)
{ /* ./Object/struct.scm 195 */
FAILURE(BGl_string3345z00zzobject_structz00,BGl_string3346z00zzobject_structz00,BgL_slotz00_24);}  else 
{ /* ./Object/struct.scm 195 */((bool_t)0); } } 
{ /* ./Object/struct.scm 202 */
obj_t BgL_fz00_684;
BgL_fz00_684 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)30)), BEOA); 
{ /* ./Object/struct.scm 202 */
obj_t BgL_tfz00_685;
{ /* ./Object/struct.scm 203 */
obj_t BgL_arg2723z00_768;
{ /* ./Object/struct.scm 203 */
BgL_typez00_bglt BgL_obj1003z00_1155;
{ /* ./Object/struct.scm 203 */
obj_t BgL_auxz00_1596;
{ /* ./Object/struct.scm 203 */
BgL_slotz00_bglt BgL_obj1812z00_1154;
BgL_obj1812z00_1154 = 
(BgL_slotz00_bglt)(BgL_slotz00_24); 
BgL_auxz00_1596 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1812z00_1154))->BgL_typez00); } 
BgL_obj1003z00_1155 = 
(BgL_typez00_bglt)(BgL_auxz00_1596); } 
BgL_arg2723z00_768 = 
(((BgL_typez00_bglt)CREF(BgL_obj1003z00_1155))->BgL_idz00); } 
BgL_tfz00_685 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_fz00_684, BgL_arg2723z00_768); } 
{ /* ./Object/struct.scm 203 */

{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2536z00_686;obj_t BgL_arg2537z00_687;
BgL_arg2536z00_686 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2540z00_688;obj_t BgL_arg2541z00_689;
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2544z00_690;
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2548z00_692;
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2551z00_693;
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2555z00_695;obj_t BgL_arg2556z00_696;
BgL_arg2555z00_695 = 
CNST_TABLE_REF(((long)31)); 
{ /* ./Object/struct.scm 204 */
obj_t BgL_arg2559z00_697;obj_t BgL_arg2560z00_698;
BgL_arg2559z00_697 = 
CNST_TABLE_REF(((long)32)); 
{ /* ./Object/struct.scm 204 */
obj_t BgL_auxz00_1605;
BgL_auxz00_1605 = 
BINT(BgL_iz00_23); 
BgL_arg2560z00_698 = 
MAKE_PAIR(BgL_auxz00_1605, BNIL); } 
BgL_arg2556z00_696 = 
MAKE_PAIR(BgL_arg2559z00_697, BgL_arg2560z00_698); } 
BgL_arg2551z00_693 = 
MAKE_PAIR(BgL_arg2555z00_695, BgL_arg2556z00_696); } 
BgL_arg2548z00_692 = 
MAKE_PAIR(BgL_arg2551z00_693, BNIL); } 
BgL_arg2544z00_690 = 
MAKE_PAIR(BgL_vz00_677, BgL_arg2548z00_692); } 
BgL_arg2540z00_688 = 
MAKE_PAIR(BgL_arg2544z00_690, BNIL); } 
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2564z00_699;
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2568z00_701;obj_t BgL_arg2569z00_702;
BgL_arg2568z00_701 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2573z00_703;obj_t BgL_arg2574z00_704;
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2577z00_705;
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2581z00_707;obj_t BgL_arg2584z00_708;
{ /* ./Object/struct.scm 205 */
obj_t BgL_list2587z00_709;
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2589z00_710;
{ /* ./Object/struct.scm 205 */
obj_t BgL_auxz00_1614;
BgL_auxz00_1614 = 
CNST_TABLE_REF(((long)29)); 
BgL_arg2589z00_710 = 
MAKE_PAIR(BgL_auxz00_1614, BNIL); } 
BgL_list2587z00_709 = 
MAKE_PAIR(BgL_lenz00_678, BgL_arg2589z00_710); } 
BgL_arg2581z00_707 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list2587z00_709); } 
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2593z00_711;
{ /* ./Object/struct.scm 205 */
obj_t BgL_arg2597z00_713;obj_t BgL_arg2598z00_714;
BgL_arg2597z00_713 = 
CNST_TABLE_REF(((long)33)); 
BgL_arg2598z00_714 = 
MAKE_PAIR(BgL_vz00_677, BNIL); 
BgL_arg2593z00_711 = 
MAKE_PAIR(BgL_arg2597z00_713, BgL_arg2598z00_714); } 
BgL_arg2584z00_708 = 
MAKE_PAIR(BgL_arg2593z00_711, BNIL); } 
BgL_arg2577z00_705 = 
MAKE_PAIR(BgL_arg2581z00_707, BgL_arg2584z00_708); } 
BgL_arg2573z00_703 = 
MAKE_PAIR(BgL_arg2577z00_705, BNIL); } 
{ /* ./Object/struct.scm 206 */
obj_t BgL_arg2602z00_715;obj_t BgL_arg2603z00_716;
BgL_arg2602z00_715 = 
BGl_makezd2pragmazd2indexedzd2initzd2setz12z12zzobject_toolsz00(BgL_typez00_22, 
(BgL_slotz00_bglt)(BgL_slotz00_24), 
CNST_TABLE_REF(((long)34)), BgL_lenz00_678); 
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2607z00_717;
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2611z00_719;obj_t BgL_arg2612z00_720;
BgL_arg2611z00_719 = 
CNST_TABLE_REF(((long)8)); 
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2615z00_721;obj_t BgL_arg2616z00_722;
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2619z00_723;
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2623z00_725;
{ /* ./Object/struct.scm 208 */
obj_t BgL_arg2626z00_726;obj_t BgL_arg2627z00_727;
BgL_arg2626z00_726 = 
MAKE_PAIR(BgL_runnerzd2typedzd2_679, BNIL); 
{ /* ./Object/struct.scm 209 */
obj_t BgL_arg2631z00_728;
{ /* ./Object/struct.scm 209 */
obj_t BgL_arg2635z00_730;obj_t BgL_arg2636z00_731;
BgL_arg2635z00_730 = 
CNST_TABLE_REF(((long)9)); 
{ /* ./Object/struct.scm 209 */
obj_t BgL_arg2639z00_732;obj_t BgL_arg2640z00_733;
{ /* ./Object/struct.scm 209 */
obj_t BgL_arg2643z00_734;obj_t BgL_arg2644z00_735;
BgL_arg2643z00_734 = 
CNST_TABLE_REF(((long)10)); 
{ /* ./Object/struct.scm 209 */
obj_t BgL_arg2647z00_736;
BgL_arg2647z00_736 = 
MAKE_PAIR(BgL_lenz00_678, BNIL); 
BgL_arg2644z00_735 = 
MAKE_PAIR(BgL_runnerz00_676, BgL_arg2647z00_736); } 
BgL_arg2639z00_732 = 
MAKE_PAIR(BgL_arg2643z00_734, BgL_arg2644z00_735); } 
{ /* ./Object/struct.scm 210 */
obj_t BgL_arg2651z00_737;obj_t BgL_arg2652z00_738;
{ /* ./Object/struct.scm 210 */
obj_t BgL_arg2655z00_739;obj_t BgL_arg2656z00_740;
BgL_arg2655z00_739 = 
CNST_TABLE_REF(((long)21)); 
{ /* ./Object/struct.scm 210 */
obj_t BgL_auxz00_1636;
BgL_auxz00_1636 = 
CNST_TABLE_REF(((long)35)); 
BgL_arg2656z00_740 = 
MAKE_PAIR(BgL_auxz00_1636, BNIL); } 
BgL_arg2651z00_737 = 
MAKE_PAIR(BgL_arg2655z00_739, BgL_arg2656z00_740); } 
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2660z00_741;
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2664z00_743;obj_t BgL_arg2665z00_744;
BgL_arg2664z00_743 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2668z00_745;obj_t BgL_arg2669z00_746;
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2672z00_747;
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2676z00_749;
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2679z00_750;
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2683z00_752;obj_t BgL_arg2684z00_753;
BgL_arg2683z00_752 = 
CNST_TABLE_REF(((long)36)); 
{ /* ./Object/struct.scm 211 */
obj_t BgL_arg2687z00_754;
BgL_arg2687z00_754 = 
MAKE_PAIR(BgL_runnerz00_676, BNIL); 
BgL_arg2684z00_753 = 
MAKE_PAIR(BgL_vz00_677, BgL_arg2687z00_754); } 
BgL_arg2679z00_750 = 
MAKE_PAIR(BgL_arg2683z00_752, BgL_arg2684z00_753); } 
BgL_arg2676z00_749 = 
MAKE_PAIR(BgL_arg2679z00_750, BNIL); } 
BgL_arg2672z00_747 = 
MAKE_PAIR(BgL_tfz00_685, BgL_arg2676z00_749); } 
BgL_arg2668z00_745 = 
MAKE_PAIR(BgL_arg2672z00_747, BNIL); } 
{ /* ./Object/struct.scm 212 */
obj_t BgL_arg2691z00_755;obj_t BgL_arg2692z00_756;
BgL_arg2691z00_755 = 
BGl_makezd2pragmazd2indexedzd2setz12zc0zzobject_toolsz00(BgL_typez00_22, 
(BgL_slotz00_bglt)(BgL_slotz00_24), 
CNST_TABLE_REF(((long)34)), BgL_fz00_684, BgL_runnerz00_676); 
{ /* ./Object/struct.scm 218 */
obj_t BgL_arg2696z00_757;
{ /* ./Object/struct.scm 218 */
obj_t BgL_arg2700z00_759;
{ /* ./Object/struct.scm 218 */
obj_t BgL_arg2703z00_760;
{ /* ./Object/struct.scm 218 */
obj_t BgL_arg2707z00_762;obj_t BgL_arg2708z00_763;
BgL_arg2707z00_762 = 
CNST_TABLE_REF(((long)15)); 
{ /* ./Object/struct.scm 218 */
obj_t BgL_arg2711z00_764;
{ /* ./Object/struct.scm 218 */
obj_t BgL_auxz00_1652;
BgL_auxz00_1652 = 
BINT(((long)1)); 
BgL_arg2711z00_764 = 
MAKE_PAIR(BgL_auxz00_1652, BNIL); } 
BgL_arg2708z00_763 = 
MAKE_PAIR(BgL_runnerz00_676, BgL_arg2711z00_764); } 
BgL_arg2703z00_760 = 
MAKE_PAIR(BgL_arg2707z00_762, BgL_arg2708z00_763); } 
BgL_arg2700z00_759 = 
MAKE_PAIR(BgL_arg2703z00_760, BNIL); } 
BgL_arg2696z00_757 = 
MAKE_PAIR(BgL_loopz00_675, BgL_arg2700z00_759); } 
BgL_arg2692z00_756 = 
MAKE_PAIR(BgL_arg2696z00_757, BNIL); } 
BgL_arg2669z00_746 = 
MAKE_PAIR(BgL_arg2691z00_755, BgL_arg2692z00_756); } 
BgL_arg2665z00_744 = 
MAKE_PAIR(BgL_arg2668z00_745, BgL_arg2669z00_746); } 
BgL_arg2660z00_741 = 
MAKE_PAIR(BgL_arg2664z00_743, BgL_arg2665z00_744); } 
BgL_arg2652z00_738 = 
MAKE_PAIR(BgL_arg2660z00_741, BNIL); } 
BgL_arg2640z00_733 = 
MAKE_PAIR(BgL_arg2651z00_737, BgL_arg2652z00_738); } 
BgL_arg2636z00_731 = 
MAKE_PAIR(BgL_arg2639z00_732, BgL_arg2640z00_733); } 
BgL_arg2631z00_728 = 
MAKE_PAIR(BgL_arg2635z00_730, BgL_arg2636z00_731); } 
BgL_arg2627z00_727 = 
MAKE_PAIR(BgL_arg2631z00_728, BNIL); } 
BgL_arg2623z00_725 = 
MAKE_PAIR(BgL_arg2626z00_726, BgL_arg2627z00_727); } 
BgL_arg2619z00_723 = 
MAKE_PAIR(BgL_loopz00_675, BgL_arg2623z00_725); } 
BgL_arg2615z00_721 = 
MAKE_PAIR(BgL_arg2619z00_723, BNIL); } 
{ /* ./Object/struct.scm 219 */
obj_t BgL_arg2715z00_765;
{ /* ./Object/struct.scm 219 */
obj_t BgL_arg2719z00_767;
{ /* ./Object/struct.scm 219 */
obj_t BgL_auxz00_1671;
BgL_auxz00_1671 = 
BINT(((long)0)); 
BgL_arg2719z00_767 = 
MAKE_PAIR(BgL_auxz00_1671, BNIL); } 
BgL_arg2715z00_765 = 
MAKE_PAIR(BgL_loopz00_675, BgL_arg2719z00_767); } 
BgL_arg2616z00_722 = 
MAKE_PAIR(BgL_arg2715z00_765, BNIL); } 
BgL_arg2612z00_720 = 
MAKE_PAIR(BgL_arg2615z00_721, BgL_arg2616z00_722); } 
BgL_arg2607z00_717 = 
MAKE_PAIR(BgL_arg2611z00_719, BgL_arg2612z00_720); } 
BgL_arg2603z00_716 = 
MAKE_PAIR(BgL_arg2607z00_717, BNIL); } 
BgL_arg2574z00_704 = 
MAKE_PAIR(BgL_arg2602z00_715, BgL_arg2603z00_716); } 
BgL_arg2569z00_702 = 
MAKE_PAIR(BgL_arg2573z00_703, BgL_arg2574z00_704); } 
BgL_arg2564z00_699 = 
MAKE_PAIR(BgL_arg2568z00_701, BgL_arg2569z00_702); } 
BgL_arg2541z00_689 = 
MAKE_PAIR(BgL_arg2564z00_699, BNIL); } 
BgL_arg2537z00_687 = 
MAKE_PAIR(BgL_arg2540z00_688, BgL_arg2541z00_689); } 
return 
MAKE_PAIR(BgL_arg2536z00_686, BgL_arg2537z00_687);} } } } }  else 
{ /* ./Object/struct.scm 186 */
{ /* ./Object/struct.scm 221 */
obj_t BgL_arg2731z00_770;obj_t BgL_arg2732z00_771;
BgL_arg2731z00_770 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 221 */
obj_t BgL_arg2735z00_772;obj_t BgL_arg2736z00_773;
{ /* ./Object/struct.scm 221 */
obj_t BgL_arg2739z00_774;
{ /* ./Object/struct.scm 221 */
obj_t BgL_arg2743z00_776;obj_t BgL_arg2744z00_777;
{ /* ./Object/struct.scm 221 */
obj_t BgL_arg2747z00_778;
{ /* ./Object/struct.scm 221 */
BgL_typez00_bglt BgL_obj1003z00_1157;
{ /* ./Object/struct.scm 221 */
obj_t BgL_auxz00_1686;
{ /* ./Object/struct.scm 221 */
BgL_slotz00_bglt BgL_obj1812z00_1156;
BgL_obj1812z00_1156 = 
(BgL_slotz00_bglt)(BgL_slotz00_24); 
BgL_auxz00_1686 = 
(((BgL_slotz00_bglt)CREF(BgL_obj1812z00_1156))->BgL_typez00); } 
BgL_obj1003z00_1157 = 
(BgL_typez00_bglt)(BgL_auxz00_1686); } 
BgL_arg2747z00_778 = 
(((BgL_typez00_bglt)CREF(BgL_obj1003z00_1157))->BgL_idz00); } 
BgL_arg2743z00_776 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_vz00_677, BgL_arg2747z00_778); } 
{ /* ./Object/struct.scm 222 */
obj_t BgL_arg2754z00_780;
{ /* ./Object/struct.scm 222 */
obj_t BgL_arg2758z00_782;obj_t BgL_arg2759z00_783;
BgL_arg2758z00_782 = 
CNST_TABLE_REF(((long)31)); 
{ /* ./Object/struct.scm 222 */
obj_t BgL_arg2762z00_784;obj_t BgL_arg2763z00_785;
BgL_arg2762z00_784 = 
CNST_TABLE_REF(((long)32)); 
{ /* ./Object/struct.scm 222 */
obj_t BgL_auxz00_1694;
BgL_auxz00_1694 = 
BINT(BgL_iz00_23); 
BgL_arg2763z00_785 = 
MAKE_PAIR(BgL_auxz00_1694, BNIL); } 
BgL_arg2759z00_783 = 
MAKE_PAIR(BgL_arg2762z00_784, BgL_arg2763z00_785); } 
BgL_arg2754z00_780 = 
MAKE_PAIR(BgL_arg2758z00_782, BgL_arg2759z00_783); } 
BgL_arg2744z00_777 = 
MAKE_PAIR(BgL_arg2754z00_780, BNIL); } 
BgL_arg2739z00_774 = 
MAKE_PAIR(BgL_arg2743z00_776, BgL_arg2744z00_777); } 
BgL_arg2735z00_772 = 
MAKE_PAIR(BgL_arg2739z00_774, BNIL); } 
{ /* ./Object/struct.scm 223 */
obj_t BgL_arg2767z00_786;
BgL_arg2767z00_786 = 
BGl_makezd2pragmazd2directzd2setz12zc0zzobject_toolsz00(BgL_typez00_22, 
(BgL_slotz00_bglt)(BgL_slotz00_24), 
CNST_TABLE_REF(((long)34)), BgL_vz00_677); 
BgL_arg2736z00_773 = 
MAKE_PAIR(BgL_arg2767z00_786, BNIL); } 
BgL_arg2732z00_771 = 
MAKE_PAIR(BgL_arg2735z00_772, BgL_arg2736z00_773); } 
return 
MAKE_PAIR(BgL_arg2731z00_770, BgL_arg2732z00_771);} } } } } } } } } } } 
}



/* gen-struct->plain-class */
obj_t BGl_genzd2structzd2ze3plainzd2classz31zzobject_structz00(obj_t BgL_cnamez00_25, BgL_typez00_bglt BgL_typez00_26, obj_t BgL_slotsz00_27, obj_t BgL_srczd2defzd2_28)
{ AN_OBJECT;
{ /* ./Object/struct.scm 234 */
{ /* ./Object/struct.scm 236 */
obj_t BgL_arg2784z00_790;
{ /* ./Object/struct.scm 236 */
obj_t BgL_arg2787z00_791;obj_t BgL_arg2788z00_792;
BgL_arg2787z00_791 = 
CNST_TABLE_REF(((long)18)); 
{ /* ./Object/struct.scm 236 */
obj_t BgL_arg2791z00_793;obj_t BgL_arg2792z00_794;
{ /* ./Object/struct.scm 236 */
obj_t BgL_arg2795z00_795;obj_t BgL_arg2796z00_796;
BgL_arg2795z00_795 = 
CNST_TABLE_REF(((long)37)); 
{ /* ./Object/struct.scm 236 */
obj_t BgL_arg2799z00_797;obj_t BgL_arg2800z00_798;
BgL_arg2799z00_797 = 
BGl_makezd2typedzd2identz00zzast_identz00(
CNST_TABLE_REF(((long)34)), BgL_cnamez00_25); 
{ /* ./Object/struct.scm 236 */
obj_t BgL_auxz00_1712;
BgL_auxz00_1712 = 
CNST_TABLE_REF(((long)38)); 
BgL_arg2800z00_798 = 
MAKE_PAIR(BgL_auxz00_1712, BNIL); } 
BgL_arg2796z00_796 = 
MAKE_PAIR(BgL_arg2799z00_797, BgL_arg2800z00_798); } 
BgL_arg2791z00_793 = 
MAKE_PAIR(BgL_arg2795z00_795, BgL_arg2796z00_796); } 
{ /* ./Object/struct.scm 238 */
obj_t BgL_arg2805z00_799;
{ /* ./Object/struct.scm 238 */
obj_t BgL_arg2809z00_801;obj_t BgL_arg2810z00_802;
BgL_arg2809z00_801 = 
CNST_TABLE_REF(((long)12)); 
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2813z00_803;obj_t BgL_arg2814z00_804;
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2817z00_805;obj_t BgL_arg2818z00_806;
BgL_arg2817z00_805 = 
CNST_TABLE_REF(((long)39)); 
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2821z00_807;obj_t BgL_arg2822z00_808;
BgL_arg2821z00_807 = 
CNST_TABLE_REF(((long)34)); 
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2825z00_809;
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2829z00_811;obj_t BgL_arg2830z00_812;
BgL_arg2829z00_811 = 
CNST_TABLE_REF(((long)31)); 
{ /* ./Object/struct.scm 239 */
obj_t BgL_arg2833z00_813;obj_t BgL_arg2834z00_814;
BgL_arg2833z00_813 = 
CNST_TABLE_REF(((long)32)); 
{ /* ./Object/struct.scm 239 */
obj_t BgL_auxz00_1722;
BgL_auxz00_1722 = 
BINT(((long)0)); 
BgL_arg2834z00_814 = 
MAKE_PAIR(BgL_auxz00_1722, BNIL); } 
BgL_arg2830z00_812 = 
MAKE_PAIR(BgL_arg2833z00_813, BgL_arg2834z00_814); } 
BgL_arg2825z00_809 = 
MAKE_PAIR(BgL_arg2829z00_811, BgL_arg2830z00_812); } 
BgL_arg2822z00_808 = 
MAKE_PAIR(BgL_arg2825z00_809, BNIL); } 
BgL_arg2818z00_806 = 
MAKE_PAIR(BgL_arg2821z00_807, BgL_arg2822z00_808); } 
BgL_arg2813z00_803 = 
MAKE_PAIR(BgL_arg2817z00_805, BgL_arg2818z00_806); } 
{ /* ./Object/struct.scm 240 */
obj_t BgL_arg2838z00_815;obj_t BgL_arg2839z00_816;
{ 
long BgL_iz00_817;obj_t BgL_slotsz00_818;obj_t BgL_resz00_819;
BgL_iz00_817 = ((long)1); 
BgL_slotsz00_818 = BgL_slotsz00_27; 
BgL_resz00_819 = BNIL; 
BgL_loopz00_820:
{ /* ./Object/struct.scm 244 */
bool_t BgL_test2842z00_821;
BgL_test2842z00_821 = 
NULLP(BgL_slotsz00_818); 
if(BgL_test2842z00_821)
{ /* ./Object/struct.scm 244 */
BgL_arg2838z00_815 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_resz00_819); }  else 
{ /* ./Object/struct.scm 246 */
bool_t BgL_test2844z00_822;
{ /* ./Object/struct.scm 246 */
obj_t BgL_arg2866z00_832;
BgL_arg2866z00_832 = 
CAR(BgL_slotsz00_818); 
BgL_test2844z00_822 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_arg2866z00_832)); } 
if(BgL_test2844z00_822)
{ /* ./Object/struct.scm 246 */
{ /* ./Object/struct.scm 247 */
long BgL_arg2846z00_823;obj_t BgL_arg2847z00_824;
BgL_arg2846z00_823 = 
(BgL_iz00_817+((long)1)); 
BgL_arg2847z00_824 = 
CDR(BgL_slotsz00_818); 
{ 
obj_t BgL_slotsz00_1740;long BgL_iz00_1739;
BgL_iz00_1739 = BgL_arg2846z00_823; 
BgL_slotsz00_1740 = BgL_arg2847z00_824; 
BgL_slotsz00_818 = BgL_slotsz00_1740; 
BgL_iz00_817 = BgL_iz00_1739; 
goto BgL_loopz00_820;} } }  else 
{ /* ./Object/struct.scm 246 */
{ /* ./Object/struct.scm 251 */
obj_t BgL_newz00_825;
{ /* ./Object/struct.scm 251 */
obj_t BgL_arg2860z00_829;obj_t BgL_arg2861z00_830;obj_t BgL_arg2862z00_831;
BgL_arg2860z00_829 = 
CNST_TABLE_REF(((long)34)); 
BgL_arg2861z00_830 = 
CNST_TABLE_REF(((long)32)); 
BgL_arg2862z00_831 = 
CAR(BgL_slotsz00_818); 
BgL_newz00_825 = 
BGl_restorezd2slotzd2zzobject_structz00(BgL_arg2860z00_829, BgL_arg2861z00_830, BgL_cnamez00_25, BgL_typez00_26, BgL_iz00_817, BgL_arg2862z00_831); } 
{ /* ./Object/struct.scm 252 */
long BgL_arg2852z00_826;obj_t BgL_arg2853z00_827;obj_t BgL_arg2854z00_828;
BgL_arg2852z00_826 = 
(BgL_iz00_817+((long)1)); 
BgL_arg2853z00_827 = 
CDR(BgL_slotsz00_818); 
BgL_arg2854z00_828 = 
MAKE_PAIR(BgL_newz00_825, BgL_resz00_819); 
{ 
obj_t BgL_resz00_1750;obj_t BgL_slotsz00_1749;long BgL_iz00_1748;
BgL_iz00_1748 = BgL_arg2852z00_826; 
BgL_slotsz00_1749 = BgL_arg2853z00_827; 
BgL_resz00_1750 = BgL_arg2854z00_828; 
BgL_resz00_819 = BgL_resz00_1750; 
BgL_slotsz00_818 = BgL_slotsz00_1749; 
BgL_iz00_817 = BgL_iz00_1748; 
goto BgL_loopz00_820;} } } } } } } 
{ /* ./Object/struct.scm 238 */
obj_t BgL_auxz00_1751;
BgL_auxz00_1751 = 
CNST_TABLE_REF(((long)34)); 
BgL_arg2839z00_816 = 
MAKE_PAIR(BgL_auxz00_1751, BNIL); } 
BgL_arg2814z00_804 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg2838z00_815, BgL_arg2839z00_816); } 
BgL_arg2810z00_802 = 
MAKE_PAIR(BgL_arg2813z00_803, BgL_arg2814z00_804); } 
BgL_arg2805z00_799 = 
MAKE_PAIR(BgL_arg2809z00_801, BgL_arg2810z00_802); } 
BgL_arg2792z00_794 = 
MAKE_PAIR(BgL_arg2805z00_799, BNIL); } 
BgL_arg2788z00_792 = 
MAKE_PAIR(BgL_arg2791z00_793, BgL_arg2792z00_794); } 
BgL_arg2784z00_790 = 
MAKE_PAIR(BgL_arg2787z00_791, BgL_arg2788z00_792); } 
return 
BGl_epairifyz00zztools_miscz00(BgL_arg2784z00_790, BgL_srczd2defzd2_28);} } 
}



/* gen-struct->wide-class */
obj_t BGl_genzd2structzd2ze3widezd2classz31zzobject_structz00(obj_t BgL_cnamez00_29, BgL_typez00_bglt BgL_typez00_30, obj_t BgL_slotsz00_31, obj_t BgL_srczd2defzd2_32)
{ AN_OBJECT;
{ /* ./Object/struct.scm 261 */
{ /* ./Object/struct.scm 262 */
obj_t BgL_oldz00_833;
BgL_oldz00_833 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)40)), BEOA); 
{ /* ./Object/struct.scm 262 */
long BgL_lenz00_834;
BgL_lenz00_834 = 
BGl_slotszd2lengthzd2zzobject_structz00(BgL_slotsz00_31); 
{ /* ./Object/struct.scm 263 */
obj_t BgL_auxz00_835;
BgL_auxz00_835 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)23)), BEOA); 
{ /* ./Object/struct.scm 264 */
obj_t BgL_tauxz00_836;
{ /* ./Object/struct.scm 265 */
obj_t BgL_list3117z00_952;
{ /* ./Object/struct.scm 265 */
obj_t BgL_arg3119z00_953;
{ /* ./Object/struct.scm 265 */
obj_t BgL_auxz00_1768;
BgL_auxz00_1768 = 
CNST_TABLE_REF(((long)22)); 
BgL_arg3119z00_953 = 
MAKE_PAIR(BgL_auxz00_1768, BNIL); } 
BgL_list3117z00_952 = 
MAKE_PAIR(BgL_auxz00_835, BgL_arg3119z00_953); } 
BgL_tauxz00_836 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list3117z00_952); } 
{ /* ./Object/struct.scm 265 */
obj_t BgL_newz00_837;
BgL_newz00_837 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, 
CNST_TABLE_REF(((long)41)), BEOA); 
{ /* ./Object/struct.scm 266 */
obj_t BgL_tidz00_838;
BgL_tidz00_838 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_30))->BgL_idz00); 
{ /* ./Object/struct.scm 267 */
BgL_globalz00_bglt BgL_holderz00_839;
{ /* ./Object/struct.scm 268 */
BgL_tclassz00_bglt BgL_obj1615z00_1168;
BgL_obj1615z00_1168 = 
(BgL_tclassz00_bglt)(BgL_typez00_30); 
{ 
obj_t BgL_auxz00_1778;
{ /* ./Object/struct.scm 268 */
BgL_objectz00_bglt BgL_auxz00_1779;
BgL_auxz00_1779 = 
(BgL_objectz00_bglt)(BgL_obj1615z00_1168); 
BgL_auxz00_1778 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1779); } 
BgL_holderz00_839 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1778))->BgL_holderz00); } } 
{ /* ./Object/struct.scm 268 */
obj_t BgL_wideningz00_840;
{ /* ./Object/struct.scm 269 */
obj_t BgL_arg3101z00_947;obj_t BgL_arg3102z00_948;
{ /* ./Object/struct.scm 269 */
BgL_tclassz00_bglt BgL_obj1616z00_1169;
BgL_obj1616z00_1169 = 
(BgL_tclassz00_bglt)(BgL_typez00_30); 
{ 
obj_t BgL_auxz00_1784;
{ /* ./Object/struct.scm 269 */
BgL_objectz00_bglt BgL_auxz00_1785;
BgL_auxz00_1785 = 
(BgL_objectz00_bglt)(BgL_obj1616z00_1169); 
BgL_auxz00_1784 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1785); } 
BgL_arg3101z00_947 = 
(((BgL_tclassz00_bglt)CREF(BgL_auxz00_1784))->BgL_wideningz00); } } 
BgL_arg3102z00_948 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./Object/struct.scm 269 */
obj_t BgL_list3104z00_949;
{ /* ./Object/struct.scm 269 */
obj_t BgL_arg3106z00_950;
{ /* ./Object/struct.scm 269 */
obj_t BgL_arg3109z00_951;
BgL_arg3109z00_951 = 
MAKE_PAIR(BgL_tidz00_838, BNIL); 
BgL_arg3106z00_950 = 
MAKE_PAIR(BgL_arg3102z00_948, BgL_arg3109z00_951); } 
BgL_list3104z00_949 = 
MAKE_PAIR(BgL_arg3101z00_947, BgL_arg3106z00_950); } 
BgL_wideningz00_840 = 
BGl_symbolzd2appendzd2zz__r4_symbols_6_4z00(BgL_list3104z00_949); } } 
{ /* ./Object/struct.scm 269 */

{ 
BgL_typez00_bglt BgL_typez00_930;obj_t BgL_exprz00_931;
{ /* ./Object/struct.scm 277 */
obj_t BgL_arg2872z00_842;
{ /* ./Object/struct.scm 277 */
obj_t BgL_arg2875z00_843;obj_t BgL_arg2876z00_844;
BgL_arg2875z00_843 = 
CNST_TABLE_REF(((long)18)); 
{ /* ./Object/struct.scm 277 */
obj_t BgL_arg2879z00_845;obj_t BgL_arg2880z00_846;
{ /* ./Object/struct.scm 277 */
obj_t BgL_arg2883z00_847;obj_t BgL_arg2884z00_848;
BgL_arg2883z00_847 = 
CNST_TABLE_REF(((long)37)); 
{ /* ./Object/struct.scm 278 */
obj_t BgL_arg2887z00_849;obj_t BgL_arg2888z00_850;
BgL_arg2887z00_849 = 
BGl_makezd2typedzd2identz00zzast_identz00(
CNST_TABLE_REF(((long)34)), BgL_cnamez00_29); 
{ /* ./Object/struct.scm 277 */
obj_t BgL_auxz00_1798;
BgL_auxz00_1798 = 
CNST_TABLE_REF(((long)38)); 
BgL_arg2888z00_850 = 
MAKE_PAIR(BgL_auxz00_1798, BNIL); } 
BgL_arg2884z00_848 = 
MAKE_PAIR(BgL_arg2887z00_849, BgL_arg2888z00_850); } 
BgL_arg2879z00_845 = 
MAKE_PAIR(BgL_arg2883z00_847, BgL_arg2884z00_848); } 
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2893z00_851;
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2897z00_853;obj_t BgL_arg2898z00_854;
BgL_arg2897z00_853 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2901z00_855;obj_t BgL_arg2902z00_856;
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2905z00_857;obj_t BgL_arg2906z00_858;
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2909z00_859;
{ /* ./Object/struct.scm 280 */
obj_t BgL_arg2912z00_860;
{ /* ./Object/struct.scm 280 */
obj_t BgL_auxz00_1804;
BgL_auxz00_1804 = 
CNST_TABLE_REF(((long)24)); 
BgL_arg2912z00_860 = 
MAKE_PAIR(BgL_auxz00_1804, BNIL); } 
BgL_arg2909z00_859 = 
MAKE_PAIR(BgL_arg2912z00_860, BNIL); } 
BgL_arg2905z00_857 = 
MAKE_PAIR(BgL_oldz00_833, BgL_arg2909z00_859); } 
{ /* ./Object/struct.scm 281 */
obj_t BgL_arg2917z00_862;
{ /* ./Object/struct.scm 281 */
obj_t BgL_arg2921z00_864;
{ /* ./Object/struct.scm 281 */
obj_t BgL_arg2924z00_865;
{ /* ./Object/struct.scm 281 */
obj_t BgL_arg2928z00_867;obj_t BgL_arg2929z00_868;
BgL_arg2928z00_867 = 
CNST_TABLE_REF(((long)31)); 
{ /* ./Object/struct.scm 281 */
obj_t BgL_arg2932z00_869;obj_t BgL_arg2933z00_870;
BgL_arg2932z00_869 = 
CNST_TABLE_REF(((long)32)); 
{ /* ./Object/struct.scm 281 */
obj_t BgL_auxz00_1811;
BgL_auxz00_1811 = 
BINT(((long)0)); 
BgL_arg2933z00_870 = 
MAKE_PAIR(BgL_auxz00_1811, BNIL); } 
BgL_arg2929z00_868 = 
MAKE_PAIR(BgL_arg2932z00_869, BgL_arg2933z00_870); } 
BgL_arg2924z00_865 = 
MAKE_PAIR(BgL_arg2928z00_867, BgL_arg2929z00_868); } 
BgL_arg2921z00_864 = 
MAKE_PAIR(BgL_arg2924z00_865, BNIL); } 
BgL_arg2917z00_862 = 
MAKE_PAIR(BgL_tauxz00_836, BgL_arg2921z00_864); } 
BgL_arg2906z00_858 = 
MAKE_PAIR(BgL_arg2917z00_862, BNIL); } 
BgL_arg2901z00_855 = 
MAKE_PAIR(BgL_arg2905z00_857, BgL_arg2906z00_858); } 
{ /* ./Object/struct.scm 282 */
obj_t BgL_arg2937z00_871;
{ /* ./Object/struct.scm 282 */
obj_t BgL_arg2941z00_873;obj_t BgL_arg2942z00_874;
BgL_arg2941z00_873 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./Object/struct.scm 282 */
obj_t BgL_arg2946z00_875;obj_t BgL_arg2947z00_876;
{ /* ./Object/struct.scm 282 */
obj_t BgL_arg2950z00_877;
{ /* ./Object/struct.scm 282 */
obj_t BgL_arg2954z00_879;obj_t BgL_arg2955z00_880;
BgL_arg2954z00_879 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_newz00_837, BgL_tidz00_838); 
{ /* ./Object/struct.scm 283 */
obj_t BgL_arg2959z00_881;
BgL_typez00_930 = BgL_typez00_30; 
BgL_exprz00_931 = BgL_oldz00_833; 
{ /* ./Object/struct.scm 271 */
bool_t BgL_test3070z00_933;
{ /* ./Object/struct.scm 271 */
obj_t BgL_auxz00_1822;
BgL_auxz00_1822 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BGl_za2targetzd2languageza2zd2zzengine_paramz00, 
CNST_TABLE_REF(((long)42))); 
BgL_test3070z00_933 = 
CBOOL(BgL_auxz00_1822); } 
if(BgL_test3070z00_933)
{ /* ./Object/struct.scm 272 */
obj_t BgL_arg3072z00_934;obj_t BgL_arg3073z00_935;
BgL_arg3072z00_934 = 
CNST_TABLE_REF(((long)43)); 
BgL_arg3073z00_935 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_930))->BgL_idz00); 
{ /* ./Object/struct.scm 272 */
obj_t BgL_list3075z00_936;
BgL_list3075z00_936 = 
MAKE_PAIR(BgL_exprz00_931, BNIL); 
BgL_arg2959z00_881 = 
BGl_makezd2privatezd2sexpz00zzast_privatez00(BgL_arg3072z00_934, BgL_arg3073z00_935, BgL_list3075z00_936); } }  else 
{ /* ./Object/struct.scm 273 */
obj_t BgL_arg3079z00_937;obj_t BgL_arg3080z00_938;
{ /* ./Object/struct.scm 273 */
obj_t BgL_arg3083z00_939;obj_t BgL_arg3084z00_940;
BgL_arg3083z00_939 = 
CNST_TABLE_REF(((long)44)); 
BgL_arg3084z00_940 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_930))->BgL_idz00); 
BgL_arg3079z00_937 = 
BGl_makezd2typedzd2identz00zzast_identz00(BgL_arg3083z00_939, BgL_arg3084z00_940); } 
{ /* ./Object/struct.scm 274 */
obj_t BgL_arg3088z00_941;obj_t BgL_arg3089z00_942;
{ /* ./Object/struct.scm 274 */
obj_t BgL_arg3094z00_944;
BgL_arg3094z00_944 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_930))->BgL_namez00); 
BgL_arg3088z00_941 = 
string_append_3(BGl_string3347z00zzobject_structz00, BgL_arg3094z00_944, BGl_string3348z00zzobject_structz00); } 
BgL_arg3089z00_942 = 
MAKE_PAIR(BgL_exprz00_931, BNIL); 
BgL_arg3080z00_938 = 
MAKE_PAIR(BgL_arg3088z00_941, BgL_arg3089z00_942); } 
BgL_arg2959z00_881 = 
MAKE_PAIR(BgL_arg3079z00_937, BgL_arg3080z00_938); } } 
BgL_arg2955z00_880 = 
MAKE_PAIR(BgL_arg2959z00_881, BNIL); } 
BgL_arg2950z00_877 = 
MAKE_PAIR(BgL_arg2954z00_879, BgL_arg2955z00_880); } 
BgL_arg2946z00_875 = 
MAKE_PAIR(BgL_arg2950z00_877, BNIL); } 
{ /* ./Object/struct.scm 284 */
obj_t BgL_arg2964z00_883;obj_t BgL_arg2965z00_884;
{ /* ./Object/struct.scm 284 */
obj_t BgL_arg2968z00_885;obj_t BgL_arg2969z00_886;
BgL_arg2968z00_885 = 
CNST_TABLE_REF(((long)45)); 
{ /* ./Object/struct.scm 285 */
obj_t BgL_arg2973z00_887;
{ /* ./Object/struct.scm 285 */
obj_t BgL_arg2976z00_888;
{ /* ./Object/struct.scm 285 */
obj_t BgL_arg2980z00_890;obj_t BgL_arg2981z00_891;
BgL_arg2980z00_890 = 
CNST_TABLE_REF(((long)46)); 
{ /* ./Object/struct.scm 286 */
obj_t BgL_arg2984z00_892;
{ /* ./Object/struct.scm 286 */
obj_t BgL_arg2989z00_894;obj_t BgL_arg2990z00_895;
BgL_arg2989z00_894 = 
CNST_TABLE_REF(((long)47)); 
{ /* ./Object/struct.scm 286 */
obj_t BgL_arg2993z00_896;obj_t BgL_arg2994z00_897;
{ /* ./Object/struct.scm 286 */
BgL_variablez00_bglt BgL_obj1093z00_1170;
BgL_obj1093z00_1170 = 
(BgL_variablez00_bglt)(BgL_holderz00_839); 
BgL_arg2993z00_896 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_1170))->BgL_idz00); } 
{ /* ./Object/struct.scm 287 */
obj_t BgL_arg2998z00_898;
BgL_arg2998z00_898 = 
(((BgL_globalz00_bglt)CREF(BgL_holderz00_839))->BgL_modulez00); 
BgL_arg2994z00_897 = 
MAKE_PAIR(BgL_arg2998z00_898, BNIL); } 
BgL_arg2990z00_895 = 
MAKE_PAIR(BgL_arg2993z00_896, BgL_arg2994z00_897); } 
BgL_arg2984z00_892 = 
MAKE_PAIR(BgL_arg2989z00_894, BgL_arg2990z00_895); } 
BgL_arg2981z00_891 = 
MAKE_PAIR(BgL_arg2984z00_892, BNIL); } 
BgL_arg2976z00_888 = 
MAKE_PAIR(BgL_arg2980z00_890, BgL_arg2981z00_891); } 
BgL_arg2973z00_887 = 
MAKE_PAIR(BgL_arg2976z00_888, BNIL); } 
BgL_arg2969z00_886 = 
MAKE_PAIR(BgL_newz00_837, BgL_arg2973z00_887); } 
BgL_arg2964z00_883 = 
MAKE_PAIR(BgL_arg2968z00_885, BgL_arg2969z00_886); } 
{ /* ./Object/struct.scm 288 */
obj_t BgL_arg3003z00_900;obj_t BgL_arg3004z00_901;
{ /* ./Object/struct.scm 288 */
obj_t BgL_arg3007z00_902;obj_t BgL_arg3008z00_903;
BgL_arg3007z00_902 = 
CNST_TABLE_REF(((long)39)); 
{ /* ./Object/struct.scm 290 */
obj_t BgL_arg3011z00_904;
{ /* ./Object/struct.scm 290 */
obj_t BgL_arg3014z00_905;
{ /* ./Object/struct.scm 290 */
obj_t BgL_arg3018z00_907;
{ /* ./Object/struct.scm 290 */
obj_t BgL_arg3021z00_908;
{ 
long BgL_iz00_910;obj_t BgL_slotsz00_911;obj_t BgL_refza2za2_912;
BgL_iz00_910 = ((long)0); 
BgL_slotsz00_911 = BgL_slotsz00_31; 
BgL_refza2za2_912 = BNIL; 
BgL_loopz00_913:
{ /* ./Object/struct.scm 294 */
bool_t BgL_test3025z00_914;
BgL_test3025z00_914 = 
(BgL_iz00_910==BgL_lenz00_834); 
if(BgL_test3025z00_914)
{ /* ./Object/struct.scm 294 */
BgL_arg3021z00_908 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_refza2za2_912); }  else 
{ /* ./Object/struct.scm 296 */
bool_t BgL_test3027z00_915;
{ /* ./Object/struct.scm 296 */
obj_t BgL_arg3054z00_925;
BgL_arg3054z00_925 = 
CAR(BgL_slotsz00_911); 
BgL_test3027z00_915 = 
BGl_slotzd2virtualzf3z21zzobject_slotsz00(
(BgL_slotz00_bglt)(BgL_arg3054z00_925)); } 
if(BgL_test3027z00_915)
{ /* ./Object/struct.scm 296 */
{ /* ./Object/struct.scm 297 */
long BgL_arg3029z00_916;obj_t BgL_arg3030z00_917;
BgL_arg3029z00_916 = 
(BgL_iz00_910+((long)1)); 
BgL_arg3030z00_917 = 
CDR(BgL_slotsz00_911); 
{ 
obj_t BgL_slotsz00_1867;long BgL_iz00_1866;
BgL_iz00_1866 = BgL_arg3029z00_916; 
BgL_slotsz00_1867 = BgL_arg3030z00_917; 
BgL_slotsz00_911 = BgL_slotsz00_1867; 
BgL_iz00_910 = BgL_iz00_1866; 
goto BgL_loopz00_913;} } }  else 
{ /* ./Object/struct.scm 296 */
{ /* ./Object/struct.scm 301 */
long BgL_arg3035z00_918;obj_t BgL_arg3036z00_919;obj_t BgL_arg3037z00_920;
BgL_arg3035z00_918 = 
(BgL_iz00_910+((long)1)); 
BgL_arg3036z00_919 = 
CDR(BgL_slotsz00_911); 
{ /* ./Object/struct.scm 303 */
obj_t BgL_arg3042z00_921;
{ /* ./Object/struct.scm 303 */
obj_t BgL_arg3045z00_922;obj_t BgL_arg3047z00_923;
BgL_arg3045z00_922 = 
CNST_TABLE_REF(((long)31)); 
{ /* ./Object/struct.scm 303 */
obj_t BgL_arg3050z00_924;
{ /* ./Object/struct.scm 303 */
obj_t BgL_auxz00_1871;
BgL_auxz00_1871 = 
BINT(BgL_iz00_910); 
BgL_arg3050z00_924 = 
MAKE_PAIR(BgL_auxz00_1871, BNIL); } 
BgL_arg3047z00_923 = 
MAKE_PAIR(BgL_auxz00_835, BgL_arg3050z00_924); } 
BgL_arg3042z00_921 = 
MAKE_PAIR(BgL_arg3045z00_922, BgL_arg3047z00_923); } 
BgL_arg3037z00_920 = 
MAKE_PAIR(BgL_arg3042z00_921, BgL_refza2za2_912); } 
{ 
obj_t BgL_refza2za2_1879;obj_t BgL_slotsz00_1878;long BgL_iz00_1877;
BgL_iz00_1877 = BgL_arg3035z00_918; 
BgL_slotsz00_1878 = BgL_arg3036z00_919; 
BgL_refza2za2_1879 = BgL_arg3037z00_920; 
BgL_refza2za2_912 = BgL_refza2za2_1879; 
BgL_slotsz00_911 = BgL_slotsz00_1878; 
BgL_iz00_910 = BgL_iz00_1877; 
goto BgL_loopz00_913;} } } } } } 
BgL_arg3018z00_907 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg3021z00_908, BNIL); } 
BgL_arg3014z00_905 = 
MAKE_PAIR(BgL_wideningz00_840, BgL_arg3018z00_907); } 
BgL_arg3011z00_904 = 
MAKE_PAIR(BgL_arg3014z00_905, BNIL); } 
BgL_arg3008z00_903 = 
MAKE_PAIR(BgL_newz00_837, BgL_arg3011z00_904); } 
BgL_arg3003z00_900 = 
MAKE_PAIR(BgL_arg3007z00_902, BgL_arg3008z00_903); } 
{ /* ./Object/struct.scm 305 */
obj_t BgL_arg3059z00_926;obj_t BgL_arg3061z00_927;
{ /* ./Object/struct.scm 305 */
obj_t BgL_arg3064z00_928;obj_t BgL_arg3065z00_929;
BgL_arg3064z00_928 = 
CNST_TABLE_REF(((long)48)); 
BgL_arg3065z00_929 = 
MAKE_PAIR(BgL_newz00_837, BNIL); 
BgL_arg3059z00_926 = 
MAKE_PAIR(BgL_arg3064z00_928, BgL_arg3065z00_929); } 
BgL_arg3061z00_927 = 
MAKE_PAIR(BgL_newz00_837, BNIL); 
BgL_arg3004z00_901 = 
MAKE_PAIR(BgL_arg3059z00_926, BgL_arg3061z00_927); } 
BgL_arg2965z00_884 = 
MAKE_PAIR(BgL_arg3003z00_900, BgL_arg3004z00_901); } 
BgL_arg2947z00_876 = 
MAKE_PAIR(BgL_arg2964z00_883, BgL_arg2965z00_884); } 
BgL_arg2942z00_874 = 
MAKE_PAIR(BgL_arg2946z00_875, BgL_arg2947z00_876); } 
BgL_arg2937z00_871 = 
MAKE_PAIR(BgL_arg2941z00_873, BgL_arg2942z00_874); } 
BgL_arg2902z00_856 = 
MAKE_PAIR(BgL_arg2937z00_871, BNIL); } 
BgL_arg2898z00_854 = 
MAKE_PAIR(BgL_arg2901z00_855, BgL_arg2902z00_856); } 
BgL_arg2893z00_851 = 
MAKE_PAIR(BgL_arg2897z00_853, BgL_arg2898z00_854); } 
BgL_arg2880z00_846 = 
MAKE_PAIR(BgL_arg2893z00_851, BNIL); } 
BgL_arg2876z00_844 = 
MAKE_PAIR(BgL_arg2879z00_845, BgL_arg2880z00_846); } 
BgL_arg2872z00_842 = 
MAKE_PAIR(BgL_arg2875z00_843, BgL_arg2876z00_844); } 
return 
BGl_epairifyz00zztools_miscz00(BgL_arg2872z00_842, BgL_srczd2defzd2_32);} } } } } } } } } } } } 
}



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



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzobject_structz00()
{ AN_OBJECT;
{ /* ./Object/struct.scm 15 */
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "object_struct"); 
BGl_modulezd2initializa7ationz75zztools_miscz00(((long)64117), "object_struct"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "object_struct"); 
BGl_modulezd2initializa7ationz75zztype_envz00(((long)25186), "object_struct"); 
BGl_modulezd2initializa7ationz75zztype_cachez00(((long)25848), "object_struct"); 
BGl_modulezd2initializa7ationz75zztype_toolsz00(((long)15091), "object_struct"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "object_struct"); 
BGl_modulezd2initializa7ationz75zzast_envz00(((long)62031), "object_struct"); 
BGl_modulezd2initializa7ationz75zzast_identz00(((long)51504), "object_struct"); 
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "object_struct"); 
BGl_modulezd2initializa7ationz75zzobject_classz00(((long)30791), "object_struct"); 
BGl_modulezd2initializa7ationz75zzobject_toolsz00(((long)58597), "object_struct"); 
BGl_modulezd2initializa7ationz75zzobject_slotsz00(((long)44183), "object_struct"); 
return 
BGl_modulezd2initializa7ationz75zzast_privatez00(((long)8704), "object_struct");} 
}

