/*===========================================================================*/
/*   (Type/type.scm)                                                         */
/*   Bigloo (4.5b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Fri Dec 22 05:17:06 PM CET 2023     */
/*===========================================================================*/
/* COMPILATION: (/home/serrano/prgm/project/bigloo/bigloo/bin/bigloo -ldopt -L/home/serrano/prgm/project/bigloo/bigloo/libbacktrace/home/serrano/prgm/project/bigloo/bigloo/lib/bigloo/4.5b  -q -afile .afile -fsharing -fno-reflection -cc gcc -lib-dir /home/serrano/prgm/project/bigloo/bigloo/lib/bigloo/4.5b -unsafev -gno-error-localization -no-hello -O2 -rm -unsafe -s -stdc -indent Type/type.scm) */
/* GC selection */
#define THE_GC BOEHM_GC

/* unsafe mode */
#define BIGLOO_UNSAFE 1

/* traces mode */
#define BIGLOO_TRACE 0

/* standard Bigloo include */
#include <bigloo.h>

#ifdef __cplusplus
extern "C"
{
#endif
#ifndef BGL_MODULE_TYPE_DEFINITIONS
#define BGL_MODULE_TYPE_DEFINITIONS
#ifndef BGL_TYPE_TYPE_TYPE_DEFINITIONS
#define BGL_TYPE_TYPE_TYPE_DEFINITIONS

/* 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;
		int BgL_occurrencez00;
	}              *BgL_typez00_bglt;


#endif													// BGL_TYPE_TYPE_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_z62zc3z04anonymousza31111ze3ze5zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2parentszd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2pointedzd2tozd2byzb0zztype_typez00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_classzd2nilzd2initz12z12zz__objectz00(obj_t);
	static obj_t BGl_z62typezd2namezd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_requirezd2initializa7ationz75zztype_typez00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2pointedzd2tozd2byzd2setz12z12zztype_typez00(BgL_typez00_bglt,
		obj_t);
	static obj_t BGl_z62foreignzd2typezf3z43zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2aliaszb0zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2locationzd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2coercezd2toz00zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2namezb0zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2occurrencezd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_za2classesza2z00zz__objectz00;
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2coercezd2tozd2setz12zc0zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_IMPORT obj_t BGl_registerzd2genericz12zc0zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	static BgL_typez00_bglt BGl_z62getzd2aliasedzd2typez62zztype_typez00(obj_t,
		obj_t);
	static obj_t BGl_z62zc3z04anonymousza31220ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_toplevelzd2initzd2zztype_typez00(void);
	static obj_t BGl_z62typezd2importzd2locationzd2setz12za2zztype_typez00(obj_t,
		obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2occurrencezd2setz12z12zztype_typez00(BgL_typez00_bglt, int);
	static obj_t BGl_z62zc3z04anonymousza31140ze3ze5zztype_typez00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2magiczf3zd2setz12ze1zztype_typez00(BgL_typez00_bglt, bool_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2z42z90zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2importzd2locationz62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_genericzd2initzd2zztype_typez00(void);
	BGL_EXPORTED_DECL obj_t BGl_typezd2namezd2zztype_typez00(BgL_typez00_bglt);
	BGL_IMPORT obj_t BGl_makezd2classzd2fieldz00zz__objectz00(obj_t, obj_t, obj_t,
		bool_t, bool_t, obj_t, obj_t, obj_t);
	static obj_t BGl_objectzd2initzd2zztype_typez00(void);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2namezd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2importzd2locationz00zztype_typez00(BgL_typez00_bglt);
	BGL_IMPORT obj_t BGl_za2inheritancesza2z00zz__objectz00;
	BGL_EXPORTED_DECL obj_t BGl_typezd2idzd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2occurrencezd2incr1072z62zztype_typez00(obj_t,
		obj_t);
	BGL_EXPORTED_DEF obj_t BGl_typez00zztype_typez00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2importzd2locationzd2setz12zc0zztype_typez00(BgL_typez00_bglt,
		obj_t);
	static obj_t BGl_z62zc3z04anonymousza31127ze3ze5zztype_typez00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2locationzd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62zc3z04anonymousza31209ze3ze5zztype_typez00(obj_t);
	BGL_EXPORTED_DECL bool_t
		BGl_typezd2magiczf3z21zztype_typez00(BgL_typez00_bglt);
	static BgL_typez00_bglt BGl_z62makezd2typezb0zztype_typez00(obj_t, obj_t,
		obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t,
		obj_t, obj_t, obj_t);
	BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2classzd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62bigloozd2typezf3z43zztype_typez00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_methodzd2initzd2zztype_typez00(void);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2occurrencezd2incrementz12z12zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62zc3z04anonymousza31227ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62typezd2magiczf3zd2setz12z83zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62typezd2classzb0zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31147ze3ze5zztype_typez00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2parentszd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_EXPORTED_DECL BgL_typez00_bglt BGl_makezd2typezd2zztype_typez00(obj_t,
		obj_t, obj_t, obj_t, obj_t, obj_t, bool_t, bool_t, obj_t, obj_t, obj_t,
		obj_t, obj_t, obj_t, int);
	static obj_t BGl_z62zc3z04anonymousza31164ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31237ze3ze5zztype_typez00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2tvectorzd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	static obj_t BGl_z62typezd2occurrencezd2incrementz12z70zztype_typez00(obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2aliaszd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_EXPORTED_DECL bool_t
		BGl_foreignzd2typezf3z21zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2aliaszd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62zc3z04anonymousza31157ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62typezd2parentszb0zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2tvectorzd2zztype_typez00(BgL_typez00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2pointedzd2tozd2byzd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62lambda1200z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31263ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62lambda1125z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31255ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62typezd2siza7ez17zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1126z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1207z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31247ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62lambda1208z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62typezd2z42zf2zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2siza7ezd2setz12zd7zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62zc3z04anonymousza31280ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62lambda1218z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1138z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1219z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1139z62zztype_typez00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t BGl_typezf3zf3zztype_typez00(obj_t);
	static obj_t BGl_z62lambda1225z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1145z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1226z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1146z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62typezd2magiczf3z43zztype_typez00(obj_t, obj_t);
	static BgL_typez00_bglt BGl_z62typezd2nilzb0zztype_typez00(obj_t);
	static obj_t BGl_z62typezd2pointedzd2tozd2byzd2setz12z70zztype_typez00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62lambda1235z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1155z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1236z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1156z62zztype_typez00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_locationz00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(long,
		char *);
	BGL_IMPORT obj_t
		BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(long, char *);
	BGL_IMPORT obj_t
		BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__bitz00(long, char *);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2initzf3zd2setz12ze1zztype_typez00(BgL_typez00_bglt, bool_t);
	static obj_t BGl_z62typezd2initzf3zd2setz12z83zztype_typez00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2siza7ez75zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62lambda1162z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1163z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31194ze3ze5zztype_typez00(obj_t);
	static obj_t BGl_z62lambda1245z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1246z62zztype_typez00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2classzd2setz12z12zztype_typez00(BgL_typez00_bglt, obj_t);
	static obj_t BGl_z62typezd2classzd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62typezd2locationzd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62lambda1253z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1254z62zztype_typez00(obj_t, obj_t, obj_t);
	static BgL_typez00_bglt BGl_z62lambda1096z62zztype_typez00(obj_t, obj_t,
		obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t,
		obj_t, obj_t, obj_t);
	static BgL_typez00_bglt BGl_z62lambda1098z62zztype_typez00(obj_t);
	static obj_t BGl_z62typezf3z91zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2z42zd2setz12z50zztype_typez00(BgL_typez00_bglt, obj_t);
	static obj_t BGl_z62lambda1261z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1262z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_cnstzd2initzd2zztype_typez00(void);
	static obj_t BGl_libraryzd2moduleszd2initz00zztype_typez00(void);
	BGL_EXPORTED_DECL obj_t
		BGl_typezd2siza7ezd2setz12zb5zztype_typez00(BgL_typez00_bglt, obj_t);
	BGL_IMPORT obj_t BGl_registerzd2classz12zc0zz__objectz00(obj_t, obj_t, obj_t,
		long, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
	static obj_t BGl_importedzd2moduleszd2initz00zztype_typez00(void);
	static obj_t BGl_gczd2rootszd2initz00zztype_typez00(void);
	static obj_t BGl_z62lambda1192z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1193z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1278z62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62lambda1279z62zztype_typez00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62lambda1199z62zztype_typez00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_objectz00zz__objectz00;
	static obj_t BGl_z62typezd2idzb0zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t
		BGl_typezd2initzf3z21zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2parentszd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62typezd2tvectorzd2setz12z70zztype_typez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62typezd2initzf3z43zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2coercezd2tozd2setz12za2zztype_typez00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL BgL_typez00_bglt BGl_typezd2nilzd2zztype_typez00(void);
	BGL_EXPORTED_DECL int
		BGl_typezd2occurrencezd2zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2occurrencezb0zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t
		BGl_bigloozd2typezf3z21zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2coercezd2toz62zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2tvectorzb0zztype_typez00(obj_t, obj_t);
	static obj_t BGl_z62typezd2locationzb0zztype_typez00(obj_t, obj_t);
	BGL_EXPORTED_DECL BgL_typez00_bglt
		BGl_getzd2aliasedzd2typez00zztype_typez00(BgL_typez00_bglt);
	static obj_t BGl_z62typezd2z42zd2setz12z32zztype_typez00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_typezd2aliaszd2zztype_typez00(BgL_typez00_bglt);
	static obj_t __cnst[24];


	   
		 
		DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1302z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1342za7,
		BGl_z62zc3z04anonymousza31164ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1303z00zztype_typez00,
		BgL_bgl_za762lambda1163za7621343z00, BGl_z62lambda1163z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1304z00zztype_typez00,
		BgL_bgl_za762lambda1162za7621344z00, BGl_z62lambda1162z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1305z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1345za7,
		BGl_z62zc3z04anonymousza31194ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1306z00zztype_typez00,
		BgL_bgl_za762lambda1193za7621346z00, BGl_z62lambda1193z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1307z00zztype_typez00,
		BgL_bgl_za762lambda1192za7621347z00, BGl_z62lambda1192z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1308z00zztype_typez00,
		BgL_bgl_za762lambda1200za7621348z00, BGl_z62lambda1200z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1309z00zztype_typez00,
		BgL_bgl_za762lambda1199za7621349z00, BGl_z62lambda1199z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2typezd2envz00zztype_typez00,
		BgL_bgl_za762makeza7d2typeza7b1350za7, BGl_z62makezd2typezb0zztype_typez00,
		0L, BUNSPEC, 15);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1310z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1351za7,
		BGl_z62zc3z04anonymousza31209ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1311z00zztype_typez00,
		BgL_bgl_za762lambda1208za7621352z00, BGl_z62lambda1208z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1312z00zztype_typez00,
		BgL_bgl_za762lambda1207za7621353z00, BGl_z62lambda1207z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1313z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1354za7,
		BGl_z62zc3z04anonymousza31220ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1314z00zztype_typez00,
		BgL_bgl_za762lambda1219za7621355z00, BGl_z62lambda1219z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1315z00zztype_typez00,
		BgL_bgl_za762lambda1218za7621356z00, BGl_z62lambda1218z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1316z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1357za7,
		BGl_z62zc3z04anonymousza31227ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1317z00zztype_typez00,
		BgL_bgl_za762lambda1226za7621358z00, BGl_z62lambda1226z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1318z00zztype_typez00,
		BgL_bgl_za762lambda1225za7621359z00, BGl_z62lambda1225z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1319z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1360za7,
		BGl_z62zc3z04anonymousza31237ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2coercezd2tozd2envzd2zztype_typez00,
		BgL_bgl_za762typeza7d2coerce1361z00,
		BGl_z62typezd2coercezd2toz62zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2initzf3zd2setz12zd2envz33zztype_typez00,
		BgL_bgl_za762typeza7d2initza7f1362za7,
		BGl_z62typezd2initzf3zd2setz12z83zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1320z00zztype_typez00,
		BgL_bgl_za762lambda1236za7621363z00, BGl_z62lambda1236z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1321z00zztype_typez00,
		BgL_bgl_za762lambda1235za7621364z00, BGl_z62lambda1235z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1322z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1365za7,
		BGl_z62zc3z04anonymousza31247ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1323z00zztype_typez00,
		BgL_bgl_za762lambda1246za7621366z00, BGl_z62lambda1246z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1324z00zztype_typez00,
		BgL_bgl_za762lambda1245za7621367z00, BGl_z62lambda1245z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1325z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1368za7,
		BGl_z62zc3z04anonymousza31255ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1326z00zztype_typez00,
		BgL_bgl_za762lambda1254za7621369z00, BGl_z62lambda1254z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1327z00zztype_typez00,
		BgL_bgl_za762lambda1253za7621370z00, BGl_z62lambda1253z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1328z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1371za7,
		BGl_z62zc3z04anonymousza31263ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1329z00zztype_typez00,
		BgL_bgl_za762lambda1262za7621372z00, BGl_z62lambda1262z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1338z00zztype_typez00,
		BgL_bgl_string1338za700za7za7t1373za7, "type-occurrence-incr1072", 24);
	      DEFINE_STRING(BGl_string1339z00zztype_typez00,
		BgL_bgl_string1339za700za7za7t1374za7, "type_type", 9);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2nilzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2nilza7b01375za7, BGl_z62typezd2nilzb0zztype_typez00,
		0L, BUNSPEC, 0);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2aliaszd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2aliasza71376za7, BGl_z62typezd2aliaszb0zztype_typez00,
		0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1330z00zztype_typez00,
		BgL_bgl_za762lambda1261za7621377z00, BGl_z62lambda1261z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1331z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1378za7,
		BGl_z62zc3z04anonymousza31280ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1332z00zztype_typez00,
		BgL_bgl_za762lambda1279za7621379z00, BGl_z62lambda1279z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1333z00zztype_typez00,
		BgL_bgl_za762lambda1278za7621380z00, BGl_z62lambda1278z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STRING(BGl_string1340z00zztype_typez00,
		BgL_bgl_string1340za700za7za7t1381za7,
		"_ type_type type int occurrence import-location location tvector pointed-to-by alias $ magic? bool init? parents coerce-to class size obj name symbol id C bigloo ",
		162);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1334z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1382za7,
		BGl_z62zc3z04anonymousza31111ze3ze5zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1335z00zztype_typez00,
		BgL_bgl_za762lambda1098za7621383z00, BGl_z62lambda1098z62zztype_typez00, 0L,
		BUNSPEC, 0);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2typezf3zd2envzf3zztype_typez00,
		BgL_bgl_za762biglooza7d2type1384z00,
		BGl_z62bigloozd2typezf3z43zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1336z00zztype_typez00,
		BgL_bgl_za762lambda1096za7621385z00, BGl_z62lambda1096z62zztype_typez00, 0L,
		BUNSPEC, 15);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1337z00zztype_typez00,
		BgL_bgl_za762typeza7d2occurr1386z00,
		BGl_z62typezd2occurrencezd2incr1072z62zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2parentszd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2parent1387z00,
		BGl_z62typezd2parentszd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2magiczf3zd2envzf3zztype_typez00,
		BgL_bgl_za762typeza7d2magicza71388za7,
		BGl_z62typezd2magiczf3z43zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2siza7ezd2setz12zd2envz67zztype_typez00,
		BgL_bgl_za762typeza7d2siza7a7e1389za7,
		BGl_z62typezd2siza7ezd2setz12zd7zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2namezd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2nameza7b1390za7, BGl_z62typezd2namezb0zztype_typez00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2tvectorzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2tvecto1391z00, BGl_z62typezd2tvectorzb0zztype_typez00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2importzd2locationzd2envzd2zztype_typez00,
		BgL_bgl_za762typeza7d2import1392z00,
		BGl_z62typezd2importzd2locationz62zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1290z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1393za7,
		BGl_z62zc3z04anonymousza31127ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1291z00zztype_typez00,
		BgL_bgl_za762lambda1126za7621394z00, BGl_z62lambda1126z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1292z00zztype_typez00,
		BgL_bgl_za762lambda1125za7621395z00, BGl_z62lambda1125z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1293z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1396za7,
		BGl_z62zc3z04anonymousza31140ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1294z00zztype_typez00,
		BgL_bgl_za762lambda1139za7621397z00, BGl_z62lambda1139z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1295z00zztype_typez00,
		BgL_bgl_za762lambda1138za7621398z00, BGl_z62lambda1138z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1296z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1399za7,
		BGl_z62zc3z04anonymousza31147ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1297z00zztype_typez00,
		BgL_bgl_za762lambda1146za7621400z00, BGl_z62lambda1146z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1298z00zztype_typez00,
		BgL_bgl_za762lambda1145za7621401z00, BGl_z62lambda1145z62zztype_typez00, 0L,
		BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1299z00zztype_typez00,
		BgL_bgl_za762za7c3za704anonymo1402za7,
		BGl_z62zc3z04anonymousza31157ze3ze5zztype_typez00, 0L, BUNSPEC, 0);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2locationzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2locati1403z00,
		BGl_z62typezd2locationzb0zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2magiczf3zd2setz12zd2envz33zztype_typez00,
		BgL_bgl_za762typeza7d2magicza71404za7,
		BGl_z62typezd2magiczf3zd2setz12z83zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2z42zd2setz12zd2envz82zztype_typez00,
		BgL_bgl_za762typeza7d2za742za7d21405z00,
		BGl_z62typezd2z42zd2setz12z32zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2locationzd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2locati1406z00,
		BGl_z62typezd2locationzd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2coercezd2tozd2setz12zd2envz12zztype_typez00,
		BgL_bgl_za762typeza7d2coerce1407z00,
		BGl_z62typezd2coercezd2tozd2setz12za2zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2occurrencezd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2occurr1408z00,
		BGl_z62typezd2occurrencezd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2tvectorzd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2tvecto1409z00,
		BGl_z62typezd2tvectorzd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_foreignzd2typezf3zd2envzf3zztype_typez00,
		BgL_bgl_za762foreignza7d2typ1410z00,
		BGl_z62foreignzd2typezf3z43zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2namezd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2nameza7d1411za7,
		BGl_z62typezd2namezd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2classzd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2classza71412za7,
		BGl_z62typezd2classzd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2importzd2locationzd2setz12zd2envz12zztype_typez00,
		BgL_bgl_za762typeza7d2import1413z00,
		BGl_z62typezd2importzd2locationzd2setz12za2zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2parentszd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2parent1414z00, BGl_z62typezd2parentszb0zztype_typez00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2z42zd2envz42zztype_typez00,
		BgL_bgl_za762typeza7d2za742za7f21415z00, BGl_z62typezd2z42zf2zztype_typez00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2pointedzd2tozd2byzd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2pointe1416z00,
		BGl_z62typezd2pointedzd2tozd2byzd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezf3zd2envz21zztype_typez00,
		BgL_bgl_za762typeza7f3za791za7za7t1417za7, BGl_z62typezf3z91zztype_typez00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2pointedzd2tozd2byzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2pointe1418z00,
		BGl_z62typezd2pointedzd2tozd2byzb0zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_GENERIC
		(BGl_typezd2occurrencezd2incrementz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2occurr1419z00,
		BGl_z62typezd2occurrencezd2incrementz12z70zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2idzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2idza7b0za71420z00, BGl_z62typezd2idzb0zztype_typez00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2aliasedzd2typezd2envzd2zztype_typez00,
		BgL_bgl_za762getza7d2aliased1421z00,
		BGl_z62getzd2aliasedzd2typez62zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_typezd2aliaszd2setz12zd2envzc0zztype_typez00,
		BgL_bgl_za762typeza7d2aliasza71422za7,
		BGl_z62typezd2aliaszd2setz12z70zztype_typez00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2siza7ezd2envza7zztype_typez00,
		BgL_bgl_za762typeza7d2siza7a7e1423za7,
		BGl_z62typezd2siza7ez17zztype_typez00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2occurrencezd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2occurr1424z00,
		BGl_z62typezd2occurrencezb0zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2classzd2envz00zztype_typez00,
		BgL_bgl_za762typeza7d2classza71425za7, BGl_z62typezd2classzb0zztype_typez00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_typezd2initzf3zd2envzf3zztype_typez00,
		BgL_bgl_za762typeza7d2initza7f1426za7,
		BGl_z62typezd2initzf3z43zztype_typez00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1300z00zztype_typez00,
		BgL_bgl_za762lambda1156za7621427z00, BGl_z62lambda1156z62zztype_typez00, 0L,
		BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1301z00zztype_typez00,
		BgL_bgl_za762lambda1155za7621428z00, BGl_z62lambda1155z62zztype_typez00, 0L,
		BUNSPEC, 1);

/* GC roots registration */
	static obj_t bgl_gc_roots_register()
	{
#if defined( BGL_GC_ROOTS )
#define ADD_ROOT( addr ) (addr > roots_max ? roots_max = addr : (addr < roots_min ? roots_min = addr : 0))
		void *roots_min = (void *) ULONG_MAX, *roots_max = 0;
		     ADD_ROOT((void *) (&BGl_requirezd2initializa7ationz75zztype_typez00));
		     ADD_ROOT((void *) (&BGl_typez00zztype_typez00));
#undef ADD_ROOT
		if   (roots_max > 0)
			     GC_add_roots(roots_min, ((void **) roots_max) + 1);
#endif
		     return BUNSPEC;
	}



/* module-initialization */
	BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long
		BgL_checksumz00_785, char *BgL_fromz00_786)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zztype_typez00))
				{
					BGl_requirezd2initializa7ationz75zztype_typez00 = BBOOL(((bool_t) 0));
					BGl_gczd2rootszd2initz00zztype_typez00();
					BGl_libraryzd2moduleszd2initz00zztype_typez00();
					BGl_cnstzd2initzd2zztype_typez00();
					BGl_importedzd2moduleszd2initz00zztype_typez00();
					BGl_objectzd2initzd2zztype_typez00();
					BGl_genericzd2initzd2zztype_typez00();
					return BGl_toplevelzd2initzd2zztype_typez00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* library-modules-init */
	obj_t BGl_libraryzd2moduleszd2initz00zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			BGl_modulezd2initializa7ationz75zz__objectz00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__readerz00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__bitz00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(0L,
				"type_type");
			BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(0L, "type_type");
			BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(0L,
				"type_type");
			return BUNSPEC;
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			{	/* Type/type.scm 15 */
				obj_t BgL_cportz00_714;

				{	/* Type/type.scm 15 */
					obj_t BgL_stringz00_721;

					BgL_stringz00_721 = BGl_string1340z00zztype_typez00;
					{	/* Type/type.scm 15 */
						obj_t BgL_startz00_722;

						BgL_startz00_722 = BINT(0L);
						{	/* Type/type.scm 15 */
							obj_t BgL_endz00_723;

							BgL_endz00_723 = BINT(STRING_LENGTH(((obj_t) BgL_stringz00_721)));
							{	/* Type/type.scm 15 */

								BgL_cportz00_714 =
									BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00
									(BgL_stringz00_721, BgL_startz00_722, BgL_endz00_723);
				}}}}
				{
					long BgL_iz00_715;

					BgL_iz00_715 = 23L;
				BgL_loopz00_716:
					if ((BgL_iz00_715 == -1L))
						{	/* Type/type.scm 15 */
							return BUNSPEC;
						}
					else
						{	/* Type/type.scm 15 */
							{	/* Type/type.scm 15 */
								obj_t BgL_arg1341z00_717;

								{	/* Type/type.scm 15 */

									{	/* Type/type.scm 15 */
										obj_t BgL_locationz00_719;

										BgL_locationz00_719 = BBOOL(((bool_t) 0));
										{	/* Type/type.scm 15 */

											BgL_arg1341z00_717 =
												BGl_readz00zz__readerz00(BgL_cportz00_714,
												BgL_locationz00_719);
										}
									}
								}
								{	/* Type/type.scm 15 */
									int BgL_tmpz00_814;

									BgL_tmpz00_814 = (int) (BgL_iz00_715);
									CNST_TABLE_SET(BgL_tmpz00_814, BgL_arg1341z00_717);
							}}
							{	/* Type/type.scm 15 */
								int BgL_auxz00_720;

								BgL_auxz00_720 = (int) ((BgL_iz00_715 - 1L));
								{
									long BgL_iz00_819;

									BgL_iz00_819 = (long) (BgL_auxz00_720);
									BgL_iz00_715 = BgL_iz00_819;
									goto BgL_loopz00_716;
								}
							}
						}
				}
			}
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			return BUNSPEC;
		}

	}



/* make-type */
	BGL_EXPORTED_DEF BgL_typez00_bglt BGl_makezd2typezd2zztype_typez00(obj_t
		BgL_id1030z00_3, obj_t BgL_name1031z00_4, obj_t BgL_siza7e1032za7_5,
		obj_t BgL_class1033z00_6, obj_t BgL_coercezd2to1034zd2_7,
		obj_t BgL_parents1035z00_8, bool_t BgL_initzf31036zf3_9,
		bool_t BgL_magiczf31037zf3_10, obj_t BgL_z421038z42_11,
		obj_t BgL_alias1039z00_12, obj_t BgL_pointedzd2tozd2by1040z00_13,
		obj_t BgL_tvector1041z00_14, obj_t BgL_location1042z00_15,
		obj_t BgL_importzd2location1043zd2_16, int BgL_occurrence1044z00_17)
	{
		{	/* Type/type.sch 50 */
			{	/* Type/type.sch 50 */
				BgL_typez00_bglt BgL_new1066z00_725;

				{	/* Type/type.sch 50 */
					BgL_typez00_bglt BgL_new1065z00_726;

					BgL_new1065z00_726 =
						((BgL_typez00_bglt) BOBJECT(GC_MALLOC(sizeof(struct
									BgL_typez00_bgl))));
					{	/* Type/type.sch 50 */
						long BgL_arg1080z00_727;

						BgL_arg1080z00_727 = BGL_CLASS_NUM(BGl_typez00zztype_typez00);
						BGL_OBJECT_CLASS_NUM_SET(
							((BgL_objectz00_bglt) BgL_new1065z00_726), BgL_arg1080z00_727);
					}
					{	/* Type/type.sch 50 */
						BgL_objectz00_bglt BgL_tmpz00_826;

						BgL_tmpz00_826 = ((BgL_objectz00_bglt) BgL_new1065z00_726);
						BGL_OBJECT_WIDENING_SET(BgL_tmpz00_826, BFALSE);
					}
					((BgL_objectz00_bglt) BgL_new1065z00_726);
					BgL_new1066z00_725 = BgL_new1065z00_726;
				}
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_idz00) =
					((obj_t) BgL_id1030z00_3), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_namez00) =
					((obj_t) BgL_name1031z00_4), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_siza7eza7) =
					((obj_t) BgL_siza7e1032za7_5), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_classz00) =
					((obj_t) BgL_class1033z00_6), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->
						BgL_coercezd2tozd2) = ((obj_t) BgL_coercezd2to1034zd2_7), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_parentsz00) =
					((obj_t) BgL_parents1035z00_8), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_initzf3zf3) =
					((bool_t) BgL_initzf31036zf3_9), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_magiczf3zf3) =
					((bool_t) BgL_magiczf31037zf3_10), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_z42z42) =
					((obj_t) BgL_z421038z42_11), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_aliasz00) =
					((obj_t) BgL_alias1039z00_12), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->
						BgL_pointedzd2tozd2byz00) =
					((obj_t) BgL_pointedzd2tozd2by1040z00_13), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_tvectorz00) =
					((obj_t) BgL_tvector1041z00_14), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_locationz00) =
					((obj_t) BgL_location1042z00_15), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->
						BgL_importzd2locationzd2) =
					((obj_t) BgL_importzd2location1043zd2_16), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(BgL_new1066z00_725))->BgL_occurrencez00) =
					((int) BgL_occurrence1044z00_17), BUNSPEC);
				return BgL_new1066z00_725;
			}
		}

	}



/* &make-type */
	BgL_typez00_bglt BGl_z62makezd2typezb0zztype_typez00(obj_t BgL_envz00_457,
		obj_t BgL_id1030z00_458, obj_t BgL_name1031z00_459,
		obj_t BgL_siza7e1032za7_460, obj_t BgL_class1033z00_461,
		obj_t BgL_coercezd2to1034zd2_462, obj_t BgL_parents1035z00_463,
		obj_t BgL_initzf31036zf3_464, obj_t BgL_magiczf31037zf3_465,
		obj_t BgL_z421038z42_466, obj_t BgL_alias1039z00_467,
		obj_t BgL_pointedzd2tozd2by1040z00_468, obj_t BgL_tvector1041z00_469,
		obj_t BgL_location1042z00_470, obj_t BgL_importzd2location1043zd2_471,
		obj_t BgL_occurrence1044z00_472)
	{
		{	/* Type/type.sch 50 */
			return
				BGl_makezd2typezd2zztype_typez00(BgL_id1030z00_458, BgL_name1031z00_459,
				BgL_siza7e1032za7_460, BgL_class1033z00_461, BgL_coercezd2to1034zd2_462,
				BgL_parents1035z00_463, CBOOL(BgL_initzf31036zf3_464),
				CBOOL(BgL_magiczf31037zf3_465), BgL_z421038z42_466,
				BgL_alias1039z00_467, BgL_pointedzd2tozd2by1040z00_468,
				BgL_tvector1041z00_469, BgL_location1042z00_470,
				BgL_importzd2location1043zd2_471, CINT(BgL_occurrence1044z00_472));
		}

	}



/* type? */
	BGL_EXPORTED_DEF bool_t BGl_typezf3zf3zztype_typez00(obj_t BgL_objz00_18)
	{
		{	/* Type/type.sch 51 */
			{	/* Type/type.sch 51 */
				obj_t BgL_classz00_728;

				BgL_classz00_728 = BGl_typez00zztype_typez00;
				if (BGL_OBJECTP(BgL_objz00_18))
					{	/* Type/type.sch 51 */
						BgL_objectz00_bglt BgL_arg1801z00_729;

						BgL_arg1801z00_729 = (BgL_objectz00_bglt) (BgL_objz00_18);
						if (BGL_CONDEXPAND_ISA_ARCH64())
							{	/* Type/type.sch 51 */
								long BgL_idxz00_730;

								BgL_idxz00_730 = BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_729);
								return
									(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
										(BgL_idxz00_730 + 1L)) == BgL_classz00_728);
							}
						else
							{	/* Type/type.sch 51 */
								bool_t BgL_res1283z00_733;

								{	/* Type/type.sch 51 */
									obj_t BgL_oclassz00_734;

									{	/* Type/type.sch 51 */
										long BgL_arg1808z00_735;

										{	/* Type/type.sch 51 */
											long BgL_arg1809z00_736;

											BgL_arg1809z00_736 =
												BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_729);
											BgL_arg1808z00_735 = (BgL_arg1809z00_736 - OBJECT_TYPE);
										}
										BgL_oclassz00_734 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_735);
									}
									{	/* Type/type.sch 51 */
										bool_t BgL__ortest_1115z00_737;

										BgL__ortest_1115z00_737 =
											(BgL_classz00_728 == BgL_oclassz00_734);
										if (BgL__ortest_1115z00_737)
											{	/* Type/type.sch 51 */
												BgL_res1283z00_733 = BgL__ortest_1115z00_737;
											}
										else
											{	/* Type/type.sch 51 */
												long BgL_odepthz00_738;

												BgL_odepthz00_738 = BGL_CLASS_DEPTH(BgL_oclassz00_734);
												if ((1L < BgL_odepthz00_738))
													{	/* Type/type.sch 51 */
														obj_t BgL_arg1797z00_739;

														BgL_arg1797z00_739 =
															BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_734, 1L);
														BgL_res1283z00_733 =
															(BgL_arg1797z00_739 == BgL_classz00_728);
													}
												else
													{	/* Type/type.sch 51 */
														BgL_res1283z00_733 = ((bool_t) 0);
													}
											}
									}
								}
								return BgL_res1283z00_733;
							}
					}
				else
					{	/* Type/type.sch 51 */
						return ((bool_t) 0);
					}
			}
		}

	}



/* &type? */
	obj_t BGl_z62typezf3z91zztype_typez00(obj_t BgL_envz00_473,
		obj_t BgL_objz00_474)
	{
		{	/* Type/type.sch 51 */
			return BBOOL(BGl_typezf3zf3zztype_typez00(BgL_objz00_474));
		}

	}



/* type-nil */
	BGL_EXPORTED_DEF BgL_typez00_bglt BGl_typezd2nilzd2zztype_typez00(void)
	{
		{	/* Type/type.sch 52 */
			{	/* Type/type.sch 52 */
				obj_t BgL_classz00_360;

				BgL_classz00_360 = BGl_typez00zztype_typez00;
				{	/* Type/type.sch 52 */
					obj_t BgL__ortest_1117z00_361;

					BgL__ortest_1117z00_361 = BGL_CLASS_NIL(BgL_classz00_360);
					if (CBOOL(BgL__ortest_1117z00_361))
						{	/* Type/type.sch 52 */
							return ((BgL_typez00_bglt) BgL__ortest_1117z00_361);
						}
					else
						{	/* Type/type.sch 52 */
							return
								((BgL_typez00_bglt)
								BGl_classzd2nilzd2initz12z12zz__objectz00(BgL_classz00_360));
						}
				}
			}
		}

	}



/* &type-nil */
	BgL_typez00_bglt BGl_z62typezd2nilzb0zztype_typez00(obj_t BgL_envz00_475)
	{
		{	/* Type/type.sch 52 */
			return BGl_typezd2nilzd2zztype_typez00();
		}

	}



/* type-occurrence */
	BGL_EXPORTED_DEF int BGl_typezd2occurrencezd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_19)
	{
		{	/* Type/type.sch 53 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_19))->BgL_occurrencez00);
		}

	}



/* &type-occurrence */
	obj_t BGl_z62typezd2occurrencezb0zztype_typez00(obj_t BgL_envz00_476,
		obj_t BgL_oz00_477)
	{
		{	/* Type/type.sch 53 */
			return
				BINT(BGl_typezd2occurrencezd2zztype_typez00(
					((BgL_typez00_bglt) BgL_oz00_477)));
		}

	}



/* type-occurrence-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2occurrencezd2setz12z12zztype_typez00(BgL_typez00_bglt
		BgL_oz00_20, int BgL_vz00_21)
	{
		{	/* Type/type.sch 54 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_20))->BgL_occurrencez00) =
				((int) BgL_vz00_21), BUNSPEC);
		}

	}



/* &type-occurrence-set! */
	obj_t BGl_z62typezd2occurrencezd2setz12z70zztype_typez00(obj_t BgL_envz00_478,
		obj_t BgL_oz00_479, obj_t BgL_vz00_480)
	{
		{	/* Type/type.sch 54 */
			return
				BGl_typezd2occurrencezd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_479), CINT(BgL_vz00_480));
		}

	}



/* type-import-location */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2importzd2locationz00zztype_typez00(BgL_typez00_bglt BgL_oz00_22)
	{
		{	/* Type/type.sch 55 */
			return
				(((BgL_typez00_bglt) COBJECT(BgL_oz00_22))->BgL_importzd2locationzd2);
		}

	}



/* &type-import-location */
	obj_t BGl_z62typezd2importzd2locationz62zztype_typez00(obj_t BgL_envz00_481,
		obj_t BgL_oz00_482)
	{
		{	/* Type/type.sch 55 */
			return
				BGl_typezd2importzd2locationz00zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_482));
		}

	}



/* type-import-location-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2importzd2locationzd2setz12zc0zztype_typez00(BgL_typez00_bglt
		BgL_oz00_23, obj_t BgL_vz00_24)
	{
		{	/* Type/type.sch 56 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_23))->BgL_importzd2locationzd2) =
				((obj_t) BgL_vz00_24), BUNSPEC);
		}

	}



/* &type-import-location-set! */
	obj_t BGl_z62typezd2importzd2locationzd2setz12za2zztype_typez00(obj_t
		BgL_envz00_483, obj_t BgL_oz00_484, obj_t BgL_vz00_485)
	{
		{	/* Type/type.sch 56 */
			return
				BGl_typezd2importzd2locationzd2setz12zc0zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_484), BgL_vz00_485);
		}

	}



/* type-location */
	BGL_EXPORTED_DEF obj_t BGl_typezd2locationzd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_25)
	{
		{	/* Type/type.sch 57 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_25))->BgL_locationz00);
		}

	}



/* &type-location */
	obj_t BGl_z62typezd2locationzb0zztype_typez00(obj_t BgL_envz00_486,
		obj_t BgL_oz00_487)
	{
		{	/* Type/type.sch 57 */
			return
				BGl_typezd2locationzd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_487));
		}

	}



/* type-location-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2locationzd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_26,
		obj_t BgL_vz00_27)
	{
		{	/* Type/type.sch 58 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_26))->BgL_locationz00) =
				((obj_t) BgL_vz00_27), BUNSPEC);
		}

	}



/* &type-location-set! */
	obj_t BGl_z62typezd2locationzd2setz12z70zztype_typez00(obj_t BgL_envz00_488,
		obj_t BgL_oz00_489, obj_t BgL_vz00_490)
	{
		{	/* Type/type.sch 58 */
			return
				BGl_typezd2locationzd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_489), BgL_vz00_490);
		}

	}



/* type-tvector */
	BGL_EXPORTED_DEF obj_t BGl_typezd2tvectorzd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_28)
	{
		{	/* Type/type.sch 59 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_28))->BgL_tvectorz00);
		}

	}



/* &type-tvector */
	obj_t BGl_z62typezd2tvectorzb0zztype_typez00(obj_t BgL_envz00_491,
		obj_t BgL_oz00_492)
	{
		{	/* Type/type.sch 59 */
			return
				BGl_typezd2tvectorzd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_492));
		}

	}



/* type-tvector-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2tvectorzd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_29,
		obj_t BgL_vz00_30)
	{
		{	/* Type/type.sch 60 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_29))->BgL_tvectorz00) =
				((obj_t) BgL_vz00_30), BUNSPEC);
		}

	}



/* &type-tvector-set! */
	obj_t BGl_z62typezd2tvectorzd2setz12z70zztype_typez00(obj_t BgL_envz00_493,
		obj_t BgL_oz00_494, obj_t BgL_vz00_495)
	{
		{	/* Type/type.sch 60 */
			return
				BGl_typezd2tvectorzd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_494), BgL_vz00_495);
		}

	}



/* type-pointed-to-by */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2pointedzd2tozd2byzd2zztype_typez00(BgL_typez00_bglt BgL_oz00_31)
	{
		{	/* Type/type.sch 61 */
			return
				(((BgL_typez00_bglt) COBJECT(BgL_oz00_31))->BgL_pointedzd2tozd2byz00);
		}

	}



/* &type-pointed-to-by */
	obj_t BGl_z62typezd2pointedzd2tozd2byzb0zztype_typez00(obj_t BgL_envz00_496,
		obj_t BgL_oz00_497)
	{
		{	/* Type/type.sch 61 */
			return
				BGl_typezd2pointedzd2tozd2byzd2zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_497));
		}

	}



/* type-pointed-to-by-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2pointedzd2tozd2byzd2setz12z12zztype_typez00(BgL_typez00_bglt
		BgL_oz00_32, obj_t BgL_vz00_33)
	{
		{	/* Type/type.sch 62 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_32))->BgL_pointedzd2tozd2byz00) =
				((obj_t) BgL_vz00_33), BUNSPEC);
		}

	}



/* &type-pointed-to-by-set! */
	obj_t BGl_z62typezd2pointedzd2tozd2byzd2setz12z70zztype_typez00(obj_t
		BgL_envz00_498, obj_t BgL_oz00_499, obj_t BgL_vz00_500)
	{
		{	/* Type/type.sch 62 */
			return
				BGl_typezd2pointedzd2tozd2byzd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_499), BgL_vz00_500);
		}

	}



/* type-alias */
	BGL_EXPORTED_DEF obj_t BGl_typezd2aliaszd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_34)
	{
		{	/* Type/type.sch 63 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_34))->BgL_aliasz00);
		}

	}



/* &type-alias */
	obj_t BGl_z62typezd2aliaszb0zztype_typez00(obj_t BgL_envz00_501,
		obj_t BgL_oz00_502)
	{
		{	/* Type/type.sch 63 */
			return
				BGl_typezd2aliaszd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_502));
		}

	}



/* type-alias-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2aliaszd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_35,
		obj_t BgL_vz00_36)
	{
		{	/* Type/type.sch 64 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_35))->BgL_aliasz00) =
				((obj_t) BgL_vz00_36), BUNSPEC);
		}

	}



/* &type-alias-set! */
	obj_t BGl_z62typezd2aliaszd2setz12z70zztype_typez00(obj_t BgL_envz00_503,
		obj_t BgL_oz00_504, obj_t BgL_vz00_505)
	{
		{	/* Type/type.sch 64 */
			return
				BGl_typezd2aliaszd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_504), BgL_vz00_505);
		}

	}



/* type-$ */
	BGL_EXPORTED_DEF obj_t BGl_typezd2z42z90zztype_typez00(BgL_typez00_bglt
		BgL_oz00_37)
	{
		{	/* Type/type.sch 65 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_37))->BgL_z42z42);
		}

	}



/* &type-$ */
	obj_t BGl_z62typezd2z42zf2zztype_typez00(obj_t BgL_envz00_506,
		obj_t BgL_oz00_507)
	{
		{	/* Type/type.sch 65 */
			return BGl_typezd2z42z90zztype_typez00(((BgL_typez00_bglt) BgL_oz00_507));
		}

	}



/* type-$-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2z42zd2setz12z50zztype_typez00(BgL_typez00_bglt BgL_oz00_38,
		obj_t BgL_vz00_39)
	{
		{	/* Type/type.sch 66 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_38))->BgL_z42z42) =
				((obj_t) BgL_vz00_39), BUNSPEC);
		}

	}



/* &type-$-set! */
	obj_t BGl_z62typezd2z42zd2setz12z32zztype_typez00(obj_t BgL_envz00_508,
		obj_t BgL_oz00_509, obj_t BgL_vz00_510)
	{
		{	/* Type/type.sch 66 */
			return
				BGl_typezd2z42zd2setz12z50zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_509), BgL_vz00_510);
		}

	}



/* type-magic? */
	BGL_EXPORTED_DEF bool_t BGl_typezd2magiczf3z21zztype_typez00(BgL_typez00_bglt
		BgL_oz00_40)
	{
		{	/* Type/type.sch 67 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_40))->BgL_magiczf3zf3);
		}

	}



/* &type-magic? */
	obj_t BGl_z62typezd2magiczf3z43zztype_typez00(obj_t BgL_envz00_511,
		obj_t BgL_oz00_512)
	{
		{	/* Type/type.sch 67 */
			return
				BBOOL(BGl_typezd2magiczf3z21zztype_typez00(
					((BgL_typez00_bglt) BgL_oz00_512)));
		}

	}



/* type-magic?-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2magiczf3zd2setz12ze1zztype_typez00(BgL_typez00_bglt BgL_oz00_41,
		bool_t BgL_vz00_42)
	{
		{	/* Type/type.sch 68 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_41))->BgL_magiczf3zf3) =
				((bool_t) BgL_vz00_42), BUNSPEC);
		}

	}



/* &type-magic?-set! */
	obj_t BGl_z62typezd2magiczf3zd2setz12z83zztype_typez00(obj_t BgL_envz00_513,
		obj_t BgL_oz00_514, obj_t BgL_vz00_515)
	{
		{	/* Type/type.sch 68 */
			return
				BGl_typezd2magiczf3zd2setz12ze1zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_514), CBOOL(BgL_vz00_515));
		}

	}



/* type-init? */
	BGL_EXPORTED_DEF bool_t BGl_typezd2initzf3z21zztype_typez00(BgL_typez00_bglt
		BgL_oz00_43)
	{
		{	/* Type/type.sch 69 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_43))->BgL_initzf3zf3);
		}

	}



/* &type-init? */
	obj_t BGl_z62typezd2initzf3z43zztype_typez00(obj_t BgL_envz00_516,
		obj_t BgL_oz00_517)
	{
		{	/* Type/type.sch 69 */
			return
				BBOOL(BGl_typezd2initzf3z21zztype_typez00(
					((BgL_typez00_bglt) BgL_oz00_517)));
		}

	}



/* type-init?-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2initzf3zd2setz12ze1zztype_typez00(BgL_typez00_bglt BgL_oz00_44,
		bool_t BgL_vz00_45)
	{
		{	/* Type/type.sch 70 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_44))->BgL_initzf3zf3) =
				((bool_t) BgL_vz00_45), BUNSPEC);
		}

	}



/* &type-init?-set! */
	obj_t BGl_z62typezd2initzf3zd2setz12z83zztype_typez00(obj_t BgL_envz00_518,
		obj_t BgL_oz00_519, obj_t BgL_vz00_520)
	{
		{	/* Type/type.sch 70 */
			return
				BGl_typezd2initzf3zd2setz12ze1zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_519), CBOOL(BgL_vz00_520));
		}

	}



/* type-parents */
	BGL_EXPORTED_DEF obj_t BGl_typezd2parentszd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_46)
	{
		{	/* Type/type.sch 71 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_46))->BgL_parentsz00);
		}

	}



/* &type-parents */
	obj_t BGl_z62typezd2parentszb0zztype_typez00(obj_t BgL_envz00_521,
		obj_t BgL_oz00_522)
	{
		{	/* Type/type.sch 71 */
			return
				BGl_typezd2parentszd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_522));
		}

	}



/* type-parents-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2parentszd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_47,
		obj_t BgL_vz00_48)
	{
		{	/* Type/type.sch 72 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_47))->BgL_parentsz00) =
				((obj_t) BgL_vz00_48), BUNSPEC);
		}

	}



/* &type-parents-set! */
	obj_t BGl_z62typezd2parentszd2setz12z70zztype_typez00(obj_t BgL_envz00_523,
		obj_t BgL_oz00_524, obj_t BgL_vz00_525)
	{
		{	/* Type/type.sch 72 */
			return
				BGl_typezd2parentszd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_524), BgL_vz00_525);
		}

	}



/* type-coerce-to */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2coercezd2toz00zztype_typez00(BgL_typez00_bglt BgL_oz00_49)
	{
		{	/* Type/type.sch 73 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_49))->BgL_coercezd2tozd2);
		}

	}



/* &type-coerce-to */
	obj_t BGl_z62typezd2coercezd2toz62zztype_typez00(obj_t BgL_envz00_526,
		obj_t BgL_oz00_527)
	{
		{	/* Type/type.sch 73 */
			return
				BGl_typezd2coercezd2toz00zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_527));
		}

	}



/* type-coerce-to-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2coercezd2tozd2setz12zc0zztype_typez00(BgL_typez00_bglt
		BgL_oz00_50, obj_t BgL_vz00_51)
	{
		{	/* Type/type.sch 74 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_50))->BgL_coercezd2tozd2) =
				((obj_t) BgL_vz00_51), BUNSPEC);
		}

	}



/* &type-coerce-to-set! */
	obj_t BGl_z62typezd2coercezd2tozd2setz12za2zztype_typez00(obj_t
		BgL_envz00_528, obj_t BgL_oz00_529, obj_t BgL_vz00_530)
	{
		{	/* Type/type.sch 74 */
			return
				BGl_typezd2coercezd2tozd2setz12zc0zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_529), BgL_vz00_530);
		}

	}



/* type-class */
	BGL_EXPORTED_DEF obj_t BGl_typezd2classzd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_52)
	{
		{	/* Type/type.sch 75 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_52))->BgL_classz00);
		}

	}



/* &type-class */
	obj_t BGl_z62typezd2classzb0zztype_typez00(obj_t BgL_envz00_531,
		obj_t BgL_oz00_532)
	{
		{	/* Type/type.sch 75 */
			return
				BGl_typezd2classzd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_532));
		}

	}



/* type-class-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2classzd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_53,
		obj_t BgL_vz00_54)
	{
		{	/* Type/type.sch 76 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_53))->BgL_classz00) =
				((obj_t) BgL_vz00_54), BUNSPEC);
		}

	}



/* &type-class-set! */
	obj_t BGl_z62typezd2classzd2setz12z70zztype_typez00(obj_t BgL_envz00_533,
		obj_t BgL_oz00_534, obj_t BgL_vz00_535)
	{
		{	/* Type/type.sch 76 */
			return
				BGl_typezd2classzd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_534), BgL_vz00_535);
		}

	}



/* type-size */
	BGL_EXPORTED_DEF obj_t BGl_typezd2siza7ez75zztype_typez00(BgL_typez00_bglt
		BgL_oz00_55)
	{
		{	/* Type/type.sch 77 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_55))->BgL_siza7eza7);
		}

	}



/* &type-size */
	obj_t BGl_z62typezd2siza7ez17zztype_typez00(obj_t BgL_envz00_536,
		obj_t BgL_oz00_537)
	{
		{	/* Type/type.sch 77 */
			return
				BGl_typezd2siza7ez75zztype_typez00(((BgL_typez00_bglt) BgL_oz00_537));
		}

	}



/* type-size-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2siza7ezd2setz12zb5zztype_typez00(BgL_typez00_bglt BgL_oz00_56,
		obj_t BgL_vz00_57)
	{
		{	/* Type/type.sch 78 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_56))->BgL_siza7eza7) =
				((obj_t) BgL_vz00_57), BUNSPEC);
		}

	}



/* &type-size-set! */
	obj_t BGl_z62typezd2siza7ezd2setz12zd7zztype_typez00(obj_t BgL_envz00_538,
		obj_t BgL_oz00_539, obj_t BgL_vz00_540)
	{
		{	/* Type/type.sch 78 */
			return
				BGl_typezd2siza7ezd2setz12zb5zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_539), BgL_vz00_540);
		}

	}



/* type-name */
	BGL_EXPORTED_DEF obj_t BGl_typezd2namezd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_58)
	{
		{	/* Type/type.sch 79 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_58))->BgL_namez00);
		}

	}



/* &type-name */
	obj_t BGl_z62typezd2namezb0zztype_typez00(obj_t BgL_envz00_541,
		obj_t BgL_oz00_542)
	{
		{	/* Type/type.sch 79 */
			return
				BGl_typezd2namezd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_542));
		}

	}



/* type-name-set! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2namezd2setz12z12zztype_typez00(BgL_typez00_bglt BgL_oz00_59,
		obj_t BgL_vz00_60)
	{
		{	/* Type/type.sch 80 */
			return
				((((BgL_typez00_bglt) COBJECT(BgL_oz00_59))->BgL_namez00) =
				((obj_t) BgL_vz00_60), BUNSPEC);
		}

	}



/* &type-name-set! */
	obj_t BGl_z62typezd2namezd2setz12z70zztype_typez00(obj_t BgL_envz00_543,
		obj_t BgL_oz00_544, obj_t BgL_vz00_545)
	{
		{	/* Type/type.sch 80 */
			return
				BGl_typezd2namezd2setz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_oz00_544), BgL_vz00_545);
		}

	}



/* type-id */
	BGL_EXPORTED_DEF obj_t BGl_typezd2idzd2zztype_typez00(BgL_typez00_bglt
		BgL_oz00_61)
	{
		{	/* Type/type.sch 81 */
			return (((BgL_typez00_bglt) COBJECT(BgL_oz00_61))->BgL_idz00);
		}

	}



/* &type-id */
	obj_t BGl_z62typezd2idzb0zztype_typez00(obj_t BgL_envz00_546,
		obj_t BgL_oz00_547)
	{
		{	/* Type/type.sch 81 */
			return BGl_typezd2idzd2zztype_typez00(((BgL_typez00_bglt) BgL_oz00_547));
		}

	}



/* get-aliased-type */
	BGL_EXPORTED_DEF BgL_typez00_bglt
		BGl_getzd2aliasedzd2typez00zztype_typez00(BgL_typez00_bglt BgL_typez00_64)
	{
		{	/* Type/type.scm 62 */
			{
				obj_t BgL_typez00_80;

				{
					obj_t BgL_auxz00_970;

					BgL_typez00_80 = ((obj_t) BgL_typez00_64);
				BgL_zc3z04anonymousza31081ze3z87_81:
					{	/* Type/type.scm 64 */
						bool_t BgL_test1436z00_971;

						{	/* Type/type.scm 64 */
							obj_t BgL_arg1085z00_85;

							BgL_arg1085z00_85 =
								(((BgL_typez00_bglt) COBJECT(
										((BgL_typez00_bglt) BgL_typez00_80)))->BgL_aliasz00);
							{	/* Type/type.scm 64 */
								obj_t BgL_classz00_363;

								BgL_classz00_363 = BGl_typez00zztype_typez00;
								if (BGL_OBJECTP(BgL_arg1085z00_85))
									{	/* Type/type.scm 64 */
										BgL_objectz00_bglt BgL_arg1801z00_365;

										BgL_arg1801z00_365 =
											(BgL_objectz00_bglt) (BgL_arg1085z00_85);
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* Type/type.scm 64 */
												long BgL_idxz00_371;

												BgL_idxz00_371 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_365);
												BgL_test1436z00_971 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_371 + 1L)) == BgL_classz00_363);
											}
										else
											{	/* Type/type.scm 64 */
												bool_t BgL_res1284z00_393;

												{	/* Type/type.scm 64 */
													obj_t BgL_oclassz00_379;

													{	/* Type/type.scm 64 */
														long BgL_arg1808z00_385;

														{	/* Type/type.scm 64 */
															long BgL_arg1809z00_386;

															BgL_arg1809z00_386 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_365);
															BgL_arg1808z00_385 =
																(BgL_arg1809z00_386 - OBJECT_TYPE);
														}
														BgL_oclassz00_379 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_385);
													}
													{	/* Type/type.scm 64 */
														bool_t BgL__ortest_1115z00_380;

														BgL__ortest_1115z00_380 =
															(BgL_classz00_363 == BgL_oclassz00_379);
														if (BgL__ortest_1115z00_380)
															{	/* Type/type.scm 64 */
																BgL_res1284z00_393 = BgL__ortest_1115z00_380;
															}
														else
															{	/* Type/type.scm 64 */
																long BgL_odepthz00_381;

																BgL_odepthz00_381 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_379);
																if ((1L < BgL_odepthz00_381))
																	{	/* Type/type.scm 64 */
																		obj_t BgL_arg1797z00_383;

																		BgL_arg1797z00_383 =
																			BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_379,
																			1L);
																		BgL_res1284z00_393 =
																			(BgL_arg1797z00_383 == BgL_classz00_363);
																	}
																else
																	{	/* Type/type.scm 64 */
																		BgL_res1284z00_393 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test1436z00_971 = BgL_res1284z00_393;
											}
									}
								else
									{	/* Type/type.scm 64 */
										BgL_test1436z00_971 = ((bool_t) 0);
									}
							}
						}
						if (BgL_test1436z00_971)
							{
								obj_t BgL_typez00_993;

								BgL_typez00_993 =
									(((BgL_typez00_bglt) COBJECT(
											((BgL_typez00_bglt) BgL_typez00_80)))->BgL_aliasz00);
								BgL_typez00_80 = BgL_typez00_993;
								goto BgL_zc3z04anonymousza31081ze3z87_81;
							}
						else
							{	/* Type/type.scm 64 */
								BgL_auxz00_970 = BgL_typez00_80;
							}
					}
					return ((BgL_typez00_bglt) BgL_auxz00_970);
				}
			}
		}

	}



/* &get-aliased-type */
	BgL_typez00_bglt BGl_z62getzd2aliasedzd2typez62zztype_typez00(obj_t
		BgL_envz00_548, obj_t BgL_typez00_549)
	{
		{	/* Type/type.scm 62 */
			return
				BGl_getzd2aliasedzd2typez00zztype_typez00(
				((BgL_typez00_bglt) BgL_typez00_549));
		}

	}



/* bigloo-type? */
	BGL_EXPORTED_DEF bool_t BGl_bigloozd2typezf3z21zztype_typez00(BgL_typez00_bglt
		BgL_typez00_65)
	{
		{	/* Type/type.scm 71 */
			return
				(
				(((BgL_typez00_bglt) COBJECT(BgL_typez00_65))->BgL_classz00) ==
				CNST_TABLE_REF(0L));
		}

	}



/* &bigloo-type? */
	obj_t BGl_z62bigloozd2typezf3z43zztype_typez00(obj_t BgL_envz00_550,
		obj_t BgL_typez00_551)
	{
		{	/* Type/type.scm 71 */
			return
				BBOOL(BGl_bigloozd2typezf3z21zztype_typez00(
					((BgL_typez00_bglt) BgL_typez00_551)));
		}

	}



/* foreign-type? */
	BGL_EXPORTED_DEF bool_t
		BGl_foreignzd2typezf3z21zztype_typez00(BgL_typez00_bglt BgL_typez00_66)
	{
		{	/* Type/type.scm 77 */
			return
				(
				(((BgL_typez00_bglt) COBJECT(BgL_typez00_66))->BgL_classz00) ==
				CNST_TABLE_REF(1L));
		}

	}



/* &foreign-type? */
	obj_t BGl_z62foreignzd2typezf3z43zztype_typez00(obj_t BgL_envz00_552,
		obj_t BgL_typez00_553)
	{
		{	/* Type/type.scm 77 */
			return
				BBOOL(BGl_foreignzd2typezf3z21zztype_typez00(
					((BgL_typez00_bglt) BgL_typez00_553)));
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			{	/* Type/type.scm 21 */
				obj_t BgL_arg1094z00_92;
				obj_t BgL_arg1095z00_93;

				{	/* Type/type.scm 21 */
					obj_t BgL_v1070z00_118;

					BgL_v1070z00_118 = create_vector(15L);
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1121z00_119;

						BgL_arg1121z00_119 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(2L),
							BGl_proc1292z00zztype_typez00, BGl_proc1291z00zztype_typez00,
							((bool_t) 1), ((bool_t) 0), BFALSE, BGl_proc1290z00zztype_typez00,
							CNST_TABLE_REF(3L));
						VECTOR_SET(BgL_v1070z00_118, 0L, BgL_arg1121z00_119);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1128z00_132;

						BgL_arg1128z00_132 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(4L),
							BGl_proc1295z00zztype_typez00, BGl_proc1294z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1293z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 1L, BgL_arg1128z00_132);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1141z00_145;

						BgL_arg1141z00_145 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(6L),
							BGl_proc1298z00zztype_typez00, BGl_proc1297z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1296z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 2L, BgL_arg1141z00_145);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1148z00_158;

						BgL_arg1148z00_158 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(7L),
							BGl_proc1301z00zztype_typez00, BGl_proc1300z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1299z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 3L, BgL_arg1148z00_158);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1158z00_171;

						BgL_arg1158z00_171 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(8L),
							BGl_proc1304z00zztype_typez00, BGl_proc1303z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1302z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 4L, BgL_arg1158z00_171);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1167z00_184;

						BgL_arg1167z00_184 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(9L),
							BGl_proc1307z00zztype_typez00, BGl_proc1306z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1305z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 5L, BgL_arg1167z00_184);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1196z00_197;

						BgL_arg1196z00_197 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(10L),
							BGl_proc1309z00zztype_typez00, BGl_proc1308z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BFALSE, CNST_TABLE_REF(11L));
						VECTOR_SET(BgL_v1070z00_118, 6L, BgL_arg1196z00_197);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1201z00_207;

						BgL_arg1201z00_207 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(12L),
							BGl_proc1312z00zztype_typez00, BGl_proc1311z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1310z00zztype_typez00,
							CNST_TABLE_REF(11L));
						VECTOR_SET(BgL_v1070z00_118, 7L, BgL_arg1201z00_207);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1211z00_220;

						BgL_arg1211z00_220 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(13L),
							BGl_proc1315z00zztype_typez00, BGl_proc1314z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1313z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 8L, BgL_arg1211z00_220);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1221z00_233;

						BgL_arg1221z00_233 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(14L),
							BGl_proc1318z00zztype_typez00, BGl_proc1317z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1316z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 9L, BgL_arg1221z00_233);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1228z00_246;

						BgL_arg1228z00_246 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(15L),
							BGl_proc1321z00zztype_typez00, BGl_proc1320z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1319z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 10L, BgL_arg1228z00_246);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1240z00_259;

						BgL_arg1240z00_259 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(16L),
							BGl_proc1324z00zztype_typez00, BGl_proc1323z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1322z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 11L, BgL_arg1240z00_259);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1248z00_272;

						BgL_arg1248z00_272 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(17L),
							BGl_proc1327z00zztype_typez00, BGl_proc1326z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1325z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 12L, BgL_arg1248z00_272);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1256z00_285;

						BgL_arg1256z00_285 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(18L),
							BGl_proc1330z00zztype_typez00, BGl_proc1329z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1328z00zztype_typez00,
							CNST_TABLE_REF(5L));
						VECTOR_SET(BgL_v1070z00_118, 13L, BgL_arg1256z00_285);
					}
					{	/* Type/type.scm 21 */
						obj_t BgL_arg1265z00_298;

						BgL_arg1265z00_298 =
							BGl_makezd2classzd2fieldz00zz__objectz00(CNST_TABLE_REF(19L),
							BGl_proc1333z00zztype_typez00, BGl_proc1332z00zztype_typez00,
							((bool_t) 0), ((bool_t) 0), BFALSE, BGl_proc1331z00zztype_typez00,
							CNST_TABLE_REF(20L));
						VECTOR_SET(BgL_v1070z00_118, 14L, BgL_arg1265z00_298);
					}
					BgL_arg1094z00_92 = BgL_v1070z00_118;
				}
				{	/* Type/type.scm 21 */
					obj_t BgL_v1071z00_311;

					BgL_v1071z00_311 = create_vector(0L);
					BgL_arg1095z00_93 = BgL_v1071z00_311;
				}
				return (BGl_typez00zztype_typez00 =
					BGl_registerzd2classz12zc0zz__objectz00(CNST_TABLE_REF(21L),
						CNST_TABLE_REF(22L), BGl_objectz00zz__objectz00, 17599L,
						BGl_proc1336z00zztype_typez00, BGl_proc1335z00zztype_typez00,
						BFALSE, BGl_proc1334z00zztype_typez00, BFALSE, BgL_arg1094z00_92,
						BgL_arg1095z00_93), BUNSPEC);
			}
		}

	}



/* &<@anonymous:1111> */
	obj_t BGl_z62zc3z04anonymousza31111ze3ze5zztype_typez00(obj_t BgL_envz00_601,
		obj_t BgL_new1064z00_602)
	{
		{	/* Type/type.scm 21 */
			{
				BgL_typez00_bglt BgL_auxz00_1077;

				((((BgL_typez00_bglt) COBJECT(
								((BgL_typez00_bglt) BgL_new1064z00_602)))->BgL_idz00) = ((obj_t)
						CNST_TABLE_REF(23L)), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(
								((BgL_typez00_bglt) BgL_new1064z00_602)))->BgL_namez00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_siza7eza7) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_classz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_coercezd2tozd2) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_parentsz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_initzf3zf3) =
					((bool_t) ((bool_t) 0)), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_magiczf3zf3) =
					((bool_t) ((bool_t) 0)), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_z42z42) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_aliasz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_pointedzd2tozd2byz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_tvectorz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_locationz00) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_importzd2locationzd2) =
					((obj_t) BUNSPEC), BUNSPEC);
				((((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
									BgL_new1064z00_602)))->BgL_occurrencez00) =
					((int) (int) (0L)), BUNSPEC);
				BgL_auxz00_1077 = ((BgL_typez00_bglt) BgL_new1064z00_602);
				return ((obj_t) BgL_auxz00_1077);
			}
		}

	}



/* &lambda1098 */
	BgL_typez00_bglt BGl_z62lambda1098z62zztype_typez00(obj_t BgL_envz00_603)
	{
		{	/* Type/type.scm 21 */
			{	/* Type/type.scm 21 */
				BgL_typez00_bglt BgL_new1063z00_741;

				BgL_new1063z00_741 =
					((BgL_typez00_bglt) BOBJECT(GC_MALLOC(sizeof(struct
								BgL_typez00_bgl))));
				{	/* Type/type.scm 21 */
					long BgL_arg1110z00_742;

					BgL_arg1110z00_742 = BGL_CLASS_NUM(BGl_typez00zztype_typez00);
					BGL_OBJECT_CLASS_NUM_SET(
						((BgL_objectz00_bglt) BgL_new1063z00_741), BgL_arg1110z00_742);
				}
				{	/* Type/type.scm 21 */
					BgL_objectz00_bglt BgL_tmpz00_1116;

					BgL_tmpz00_1116 = ((BgL_objectz00_bglt) BgL_new1063z00_741);
					BGL_OBJECT_WIDENING_SET(BgL_tmpz00_1116, BFALSE);
				}
				((BgL_objectz00_bglt) BgL_new1063z00_741);
				return BgL_new1063z00_741;
			}
		}

	}



/* &lambda1096 */
	BgL_typez00_bglt BGl_z62lambda1096z62zztype_typez00(obj_t BgL_envz00_604,
		obj_t BgL_id1048z00_605, obj_t BgL_name1049z00_606,
		obj_t BgL_siza7e1050za7_607, obj_t BgL_class1051z00_608,
		obj_t BgL_coercezd2to1052zd2_609, obj_t BgL_parents1053z00_610,
		obj_t BgL_initzf31054zf3_611, obj_t BgL_magiczf31055zf3_612,
		obj_t BgL_z421056z42_613, obj_t BgL_alias1057z00_614,
		obj_t BgL_pointedzd2tozd2by1058z00_615, obj_t BgL_tvector1059z00_616,
		obj_t BgL_location1060z00_617, obj_t BgL_importzd2location1061zd2_618,
		obj_t BgL_occurrence1062z00_619)
	{
		{	/* Type/type.scm 21 */
			{	/* Type/type.scm 21 */
				bool_t BgL_initzf31054zf3_744;
				bool_t BgL_magiczf31055zf3_745;
				int BgL_occurrence1062z00_746;

				BgL_initzf31054zf3_744 = CBOOL(BgL_initzf31054zf3_611);
				BgL_magiczf31055zf3_745 = CBOOL(BgL_magiczf31055zf3_612);
				BgL_occurrence1062z00_746 = CINT(BgL_occurrence1062z00_619);
				{	/* Type/type.scm 21 */
					BgL_typez00_bglt BgL_new1069z00_747;

					{	/* Type/type.scm 21 */
						BgL_typez00_bglt BgL_new1068z00_748;

						BgL_new1068z00_748 =
							((BgL_typez00_bglt) BOBJECT(GC_MALLOC(sizeof(struct
										BgL_typez00_bgl))));
						{	/* Type/type.scm 21 */
							long BgL_arg1097z00_749;

							BgL_arg1097z00_749 = BGL_CLASS_NUM(BGl_typez00zztype_typez00);
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt) BgL_new1068z00_748), BgL_arg1097z00_749);
						}
						{	/* Type/type.scm 21 */
							BgL_objectz00_bglt BgL_tmpz00_1127;

							BgL_tmpz00_1127 = ((BgL_objectz00_bglt) BgL_new1068z00_748);
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_1127, BFALSE);
						}
						((BgL_objectz00_bglt) BgL_new1068z00_748);
						BgL_new1069z00_747 = BgL_new1068z00_748;
					}
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_idz00) =
						((obj_t) ((obj_t) BgL_id1048z00_605)), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_namez00) =
						((obj_t) BgL_name1049z00_606), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_siza7eza7) =
						((obj_t) BgL_siza7e1050za7_607), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_classz00) =
						((obj_t) BgL_class1051z00_608), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->
							BgL_coercezd2tozd2) =
						((obj_t) BgL_coercezd2to1052zd2_609), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_parentsz00) =
						((obj_t) BgL_parents1053z00_610), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_initzf3zf3) =
						((bool_t) BgL_initzf31054zf3_744), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_magiczf3zf3) =
						((bool_t) BgL_magiczf31055zf3_745), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_z42z42) =
						((obj_t) BgL_z421056z42_613), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_aliasz00) =
						((obj_t) BgL_alias1057z00_614), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->
							BgL_pointedzd2tozd2byz00) =
						((obj_t) BgL_pointedzd2tozd2by1058z00_615), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_tvectorz00) =
						((obj_t) BgL_tvector1059z00_616), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->BgL_locationz00) =
						((obj_t) BgL_location1060z00_617), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->
							BgL_importzd2locationzd2) =
						((obj_t) BgL_importzd2location1061zd2_618), BUNSPEC);
					((((BgL_typez00_bglt) COBJECT(BgL_new1069z00_747))->
							BgL_occurrencez00) = ((int) BgL_occurrence1062z00_746), BUNSPEC);
					return BgL_new1069z00_747;
				}
			}
		}

	}



/* &<@anonymous:1280> */
	obj_t BGl_z62zc3z04anonymousza31280ze3ze5zztype_typez00(obj_t BgL_envz00_620)
	{
		{	/* Type/type.scm 21 */
			return BINT(0L);
		}

	}



/* &lambda1279 */
	obj_t BGl_z62lambda1279z62zztype_typez00(obj_t BgL_envz00_621,
		obj_t BgL_oz00_622, obj_t BgL_vz00_623)
	{
		{	/* Type/type.scm 21 */
			{	/* Type/type.scm 21 */
				int BgL_vz00_751;

				BgL_vz00_751 = CINT(BgL_vz00_623);
				return
					((((BgL_typez00_bglt) COBJECT(
								((BgL_typez00_bglt) BgL_oz00_622)))->BgL_occurrencez00) =
					((int) BgL_vz00_751), BUNSPEC);
		}}

	}



/* &lambda1278 */
	obj_t BGl_z62lambda1278z62zztype_typez00(obj_t BgL_envz00_624,
		obj_t BgL_oz00_625)
	{
		{	/* Type/type.scm 21 */
			return
				BINT(
				(((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_625)))->BgL_occurrencez00));
		}

	}



/* &<@anonymous:1263> */
	obj_t BGl_z62zc3z04anonymousza31263ze3ze5zztype_typez00(obj_t BgL_envz00_626)
	{
		{	/* Type/type.scm 21 */
			return BBOOL(((bool_t) 0));
		}

	}



/* &lambda1262 */
	obj_t BGl_z62lambda1262z62zztype_typez00(obj_t BgL_envz00_627,
		obj_t BgL_oz00_628, obj_t BgL_vz00_629)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_628)))->BgL_importzd2locationzd2) =
				((obj_t) BgL_vz00_629), BUNSPEC);
		}

	}



/* &lambda1261 */
	obj_t BGl_z62lambda1261z62zztype_typez00(obj_t BgL_envz00_630,
		obj_t BgL_oz00_631)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_631)))->BgL_importzd2locationzd2);
		}

	}



/* &<@anonymous:1255> */
	obj_t BGl_z62zc3z04anonymousza31255ze3ze5zztype_typez00(obj_t BgL_envz00_632)
	{
		{	/* Type/type.scm 21 */
			return BUNSPEC;
		}

	}



/* &lambda1254 */
	obj_t BGl_z62lambda1254z62zztype_typez00(obj_t BgL_envz00_633,
		obj_t BgL_oz00_634, obj_t BgL_vz00_635)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_634)))->BgL_locationz00) =
				((obj_t) BgL_vz00_635), BUNSPEC);
		}

	}



/* &lambda1253 */
	obj_t BGl_z62lambda1253z62zztype_typez00(obj_t BgL_envz00_636,
		obj_t BgL_oz00_637)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_637)))->BgL_locationz00);
		}

	}



/* &<@anonymous:1247> */
	obj_t BGl_z62zc3z04anonymousza31247ze3ze5zztype_typez00(obj_t BgL_envz00_638)
	{
		{	/* Type/type.scm 21 */
			return BUNSPEC;
		}

	}



/* &lambda1246 */
	obj_t BGl_z62lambda1246z62zztype_typez00(obj_t BgL_envz00_639,
		obj_t BgL_oz00_640, obj_t BgL_vz00_641)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_640)))->BgL_tvectorz00) =
				((obj_t) BgL_vz00_641), BUNSPEC);
		}

	}



/* &lambda1245 */
	obj_t BGl_z62lambda1245z62zztype_typez00(obj_t BgL_envz00_642,
		obj_t BgL_oz00_643)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_643)))->BgL_tvectorz00);
		}

	}



/* &<@anonymous:1237> */
	obj_t BGl_z62zc3z04anonymousza31237ze3ze5zztype_typez00(obj_t BgL_envz00_644)
	{
		{	/* Type/type.scm 21 */
			return BBOOL(((bool_t) 0));
		}

	}



/* &lambda1236 */
	obj_t BGl_z62lambda1236z62zztype_typez00(obj_t BgL_envz00_645,
		obj_t BgL_oz00_646, obj_t BgL_vz00_647)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_646)))->BgL_pointedzd2tozd2byz00) =
				((obj_t) BgL_vz00_647), BUNSPEC);
		}

	}



/* &lambda1235 */
	obj_t BGl_z62lambda1235z62zztype_typez00(obj_t BgL_envz00_648,
		obj_t BgL_oz00_649)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_649)))->BgL_pointedzd2tozd2byz00);
		}

	}



/* &<@anonymous:1227> */
	obj_t BGl_z62zc3z04anonymousza31227ze3ze5zztype_typez00(obj_t BgL_envz00_650)
	{
		{	/* Type/type.scm 21 */
			return BBOOL(((bool_t) 0));
		}

	}



/* &lambda1226 */
	obj_t BGl_z62lambda1226z62zztype_typez00(obj_t BgL_envz00_651,
		obj_t BgL_oz00_652, obj_t BgL_vz00_653)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_652)))->BgL_aliasz00) =
				((obj_t) BgL_vz00_653), BUNSPEC);
		}

	}



/* &lambda1225 */
	obj_t BGl_z62lambda1225z62zztype_typez00(obj_t BgL_envz00_654,
		obj_t BgL_oz00_655)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_655)))->BgL_aliasz00);
		}

	}



/* &<@anonymous:1220> */
	obj_t BGl_z62zc3z04anonymousza31220ze3ze5zztype_typez00(obj_t BgL_envz00_656)
	{
		{	/* Type/type.scm 21 */
			return BBOOL(((bool_t) 1));
		}

	}



/* &lambda1219 */
	obj_t BGl_z62lambda1219z62zztype_typez00(obj_t BgL_envz00_657,
		obj_t BgL_oz00_658, obj_t BgL_vz00_659)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_658)))->BgL_z42z42) =
				((obj_t) BgL_vz00_659), BUNSPEC);
		}

	}



/* &lambda1218 */
	obj_t BGl_z62lambda1218z62zztype_typez00(obj_t BgL_envz00_660,
		obj_t BgL_oz00_661)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_661)))->BgL_z42z42);
		}

	}



/* &<@anonymous:1209> */
	obj_t BGl_z62zc3z04anonymousza31209ze3ze5zztype_typez00(obj_t BgL_envz00_662)
	{
		{	/* Type/type.scm 21 */
			return BBOOL(((bool_t) 0));
		}

	}



/* &lambda1208 */
	obj_t BGl_z62lambda1208z62zztype_typez00(obj_t BgL_envz00_663,
		obj_t BgL_oz00_664, obj_t BgL_vz00_665)
	{
		{	/* Type/type.scm 21 */
			{	/* Type/type.scm 21 */
				bool_t BgL_vz00_766;

				BgL_vz00_766 = CBOOL(BgL_vz00_665);
				return
					((((BgL_typez00_bglt) COBJECT(
								((BgL_typez00_bglt) BgL_oz00_664)))->BgL_magiczf3zf3) =
					((bool_t) BgL_vz00_766), BUNSPEC);
			}
		}

	}



/* &lambda1207 */
	obj_t BGl_z62lambda1207z62zztype_typez00(obj_t BgL_envz00_666,
		obj_t BgL_oz00_667)
	{
		{	/* Type/type.scm 21 */
			return
				BBOOL(
				(((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_667)))->BgL_magiczf3zf3));
		}

	}



/* &lambda1200 */
	obj_t BGl_z62lambda1200z62zztype_typez00(obj_t BgL_envz00_668,
		obj_t BgL_oz00_669, obj_t BgL_vz00_670)
	{
		{	/* Type/type.scm 21 */
			{	/* Type/type.scm 21 */
				bool_t BgL_vz00_769;

				BgL_vz00_769 = CBOOL(BgL_vz00_670);
				return
					((((BgL_typez00_bglt) COBJECT(
								((BgL_typez00_bglt) BgL_oz00_669)))->BgL_initzf3zf3) =
					((bool_t) BgL_vz00_769), BUNSPEC);
			}
		}

	}



/* &lambda1199 */
	obj_t BGl_z62lambda1199z62zztype_typez00(obj_t BgL_envz00_671,
		obj_t BgL_oz00_672)
	{
		{	/* Type/type.scm 21 */
			return
				BBOOL(
				(((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_672)))->BgL_initzf3zf3));
		}

	}



/* &<@anonymous:1194> */
	obj_t BGl_z62zc3z04anonymousza31194ze3ze5zztype_typez00(obj_t BgL_envz00_673)
	{
		{	/* Type/type.scm 21 */
			return BNIL;
		}

	}



/* &lambda1193 */
	obj_t BGl_z62lambda1193z62zztype_typez00(obj_t BgL_envz00_674,
		obj_t BgL_oz00_675, obj_t BgL_vz00_676)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_675)))->BgL_parentsz00) =
				((obj_t) BgL_vz00_676), BUNSPEC);
		}

	}



/* &lambda1192 */
	obj_t BGl_z62lambda1192z62zztype_typez00(obj_t BgL_envz00_677,
		obj_t BgL_oz00_678)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_678)))->BgL_parentsz00);
		}

	}



/* &<@anonymous:1164> */
	obj_t BGl_z62zc3z04anonymousza31164ze3ze5zztype_typez00(obj_t BgL_envz00_679)
	{
		{	/* Type/type.scm 21 */
			return BNIL;
		}

	}



/* &lambda1163 */
	obj_t BGl_z62lambda1163z62zztype_typez00(obj_t BgL_envz00_680,
		obj_t BgL_oz00_681, obj_t BgL_vz00_682)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_681)))->BgL_coercezd2tozd2) =
				((obj_t) BgL_vz00_682), BUNSPEC);
		}

	}



/* &lambda1162 */
	obj_t BGl_z62lambda1162z62zztype_typez00(obj_t BgL_envz00_683,
		obj_t BgL_oz00_684)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_684)))->BgL_coercezd2tozd2);
		}

	}



/* &<@anonymous:1157> */
	obj_t BGl_z62zc3z04anonymousza31157ze3ze5zztype_typez00(obj_t BgL_envz00_685)
	{
		{	/* Type/type.scm 21 */
			return CNST_TABLE_REF(0L);
		}

	}



/* &lambda1156 */
	obj_t BGl_z62lambda1156z62zztype_typez00(obj_t BgL_envz00_686,
		obj_t BgL_oz00_687, obj_t BgL_vz00_688)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_687)))->BgL_classz00) =
				((obj_t) BgL_vz00_688), BUNSPEC);
		}

	}



/* &lambda1155 */
	obj_t BGl_z62lambda1155z62zztype_typez00(obj_t BgL_envz00_689,
		obj_t BgL_oz00_690)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_690)))->BgL_classz00);
		}

	}



/* &<@anonymous:1147> */
	obj_t BGl_z62zc3z04anonymousza31147ze3ze5zztype_typez00(obj_t BgL_envz00_691)
	{
		{	/* Type/type.scm 21 */
			return BUNSPEC;
		}

	}



/* &lambda1146 */
	obj_t BGl_z62lambda1146z62zztype_typez00(obj_t BgL_envz00_692,
		obj_t BgL_oz00_693, obj_t BgL_vz00_694)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_693)))->BgL_siza7eza7) =
				((obj_t) BgL_vz00_694), BUNSPEC);
		}

	}



/* &lambda1145 */
	obj_t BGl_z62lambda1145z62zztype_typez00(obj_t BgL_envz00_695,
		obj_t BgL_oz00_696)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_696)))->BgL_siza7eza7);
		}

	}



/* &<@anonymous:1140> */
	obj_t BGl_z62zc3z04anonymousza31140ze3ze5zztype_typez00(obj_t BgL_envz00_697)
	{
		{	/* Type/type.scm 21 */
			return BUNSPEC;
		}

	}



/* &lambda1139 */
	obj_t BGl_z62lambda1139z62zztype_typez00(obj_t BgL_envz00_698,
		obj_t BgL_oz00_699, obj_t BgL_vz00_700)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_699)))->BgL_namez00) =
				((obj_t) BgL_vz00_700), BUNSPEC);
		}

	}



/* &lambda1138 */
	obj_t BGl_z62lambda1138z62zztype_typez00(obj_t BgL_envz00_701,
		obj_t BgL_oz00_702)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_702)))->BgL_namez00);
		}

	}



/* &<@anonymous:1127> */
	obj_t BGl_z62zc3z04anonymousza31127ze3ze5zztype_typez00(obj_t BgL_envz00_703)
	{
		{	/* Type/type.scm 21 */
			return CNST_TABLE_REF(23L);
		}

	}



/* &lambda1126 */
	obj_t BGl_z62lambda1126z62zztype_typez00(obj_t BgL_envz00_704,
		obj_t BgL_oz00_705, obj_t BgL_vz00_706)
	{
		{	/* Type/type.scm 21 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_oz00_705)))->BgL_idz00) = ((obj_t)
					((obj_t) BgL_vz00_706)), BUNSPEC);
		}

	}



/* &lambda1125 */
	obj_t BGl_z62lambda1125z62zztype_typez00(obj_t BgL_envz00_707,
		obj_t BgL_oz00_708)
	{
		{	/* Type/type.scm 21 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_oz00_708)))->BgL_idz00);
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			return
				BGl_registerzd2genericz12zc0zz__objectz00
				(BGl_typezd2occurrencezd2incrementz12zd2envzc0zztype_typez00,
				BGl_proc1337z00zztype_typez00, BGl_typez00zztype_typez00,
				BGl_string1338z00zztype_typez00);
		}

	}



/* &type-occurrence-incr1072 */
	obj_t BGl_z62typezd2occurrencezd2incr1072z62zztype_typez00(obj_t
		BgL_envz00_710, obj_t BgL_tz00_711)
	{
		{	/* Type/type.scm 83 */
			return
				((((BgL_typez00_bglt) COBJECT(
							((BgL_typez00_bglt) BgL_tz00_711)))->BgL_occurrencez00) = ((int)
					(int) (
						(1L +
							(long) (
								(((BgL_typez00_bglt) COBJECT(
											((BgL_typez00_bglt) BgL_tz00_711)))->
									BgL_occurrencez00))))), BUNSPEC);
		}

	}



/* type-occurrence-increment! */
	BGL_EXPORTED_DEF obj_t
		BGl_typezd2occurrencezd2incrementz12z12zztype_typez00(BgL_typez00_bglt
		BgL_tz00_67)
	{
		{	/* Type/type.scm 83 */
			{	/* Type/type.scm 83 */
				obj_t BgL_method1073z00_321;

				{	/* Type/type.scm 83 */
					obj_t BgL_res1289z00_456;

					{	/* Type/type.scm 83 */
						long BgL_objzd2classzd2numz00_427;

						BgL_objzd2classzd2numz00_427 =
							BGL_OBJECT_CLASS_NUM(((BgL_objectz00_bglt) BgL_tz00_67));
						{	/* Type/type.scm 83 */
							obj_t BgL_arg1805z00_428;

							BgL_arg1805z00_428 =
								PROCEDURE_REF
								(BGl_typezd2occurrencezd2incrementz12zd2envzc0zztype_typez00,
								(int) (1L));
							{	/* Type/type.scm 83 */
								int BgL_offsetz00_431;

								BgL_offsetz00_431 = (int) (BgL_objzd2classzd2numz00_427);
								{	/* Type/type.scm 83 */
									long BgL_offsetz00_432;

									BgL_offsetz00_432 =
										((long) (BgL_offsetz00_431) - OBJECT_TYPE);
									{	/* Type/type.scm 83 */
										long BgL_modz00_433;

										BgL_modz00_433 =
											(BgL_offsetz00_432 >> (int) ((long) ((int) (4L))));
										{	/* Type/type.scm 83 */
											long BgL_restz00_435;

											BgL_restz00_435 =
												(BgL_offsetz00_432 &
												(long) (
													(int) (
														((long) (
																(int) (
																	(1L <<
																		(int) ((long) ((int) (4L)))))) - 1L))));
											{	/* Type/type.scm 83 */

												{	/* Type/type.scm 83 */
													obj_t BgL_bucketz00_437;

													BgL_bucketz00_437 =
														VECTOR_REF(
														((obj_t) BgL_arg1805z00_428), BgL_modz00_433);
													BgL_res1289z00_456 =
														VECTOR_REF(
														((obj_t) BgL_bucketz00_437), BgL_restz00_435);
					}}}}}}}}
					BgL_method1073z00_321 = BgL_res1289z00_456;
				}
				return
					(VA_PROCEDUREP(BgL_method1073z00_321) ? ((obj_t(*)(obj_t,
								...))
						PROCEDURE_ENTRY(BgL_method1073z00_321)) (BgL_method1073z00_321,
						((obj_t) BgL_tz00_67), BEOA) : ((obj_t(*)(obj_t,
								obj_t))
						PROCEDURE_ENTRY(BgL_method1073z00_321)) (BgL_method1073z00_321,
						((obj_t) BgL_tz00_67)));
			}
		}

	}



/* &type-occurrence-increment! */
	obj_t BGl_z62typezd2occurrencezd2incrementz12z70zztype_typez00(obj_t
		BgL_envz00_712, obj_t BgL_tz00_713)
	{
		{	/* Type/type.scm 83 */
			return
				BGl_typezd2occurrencezd2incrementz12z12zztype_typez00(
				((BgL_typez00_bglt) BgL_tz00_713));
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zztype_typez00(void)
	{
		{	/* Type/type.scm 15 */
			return
				BGl_modulezd2initializa7ationz75zztools_locationz00(462333240L,
				BSTRING_TO_STRING(BGl_string1339z00zztype_typez00));
		}

	}

#ifdef __cplusplus
}
#endif
