/*===========================================================================*/
/*   (Ast/venv.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 Ast/venv.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_AST_ENV_TYPE_DEFINITIONS
#define BGL_AST_ENV_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;

	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;
		long BgL_occurrencewz00;
		bool_t BgL_userzf3zf3;
	}                  *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;
		long BgL_occurrencewz00;
		bool_t BgL_userzf3zf3;
		obj_t BgL_modulez00;
		obj_t BgL_importz00;
		bool_t BgL_evaluablezf3zf3;
		bool_t BgL_evalzf3zf3;
		obj_t BgL_libraryz00;
		obj_t BgL_pragmaz00;
		obj_t BgL_srcz00;
		obj_t BgL_jvmzd2typezd2namez00;
		obj_t BgL_initz00;
		obj_t BgL_aliasz00;
	}                *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;
		long BgL_occurrencewz00;
		bool_t BgL_userzf3zf3;
		long BgL_keyz00;
		obj_t BgL_valzd2noescapezd2;
		bool_t BgL_volatilez00;
	}               *BgL_localz00_bglt;

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

	typedef struct BgL_sfunz00_bgl
	{
		header_t header;
		obj_t widening;
		long BgL_arityz00;
		obj_t BgL_sidezd2effectzd2;
		obj_t BgL_predicatezd2ofzd2;
		obj_t BgL_stackzd2allocatorzd2;
		bool_t BgL_topzf3zf3;
		obj_t BgL_thezd2closurezd2;
		obj_t BgL_effectz00;
		obj_t BgL_failsafez00;
		obj_t BgL_argszd2noescapezd2;
		obj_t BgL_argszd2retescapezd2;
		obj_t BgL_propertyz00;
		obj_t BgL_argsz00;
		obj_t BgL_argszd2namezd2;
		obj_t BgL_bodyz00;
		obj_t BgL_classz00;
		obj_t BgL_dssslzd2keywordszd2;
		obj_t BgL_locz00;
		obj_t BgL_optionalsz00;
		obj_t BgL_keysz00;
		obj_t BgL_thezd2closurezd2globalz00;
		obj_t BgL_strengthz00;
		obj_t BgL_stackablez00;
	}              *BgL_sfunz00_bglt;

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

	typedef struct BgL_nodez00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
	}              *BgL_nodez00_bglt;

	typedef struct BgL_backendz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_languagez00;
		obj_t BgL_srfi0z00;
		obj_t BgL_namez00;
		obj_t BgL_externzd2variableszd2;
		obj_t BgL_externzd2functionszd2;
		obj_t BgL_externzd2typeszd2;
		obj_t BgL_variablesz00;
		obj_t BgL_functionsz00;
		obj_t BgL_typesz00;
		bool_t BgL_typedz00;
		obj_t BgL_heapzd2suffixzd2;
		obj_t BgL_heapzd2compatiblezd2;
		bool_t BgL_callccz00;
		bool_t BgL_qualifiedzd2typeszd2;
		bool_t BgL_effectzb2zb2;
		bool_t BgL_removezd2emptyzd2letz00;
		bool_t BgL_foreignzd2closurezd2;
		bool_t BgL_typedzd2eqzd2;
		bool_t BgL_tracezd2supportzd2;
		obj_t BgL_foreignzd2clausezd2supportz00;
		obj_t BgL_debugzd2supportzd2;
		bool_t BgL_pragmazd2supportzd2;
		bool_t BgL_tvectorzd2descrzd2supportz00;
		bool_t BgL_requirezd2tailczd2;
		obj_t BgL_registersz00;
		obj_t BgL_pregistersz00;
		bool_t BgL_boundzd2checkzd2;
		bool_t BgL_typezd2checkzd2;
		bool_t BgL_typedzd2funcallzd2;
	}                 *BgL_backendz00_bglt;

	typedef struct BgL_isfunz00_bgl
	{
		struct BgL_nodez00_bgl *BgL_originalzd2bodyzd2;
		obj_t BgL_recursivezd2callszd2;
		bool_t BgL_tailrecz00;
	}               *BgL_isfunz00_bglt;


#endif													// BGL_AST_ENV_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_z62globalzd2bucketzd2positionz62zzast_envz00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_setzd2genvz12zc0zzast_envz00(obj_t);
	extern obj_t BGl_modulezd2ze3qualifiedzd2typeze3zzread_jvmz00(obj_t);
	BGL_IMPORT int BGl_bigloozd2warningzd2zz__paramz00(void);
	static obj_t BGl_requirezd2initializa7ationz75zzast_envz00 = BUNSPEC;
	extern obj_t BGl_userzd2errorzf2locationz20zztools_errorz00(obj_t, obj_t,
		obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_additionalzd2heapzd2restorezd2globalsz12zc0zzast_envz00(void);
	extern obj_t BGl_funz00zzast_varz00;
	BGL_EXPORTED_DECL obj_t BGl_getzd2globalzf2modulez20zzast_envz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_za2classesza2z00zz__objectz00;
	extern obj_t BGl_za2warningzd2overridenzd2variablesza2z00zzengine_paramz00;
	BGL_IMPORT obj_t BGl_registerzd2genericz12zc0zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_alreadyzd2restoredzf3z21zzast_envz00(obj_t);
	extern obj_t BGl_sfunz00zzast_varz00;
	static obj_t BGl_za2Genvza2z00zzast_envz00 = BUNSPEC;
	static obj_t BGl_toplevelzd2initzd2zzast_envz00(void);
	static obj_t BGl_z62addzd2genvz12za2zzast_envz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_forzd2eachzd2globalz12z12zzast_envz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_formatz00zz__r4_output_6_10_3z00(obj_t, obj_t);
	extern obj_t BGl_internalzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL BgL_globalz00_bglt
		BGl_bindzd2globalz12zc0zzast_envz00(obj_t, obj_t, obj_t, BgL_valuez00_bglt,
		obj_t, obj_t);
	static obj_t BGl_genericzd2initzd2zzast_envz00(void);
	static obj_t BGl_objectzd2initzd2zzast_envz00(void);
	BGL_IMPORT obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	extern obj_t BGl_shapez00zztools_shapez00(obj_t);
	BGL_IMPORT obj_t BGl_za2inheritancesza2z00zz__objectz00;
	extern obj_t BGl_typez00zztype_typez00;
	BGL_EXPORTED_DECL obj_t BGl_addzd2genvz12zc0zzast_envz00(obj_t);
	static obj_t
		BGl_z62additionalzd2heapzd2restorezd2globalsz12za2zzast_envz00(obj_t);
	extern obj_t BGl_za2libzd2modeza2zd2zzengine_paramz00;
	extern obj_t BGl_userzd2warningzd2zztools_errorz00(obj_t, obj_t, obj_t);
	extern obj_t BGl_thezd2backendzd2zzbackend_backendz00(void);
	static obj_t BGl_z62findzd2globalzf2modulez42zzast_envz00(obj_t, obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t, obj_t);
	static obj_t BGl_z62unbindzd2globalz12za2zzast_envz00(obj_t, 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_z62restorezd2valuezd2typesz121307z70zzast_envz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_methodzd2initzd2zzast_envz00(void);
	static obj_t BGl_z62forzd2eachzd2globalz12z70zzast_envz00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_initializa7ezd2Genvz12z67zzast_envz00(void);
	static obj_t BGl_z62restorezd2valuezd2typesz12z70zzast_envz00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62restorezd2valuezd2typesz121310z70zzast_envz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62restorezd2valuezd2typesz121312z70zzast_envz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62restorezd2valuezd2typesz121314z70zzast_envz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62restorezd2valuezd2typesz121316z70zzast_envz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31325ze3ze5zzast_envz00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_findzd2globalzd2zzast_envz00(obj_t, obj_t);
	static obj_t BGl_restorezd2valuezd2typesz12z12zzast_envz00(BgL_valuez00_bglt,
		obj_t);
	static obj_t BGl_z62getzd2globalzf2modulez42zzast_envz00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_restorezd2globalz12zc0zzast_envz00(obj_t);
	static obj_t BGl_z62restorezd2globalz12za2zzast_envz00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	extern obj_t BGl_za2_za2z00zztype_cachez00;
	static obj_t BGl_z62alreadyzd2restoredzf3z43zzast_envz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_unbindzd2globalz12zc0zzast_envz00(obj_t, obj_t);
	extern obj_t BGl_isfunz00zzinline_inlinez00;
	extern obj_t BGl_za2objza2z00zztype_cachez00;
	extern obj_t BGl_hrtypezd2nodez12zc0zzast_hrtypez00(BgL_nodez00_bglt);
	static obj_t BGl_z62initializa7ezd2Genvz12z05zzast_envz00(obj_t);
	extern obj_t BGl_za2moduleza2z00zzmodule_modulez00;
	BGL_IMPORT obj_t BGl_makezd2hashtablezd2zz__hashz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzast_envz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzinline_inlinez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzbackend_backendz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_locationz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzmodule_modulez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzread_jvmz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzast_dumpz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzast_hrtypez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzast_nodez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztype_envz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztype_cachez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(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_pairs_and_lists_6_3z00(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_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__hashz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__paramz00(long, char *);
	static obj_t BGl_z62getzd2genvzb0zzast_envz00(obj_t);
	extern obj_t BGl_findzd2locationzd2zztools_locationz00(obj_t);
	extern obj_t BGl_cfunz00zzast_varz00;
	static BgL_globalz00_bglt BGl_z62bindzd2globalz12za2zzast_envz00(obj_t, obj_t,
		obj_t, obj_t, obj_t, obj_t, obj_t);
	static obj_t BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00 = BUNSPEC;
	static obj_t BGl_z62findzd2globalzb0zzast_envz00(obj_t, obj_t, obj_t);
	extern obj_t BGl_nodez00zzast_nodez00;
	extern obj_t BGl_localz00zzast_varz00;
	static obj_t BGl_cnstzd2initzd2zzast_envz00(void);
	static obj_t BGl_libraryzd2moduleszd2initz00zzast_envz00(void);
	BGL_EXPORTED_DECL obj_t BGl_globalzd2bucketzd2positionz00zzast_envz00(obj_t,
		obj_t);
	static obj_t BGl_errorzd2rebindzd2globalz12z12zzast_envz00(obj_t, obj_t);
	static obj_t BGl_importedzd2moduleszd2initz00zzast_envz00(void);
	static obj_t BGl_gczd2rootszd2initz00zzast_envz00(void);
	BGL_IMPORT obj_t BGl_hashtablezd2forzd2eachz00zz__hashz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_findzd2globalzf2modulez20zzast_envz00(obj_t,
		obj_t);
	extern obj_t BGl_valuez00zzast_varz00;
	extern obj_t BGl_userzd2warningzf2locationz20zztools_errorz00(obj_t, obj_t,
		obj_t, obj_t);
	extern BgL_typez00_bglt BGl_findzd2typezd2zztype_envz00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31735ze3ze5zzast_envz00(obj_t, obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_hashtablezd2putz12zc0zz__hashz00(obj_t, obj_t, obj_t);
	static obj_t BGl_za2restoredza2z00zzast_envz00 = BUNSPEC;
	BGL_IMPORT obj_t BGl_genericzd2addzd2methodz12z12zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	extern obj_t BGl_addzd2qualifiedzd2typez12z12zzread_jvmz00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_warningzd2overridezd2globalz12z12zzast_envz00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62setzd2genvz12za2zzast_envz00(obj_t, obj_t);
	extern obj_t BGl_userzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_getzd2genvzd2zzast_envz00(void);
	BGL_IMPORT obj_t
		BGl_findzd2superzd2classzd2methodzd2zz__objectz00(BgL_objectz00_bglt, obj_t,
		obj_t);
	extern obj_t BGl_modulezd2initializa7ationzd2idza7zzmodule_modulez00(obj_t);
	extern obj_t BGl_globalz00zzast_varz00;
	static obj_t BGl_warningzd2rebindzd2globalz12z12zzast_envz00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_hashtablezd2getzd2zz__hashz00(obj_t, obj_t);
	static obj_t __cnst[8];


	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_addzd2genvz12zd2envz12zzast_envz00,
		BgL_bgl_za762addza7d2genvza7121955za7, BGl_z62addzd2genvz12za2zzast_envz00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_findzd2globalzf2modulezd2envzf2zzast_envz00,
		BgL_bgl_za762findza7d2global1956z00,
		BGl_z62findzd2globalzf2modulez42zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_setzd2genvz12zd2envz12zzast_envz00,
		BgL_bgl_za762setza7d2genvza7121957za7, BGl_z62setzd2genvz12za2zzast_envz00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_findzd2globalzd2envz00zzast_envz00,
		BgL_bgl_za762findza7d2global1958z00, va_generic_entry,
		BGl_z62findzd2globalzb0zzast_envz00, BUNSPEC, -2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_initializa7ezd2Genvz12zd2envzb5zzast_envz00,
		BgL_bgl_za762initializa7a7eza71959za7,
		BGl_z62initializa7ezd2Genvz12z05zzast_envz00, 0L, BUNSPEC, 0);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_unbindzd2globalz12zd2envz12zzast_envz00,
		BgL_bgl_za762unbindza7d2glob1960z00,
		BGl_z62unbindzd2globalz12za2zzast_envz00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_globalzd2bucketzd2positionzd2envzd2zzast_envz00,
		BgL_bgl_za762globalza7d2buck1961z00,
		BGl_z62globalzd2bucketzd2positionz62zzast_envz00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2globalzf2modulezd2envzf2zzast_envz00,
		BgL_bgl_za762getza7d2globalza71962za7,
		BGl_z62getzd2globalzf2modulez42zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1932z00zzast_envz00,
		BgL_bgl_string1932za700za7za7a1963za7, "~a::~a", 6);
	      DEFINE_STRING(BGl_string1933z00zzast_envz00,
		BgL_bgl_string1933za700za7za7a1964za7, "Cannot find global variable", 27);
	      DEFINE_STRING(BGl_string1934z00zzast_envz00,
		BgL_bgl_string1934za700za7za7a1965za7, "Variable overridden by", 22);
	      DEFINE_STRING(BGl_string1935z00zzast_envz00,
		BgL_bgl_string1935za700za7za7a1966za7, "Duplicate definition", 20);
	      DEFINE_STRING(BGl_string1936z00zzast_envz00,
		BgL_bgl_string1936za700za7za7a1967za7, "eval", 4);
	      DEFINE_STRING(BGl_string1937z00zzast_envz00,
		BgL_bgl_string1937za700za7za7a1968za7, "unbind-global!", 14);
	      DEFINE_STRING(BGl_string1938z00zzast_envz00,
		BgL_bgl_string1938za700za7za7a1969za7, "Can't find global", 17);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1931z00zzast_envz00,
		BgL_bgl_za762za7c3za704anonymo1970za7,
		BGl_z62zc3z04anonymousza31325ze3ze5zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1940z00zzast_envz00,
		BgL_bgl_string1940za700za7za7a1971za7, "restore-value-types!1307", 24);
	      DEFINE_STRING(BGl_string1942z00zzast_envz00,
		BgL_bgl_string1942za700za7za7a1972za7, "restore-value-types!", 20);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1939z00zzast_envz00,
		BgL_bgl_za762restoreza7d2val1973z00,
		BGl_z62restorezd2valuezd2typesz121307z70zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1946z00zzast_envz00,
		BgL_bgl_string1946za700za7za7a1974za7, "head-restore", 12);
	      DEFINE_STRING(BGl_string1947z00zzast_envz00,
		BgL_bgl_string1947za700za7za7a1975za7,
		"Illegal restored type for foreign function", 42);
	      DEFINE_STRING(BGl_string1948z00zzast_envz00,
		BgL_bgl_string1948za700za7za7a1976za7, "restore-value-types(sfun)", 25);
	      DEFINE_STRING(BGl_string1949z00zzast_envz00,
		BgL_bgl_string1949za700za7za7a1977za7, "Illegal argument", 16);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2genvzd2envz00zzast_envz00,
		BgL_bgl_za762getza7d2genvza7b01978za7, BGl_z62getzd2genvzb0zzast_envz00, 0L,
		BUNSPEC, 0);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1941z00zzast_envz00,
		BgL_bgl_za762restoreza7d2val1979z00,
		BGl_z62restorezd2valuezd2typesz121310z70zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1943z00zzast_envz00,
		BgL_bgl_za762restoreza7d2val1980z00,
		BGl_z62restorezd2valuezd2typesz121312z70zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1950z00zzast_envz00,
		BgL_bgl_string1950za700za7za7a1981za7, "restore-value-types", 19);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1944z00zzast_envz00,
		BgL_bgl_za762restoreza7d2val1982z00,
		BGl_z62restorezd2valuezd2typesz121314z70zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1951z00zzast_envz00,
		BgL_bgl_string1951za700za7za7a1983za7, "Illegal non pair argument", 25);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1945z00zzast_envz00,
		BgL_bgl_za762restoreza7d2val1984z00,
		BGl_z62restorezd2valuezd2typesz121316z70zzast_envz00, 0L, BUNSPEC, 2);
	     
		DEFINE_STATIC_BGL_GENERIC
		(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
		BgL_bgl_za762restoreza7d2val1985z00,
		BGl_z62restorezd2valuezd2typesz12z70zzast_envz00, 0L, BUNSPEC, 2);
	      DEFINE_STRING(BGl_string1952z00zzast_envz00,
		BgL_bgl_string1952za700za7za7a1986za7, "ast_env", 7);
	      DEFINE_STRING(BGl_string1953z00zzast_envz00,
		BgL_bgl_string1953za700za7za7a1987za7,
		"_ eval now read @ get-global/module foreign the-global-environment ", 67);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_forzd2eachzd2globalz12zd2envzc0zzast_envz00,
		BgL_bgl_za762forza7d2eachza7d21988za7, va_generic_entry,
		BGl_z62forzd2eachzd2globalz12z70zzast_envz00, BUNSPEC, -2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_bindzd2globalz12zd2envz12zzast_envz00,
		BgL_bgl_za762bindza7d2global1989z00, BGl_z62bindzd2globalz12za2zzast_envz00,
		0L, BUNSPEC, 6);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_restorezd2globalz12zd2envz12zzast_envz00,
		BgL_bgl_za762restoreza7d2glo1990z00,
		BGl_z62restorezd2globalz12za2zzast_envz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_alreadyzd2restoredzf3zd2envzf3zzast_envz00,
		BgL_bgl_za762alreadyza7d2res1991z00,
		BGl_z62alreadyzd2restoredzf3z43zzast_envz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_additionalzd2heapzd2restorezd2globalsz12zd2envz12zzast_envz00,
		BgL_bgl_za762additionalza7d21992z00,
		BGl_z62additionalzd2heapzd2restorezd2globalsz12za2zzast_envz00, 0L, BUNSPEC,
		0);

/* 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_requirezd2initializa7ationz75zzast_envz00));
		     ADD_ROOT((void *) (&BGl_za2Genvza2z00zzast_envz00));
		   
			 ADD_ROOT((void
				*) (&BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00));
		     ADD_ROOT((void *) (&BGl_za2restoredza2z00zzast_envz00));
#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_modulezd2initializa7ationz75zzast_envz00(long
		BgL_checksumz00_2809, char *BgL_fromz00_2810)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zzast_envz00))
				{
					BGl_requirezd2initializa7ationz75zzast_envz00 = BBOOL(((bool_t) 0));
					BGl_gczd2rootszd2initz00zzast_envz00();
					BGl_libraryzd2moduleszd2initz00zzast_envz00();
					BGl_cnstzd2initzd2zzast_envz00();
					BGl_importedzd2moduleszd2initz00zzast_envz00();
					BGl_genericzd2initzd2zzast_envz00();
					BGl_methodzd2initzd2zzast_envz00();
					return BGl_toplevelzd2initzd2zzast_envz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* library-modules-init */
	obj_t BGl_libraryzd2moduleszd2initz00zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			BGl_modulezd2initializa7ationz75zz__paramz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__objectz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(0L,
				"ast_env");
			BGl_modulezd2initializa7ationz75zz__readerz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__errorz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__hashz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__bitz00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(0L, "ast_env");
			BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(0L,
				"ast_env");
			return BUNSPEC;
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			{	/* Ast/venv.scm 14 */
				obj_t BgL_cportz00_2691;

				{	/* Ast/venv.scm 14 */
					obj_t BgL_stringz00_2698;

					BgL_stringz00_2698 = BGl_string1953z00zzast_envz00;
					{	/* Ast/venv.scm 14 */
						obj_t BgL_startz00_2699;

						BgL_startz00_2699 = BINT(0L);
						{	/* Ast/venv.scm 14 */
							obj_t BgL_endz00_2700;

							BgL_endz00_2700 =
								BINT(STRING_LENGTH(((obj_t) BgL_stringz00_2698)));
							{	/* Ast/venv.scm 14 */

								BgL_cportz00_2691 =
									BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00
									(BgL_stringz00_2698, BgL_startz00_2699, BgL_endz00_2700);
				}}}}
				{
					long BgL_iz00_2692;

					BgL_iz00_2692 = 7L;
				BgL_loopz00_2693:
					if ((BgL_iz00_2692 == -1L))
						{	/* Ast/venv.scm 14 */
							return BUNSPEC;
						}
					else
						{	/* Ast/venv.scm 14 */
							{	/* Ast/venv.scm 14 */
								obj_t BgL_arg1954z00_2694;

								{	/* Ast/venv.scm 14 */

									{	/* Ast/venv.scm 14 */
										obj_t BgL_locationz00_2696;

										BgL_locationz00_2696 = BBOOL(((bool_t) 0));
										{	/* Ast/venv.scm 14 */

											BgL_arg1954z00_2694 =
												BGl_readz00zz__readerz00(BgL_cportz00_2691,
												BgL_locationz00_2696);
										}
									}
								}
								{	/* Ast/venv.scm 14 */
									int BgL_tmpz00_2843;

									BgL_tmpz00_2843 = (int) (BgL_iz00_2692);
									CNST_TABLE_SET(BgL_tmpz00_2843, BgL_arg1954z00_2694);
							}}
							{	/* Ast/venv.scm 14 */
								int BgL_auxz00_2697;

								BgL_auxz00_2697 = (int) ((BgL_iz00_2692 - 1L));
								{
									long BgL_iz00_2848;

									BgL_iz00_2848 = (long) (BgL_auxz00_2697);
									BgL_iz00_2692 = BgL_iz00_2848;
									goto BgL_loopz00_2693;
								}
							}
						}
				}
			}
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			BGl_za2Genvza2z00zzast_envz00 = CNST_TABLE_REF(0L);
			BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00 = BNIL;
			BGl_za2restoredza2z00zzast_envz00 = BNIL;
			return BUNSPEC;
		}

	}



/* set-genv! */
	BGL_EXPORTED_DEF obj_t BGl_setzd2genvz12zc0zzast_envz00(obj_t BgL_genvz00_3)
	{
		{	/* Ast/venv.scm 55 */
			return (BGl_za2Genvza2z00zzast_envz00 = BgL_genvz00_3, BUNSPEC);
		}

	}



/* &set-genv! */
	obj_t BGl_z62setzd2genvz12za2zzast_envz00(obj_t BgL_envz00_2623,
		obj_t BgL_genvz00_2624)
	{
		{	/* Ast/venv.scm 55 */
			return BGl_setzd2genvz12zc0zzast_envz00(BgL_genvz00_2624);
		}

	}



/* add-genv! */
	BGL_EXPORTED_DEF obj_t BGl_addzd2genvz12zc0zzast_envz00(obj_t BgL_genvz00_4)
	{
		{	/* Ast/venv.scm 64 */
			BGl_hashtablezd2forzd2eachz00zz__hashz00(BgL_genvz00_4,
				BGl_proc1931z00zzast_envz00);
			return (BGl_za2restoredza2z00zzast_envz00 = BNIL, BUNSPEC);
		}

	}



/* &add-genv! */
	obj_t BGl_z62addzd2genvz12za2zzast_envz00(obj_t BgL_envz00_2626,
		obj_t BgL_genvz00_2627)
	{
		{	/* Ast/venv.scm 64 */
			return BGl_addzd2genvz12zc0zzast_envz00(BgL_genvz00_2627);
		}

	}



/* &<@anonymous:1325> */
	obj_t BGl_z62zc3z04anonymousza31325ze3ze5zzast_envz00(obj_t BgL_envz00_2628,
		obj_t BgL_kz00_2629, obj_t BgL_bucketz00_2630)
	{
		{	/* Ast/venv.scm 67 */
			{	/* Ast/venv.scm 68 */
				bool_t BgL_tmpz00_2855;

				{	/* Ast/venv.scm 68 */
					obj_t BgL_g1301z00_2702;

					BgL_g1301z00_2702 = CDR(((obj_t) BgL_bucketz00_2630));
					{
						obj_t BgL_l1299z00_2704;

						BgL_l1299z00_2704 = BgL_g1301z00_2702;
					BgL_zc3z04anonymousza31326ze3z87_2703:
						if (PAIRP(BgL_l1299z00_2704))
							{	/* Ast/venv.scm 88 */
								{	/* Ast/venv.scm 69 */
									obj_t BgL_newz00_2705;

									BgL_newz00_2705 = CAR(BgL_l1299z00_2704);
									BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00 =
										MAKE_YOUNG_PAIR(BgL_newz00_2705,
										BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00);
									{	/* Ast/venv.scm 70 */
										obj_t BgL_modulez00_2706;

										BgL_modulez00_2706 =
											(((BgL_globalz00_bglt) COBJECT(
													((BgL_globalz00_bglt) BgL_newz00_2705)))->
											BgL_modulez00);
										{	/* Ast/venv.scm 70 */
											obj_t BgL_idz00_2707;

											BgL_idz00_2707 =
												(((BgL_variablez00_bglt) COBJECT(
														((BgL_variablez00_bglt)
															((BgL_globalz00_bglt) BgL_newz00_2705))))->
												BgL_idz00);
											{	/* Ast/venv.scm 71 */
												obj_t BgL_bucketz00_2708;

												BgL_bucketz00_2708 =
													BGl_hashtablezd2getzd2zz__hashz00
													(BGl_za2Genvza2z00zzast_envz00, BgL_idz00_2707);
												{	/* Ast/venv.scm 72 */

													if (PAIRP(BgL_bucketz00_2708))
														{	/* Ast/venv.scm 76 */
															bool_t BgL_test1997z00_2870;

															if (
																(BgL_modulez00_2706 ==
																	BGl_za2moduleza2z00zzmodule_modulez00))
																{	/* Ast/venv.scm 76 */
																	BgL_test1997z00_2870 = ((bool_t) 1);
																}
															else
																{	/* Ast/venv.scm 77 */
																	bool_t BgL_test1999z00_2873;

																	{	/* Ast/venv.scm 78 */
																		obj_t BgL_arg1347z00_2709;

																		{
																			BgL_globalz00_bglt BgL_auxz00_2874;

																			{	/* Ast/venv.scm 78 */
																				obj_t BgL_pairz00_2710;

																				BgL_pairz00_2710 =
																					CDR(BgL_bucketz00_2708);
																				BgL_auxz00_2874 =
																					((BgL_globalz00_bglt)
																					CAR(BgL_pairz00_2710));
																			}
																			BgL_arg1347z00_2709 =
																				(((BgL_globalz00_bglt)
																					COBJECT(BgL_auxz00_2874))->
																				BgL_modulez00);
																		}
																		BgL_test1999z00_2873 =
																			(BGl_za2moduleza2z00zzmodule_modulez00 ==
																			BgL_arg1347z00_2709);
																	}
																	if (BgL_test1999z00_2873)
																		{	/* Ast/venv.scm 77 */
																			BgL_test1997z00_2870 = ((bool_t) 0);
																		}
																	else
																		{	/* Ast/venv.scm 77 */
																			BgL_test1997z00_2870 = ((bool_t) 1);
																		}
																}
															if (BgL_test1997z00_2870)
																{	/* Ast/venv.scm 84 */
																	obj_t BgL_newzd2bucketzd2_2711;

																	BgL_newzd2bucketzd2_2711 =
																		MAKE_YOUNG_PAIR(BgL_newz00_2705,
																		CDR(BgL_bucketz00_2708));
																	SET_CDR(BgL_bucketz00_2708,
																		BgL_newzd2bucketzd2_2711);
																}
															else
																{	/* Ast/venv.scm 87 */
																	obj_t BgL_arg1343z00_2712;
																	obj_t BgL_arg1344z00_2713;

																	BgL_arg1343z00_2712 = CDR(BgL_bucketz00_2708);
																	BgL_arg1344z00_2713 =
																		MAKE_YOUNG_PAIR(BgL_newz00_2705,
																		CDR(CDR(BgL_bucketz00_2708)));
																	{	/* Ast/venv.scm 87 */
																		obj_t BgL_tmpz00_2887;

																		BgL_tmpz00_2887 =
																			((obj_t) BgL_arg1343z00_2712);
																		SET_CDR(BgL_tmpz00_2887,
																			BgL_arg1344z00_2713);
																	}
																}
														}
													else
														{	/* Ast/venv.scm 75 */
															obj_t BgL_arg1352z00_2714;

															{	/* Ast/venv.scm 75 */
																obj_t BgL_list1353z00_2715;

																{	/* Ast/venv.scm 75 */
																	obj_t BgL_arg1354z00_2716;

																	BgL_arg1354z00_2716 =
																		MAKE_YOUNG_PAIR(BgL_newz00_2705, BNIL);
																	BgL_list1353z00_2715 =
																		MAKE_YOUNG_PAIR(BgL_idz00_2707,
																		BgL_arg1354z00_2716);
																}
																BgL_arg1352z00_2714 = BgL_list1353z00_2715;
															}
															BGl_hashtablezd2putz12zc0zz__hashz00
																(BGl_za2Genvza2z00zzast_envz00, BgL_idz00_2707,
																BgL_arg1352z00_2714);
														}
												}
											}
										}
									}
								}
								{
									obj_t BgL_l1299z00_2893;

									BgL_l1299z00_2893 = CDR(BgL_l1299z00_2704);
									BgL_l1299z00_2704 = BgL_l1299z00_2893;
									goto BgL_zc3z04anonymousza31326ze3z87_2703;
								}
							}
						else
							{	/* Ast/venv.scm 88 */
								BgL_tmpz00_2855 = ((bool_t) 1);
							}
					}
				}
				return BBOOL(BgL_tmpz00_2855);
			}
		}

	}



/* additional-heap-restore-globals! */
	BGL_EXPORTED_DEF obj_t
		BGl_additionalzd2heapzd2restorezd2globalsz12zc0zzast_envz00(void)
	{
		{	/* Ast/venv.scm 105 */
			{
				obj_t BgL_l1302z00_1604;

				BgL_l1302z00_1604 =
					BGl_za2delayedzd2restoredzd2globalza2z00zzast_envz00;
			BgL_zc3z04anonymousza31362ze3z87_1605:
				if (PAIRP(BgL_l1302z00_1604))
					{	/* Ast/venv.scm 106 */
						BGl_restorezd2globalz12zc0zzast_envz00(CAR(BgL_l1302z00_1604));
						{
							obj_t BgL_l1302z00_2900;

							BgL_l1302z00_2900 = CDR(BgL_l1302z00_1604);
							BgL_l1302z00_1604 = BgL_l1302z00_2900;
							goto BgL_zc3z04anonymousza31362ze3z87_1605;
						}
					}
				else
					{	/* Ast/venv.scm 106 */
						((bool_t) 1);
					}
			}
			return BTRUE;
		}

	}



/* &additional-heap-restore-globals! */
	obj_t BGl_z62additionalzd2heapzd2restorezd2globalsz12za2zzast_envz00(obj_t
		BgL_envz00_2631)
	{
		{	/* Ast/venv.scm 105 */
			return BGl_additionalzd2heapzd2restorezd2globalsz12zc0zzast_envz00();
		}

	}



/* restore-global! */
	BGL_EXPORTED_DEF obj_t BGl_restorezd2globalz12zc0zzast_envz00(obj_t
		BgL_newz00_6)
	{
		{	/* Ast/venv.scm 112 */
			BGl_za2restoredza2z00zzast_envz00 =
				MAKE_YOUNG_PAIR(BgL_newz00_6, BGl_za2restoredza2z00zzast_envz00);
			{	/* Ast/venv.scm 115 */
				obj_t BgL_idz00_1610;

				BgL_idz00_1610 =
					(((BgL_variablez00_bglt) COBJECT(
							((BgL_variablez00_bglt)
								((BgL_globalz00_bglt) BgL_newz00_6))))->BgL_idz00);
				{	/* Ast/venv.scm 115 */
					BgL_typez00_bglt BgL_typez00_1611;

					BgL_typez00_1611 =
						(((BgL_variablez00_bglt) COBJECT(
								((BgL_variablez00_bglt)
									((BgL_globalz00_bglt) BgL_newz00_6))))->BgL_typez00);
					{	/* Ast/venv.scm 116 */
						BgL_valuez00_bglt BgL_valuez00_1612;

						BgL_valuez00_1612 =
							(((BgL_variablez00_bglt) COBJECT(
									((BgL_variablez00_bglt)
										((BgL_globalz00_bglt) BgL_newz00_6))))->BgL_valuez00);
						{	/* Ast/venv.scm 117 */
							obj_t BgL_typeidz00_1613;

							BgL_typeidz00_1613 =
								(((BgL_typez00_bglt) COBJECT(BgL_typez00_1611))->BgL_idz00);
							{	/* Ast/venv.scm 118 */

								{	/* Ast/venv.scm 120 */
									BgL_typez00_bglt BgL_arg1372z00_1614;

									BgL_arg1372z00_1614 =
										BGl_findzd2typezd2zztype_envz00(BgL_typeidz00_1613);
									((((BgL_variablez00_bglt) COBJECT(
													((BgL_variablez00_bglt)
														((BgL_globalz00_bglt) BgL_newz00_6))))->
											BgL_typez00) =
										((BgL_typez00_bglt) BgL_arg1372z00_1614), BUNSPEC);
								}
								BGl_restorezd2valuezd2typesz12z12zzast_envz00(BgL_valuez00_1612,
									BgL_idz00_1610);
								{	/* Ast/venv.scm 124 */
									bool_t BgL_test2001z00_2919;

									{	/* Ast/venv.scm 124 */
										bool_t BgL_test2002z00_2920;

										{	/* Ast/venv.scm 124 */
											obj_t BgL_arg1451z00_1629;

											BgL_arg1451z00_1629 =
												BGl_thezd2backendzd2zzbackend_backendz00();
											BgL_test2002z00_2920 =
												(((BgL_backendz00_bglt) COBJECT(
														((BgL_backendz00_bglt) BgL_arg1451z00_1629)))->
												BgL_qualifiedzd2typeszd2);
										}
										if (BgL_test2002z00_2920)
											{	/* Ast/venv.scm 124 */
												if (
													((((BgL_globalz00_bglt) COBJECT(
																	((BgL_globalz00_bglt) BgL_newz00_6)))->
															BgL_modulez00) == CNST_TABLE_REF(1L)))
													{	/* Ast/venv.scm 125 */
														BgL_test2001z00_2919 = ((bool_t) 0);
													}
												else
													{	/* Ast/venv.scm 125 */
														BgL_test2001z00_2919 = ((bool_t) 1);
													}
											}
										else
											{	/* Ast/venv.scm 124 */
												BgL_test2001z00_2919 = ((bool_t) 0);
											}
									}
									if (BgL_test2001z00_2919)
										{	/* Ast/venv.scm 126 */
											obj_t BgL_arg1420z00_1622;
											obj_t BgL_arg1431z00_1623;
											obj_t BgL_arg1436z00_1624;

											BgL_arg1420z00_1622 =
												(((BgL_globalz00_bglt) COBJECT(
														((BgL_globalz00_bglt) BgL_newz00_6)))->
												BgL_modulez00);
											BgL_arg1431z00_1623 =
												(((BgL_globalz00_bglt) COBJECT(((BgL_globalz00_bglt)
															BgL_newz00_6)))->BgL_jvmzd2typezd2namez00);
											BgL_arg1436z00_1624 =
												BGl_shapez00zztools_shapez00(BgL_newz00_6);
											{	/* Ast/venv.scm 126 */
												obj_t BgL_list1437z00_1625;

												BgL_list1437z00_1625 =
													MAKE_YOUNG_PAIR(BgL_arg1436z00_1624, BNIL);
												return
													BGl_addzd2qualifiedzd2typez12z12zzread_jvmz00
													(BgL_arg1420z00_1622, BgL_arg1431z00_1623,
													BgL_list1437z00_1625);
											}
										}
									else
										{	/* Ast/venv.scm 124 */
											return BFALSE;
										}
								}
							}
						}
					}
				}
			}
		}

	}



/* &restore-global! */
	obj_t BGl_z62restorezd2globalz12za2zzast_envz00(obj_t BgL_envz00_2632,
		obj_t BgL_newz00_2633)
	{
		{	/* Ast/venv.scm 112 */
			return BGl_restorezd2globalz12zc0zzast_envz00(BgL_newz00_2633);
		}

	}



/* already-restored? */
	BGL_EXPORTED_DEF obj_t BGl_alreadyzd2restoredzf3z21zzast_envz00(obj_t
		BgL_funz00_8)
	{
		{	/* Ast/venv.scm 147 */
			return
				BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_funz00_8,
				BGl_za2restoredza2z00zzast_envz00);
		}

	}



/* &already-restored? */
	obj_t BGl_z62alreadyzd2restoredzf3z43zzast_envz00(obj_t BgL_envz00_2634,
		obj_t BgL_funz00_2635)
	{
		{	/* Ast/venv.scm 147 */
			return BGl_alreadyzd2restoredzf3z21zzast_envz00(BgL_funz00_2635);
		}

	}



/* get-genv */
	BGL_EXPORTED_DEF obj_t BGl_getzd2genvzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 226 */
			return BGl_za2Genvza2z00zzast_envz00;
		}

	}



/* &get-genv */
	obj_t BGl_z62getzd2genvzb0zzast_envz00(obj_t BgL_envz00_2636)
	{
		{	/* Ast/venv.scm 226 */
			return BGl_getzd2genvzd2zzast_envz00();
		}

	}



/* initialize-Genv! */
	BGL_EXPORTED_DEF obj_t BGl_initializa7ezd2Genvz12z67zzast_envz00(void)
	{
		{	/* Ast/venv.scm 232 */
			return (BGl_za2Genvza2z00zzast_envz00 =
				BGl_makezd2hashtablezd2zz__hashz00(BNIL), BUNSPEC);
		}

	}



/* &initialize-Genv! */
	obj_t BGl_z62initializa7ezd2Genvz12z05zzast_envz00(obj_t BgL_envz00_2637)
	{
		{	/* Ast/venv.scm 232 */
			return BGl_initializa7ezd2Genvz12z67zzast_envz00();
		}

	}



/* find-global */
	BGL_EXPORTED_DEF obj_t BGl_findzd2globalzd2zzast_envz00(obj_t BgL_idz00_19,
		obj_t BgL_modulez00_20)
	{
		{	/* Ast/venv.scm 238 */
			{	/* Ast/venv.scm 240 */
				obj_t BgL_bucketz00_1631;
				obj_t BgL_modulez00_1632;

				BgL_bucketz00_1631 =
					BGl_hashtablezd2getzd2zz__hashz00(BGl_za2Genvza2z00zzast_envz00,
					BgL_idz00_19);
				if (NULLP(BgL_modulez00_20))
					{	/* Ast/venv.scm 241 */
						BgL_modulez00_1632 = BNIL;
					}
				else
					{	/* Ast/venv.scm 241 */
						BgL_modulez00_1632 = CAR(((obj_t) BgL_modulez00_20));
					}
				if (PAIRP(BgL_bucketz00_1631))
					{	/* Ast/venv.scm 243 */
						if (NULLP(CDR(BgL_bucketz00_1631)))
							{	/* Ast/venv.scm 245 */
								return BFALSE;
							}
						else
							{	/* Ast/venv.scm 245 */
								if (NULLP(BgL_modulez00_1632))
									{	/* Ast/venv.scm 247 */
										return CAR(CDR(BgL_bucketz00_1631));
									}
								else
									{	/* Ast/venv.scm 250 */
										obj_t BgL_g1108z00_1637;

										BgL_g1108z00_1637 = CDR(BgL_bucketz00_1631);
										{
											obj_t BgL_globalsz00_1639;

											BgL_globalsz00_1639 = BgL_g1108z00_1637;
										BgL_zc3z04anonymousza31482ze3z87_1640:
											if (NULLP(BgL_globalsz00_1639))
												{	/* Ast/venv.scm 252 */
													return BFALSE;
												}
											else
												{	/* Ast/venv.scm 252 */
													if (
														((((BgL_globalz00_bglt) COBJECT(
																		((BgL_globalz00_bglt)
																			CAR(
																				((obj_t) BgL_globalsz00_1639)))))->
																BgL_modulez00) == BgL_modulez00_1632))
														{	/* Ast/venv.scm 254 */
															return CAR(((obj_t) BgL_globalsz00_1639));
														}
													else
														{	/* Ast/venv.scm 257 */
															obj_t BgL_arg1494z00_1645;

															BgL_arg1494z00_1645 =
																CDR(((obj_t) BgL_globalsz00_1639));
															{
																obj_t BgL_globalsz00_2969;

																BgL_globalsz00_2969 = BgL_arg1494z00_1645;
																BgL_globalsz00_1639 = BgL_globalsz00_2969;
																goto BgL_zc3z04anonymousza31482ze3z87_1640;
															}
														}
												}
										}
									}
							}
					}
				else
					{	/* Ast/venv.scm 243 */
						return BFALSE;
					}
			}
		}

	}



/* &find-global */
	obj_t BGl_z62findzd2globalzb0zzast_envz00(obj_t BgL_envz00_2638,
		obj_t BgL_idz00_2639, obj_t BgL_modulez00_2640)
	{
		{	/* Ast/venv.scm 238 */
			return
				BGl_findzd2globalzd2zzast_envz00(BgL_idz00_2639, BgL_modulez00_2640);
		}

	}



/* find-global/module */
	BGL_EXPORTED_DEF obj_t BGl_findzd2globalzf2modulez20zzast_envz00(obj_t
		BgL_idz00_21, obj_t BgL_modulez00_22)
	{
		{	/* Ast/venv.scm 262 */
			{	/* Ast/venv.scm 263 */
				obj_t BgL_bucketz00_1651;

				BgL_bucketz00_1651 =
					BGl_hashtablezd2getzd2zz__hashz00(BGl_za2Genvza2z00zzast_envz00,
					BgL_idz00_21);
				if (PAIRP(BgL_bucketz00_1651))
					{	/* Ast/venv.scm 265 */
						if (NULLP(CDR(BgL_bucketz00_1651)))
							{	/* Ast/venv.scm 267 */
								return BFALSE;
							}
						else
							{	/* Ast/venv.scm 272 */
								obj_t BgL_g1109z00_1656;

								BgL_g1109z00_1656 = CDR(BgL_bucketz00_1651);
								{
									obj_t BgL_globalsz00_1658;

									BgL_globalsz00_1658 = BgL_g1109z00_1656;
								BgL_zc3z04anonymousza31531ze3z87_1659:
									if (NULLP(BgL_globalsz00_1658))
										{	/* Ast/venv.scm 274 */
											return BFALSE;
										}
									else
										{	/* Ast/venv.scm 274 */
											if (
												((((BgL_globalz00_bglt) COBJECT(
																((BgL_globalz00_bglt)
																	CAR(
																		((obj_t) BgL_globalsz00_1658)))))->
														BgL_modulez00) == BgL_modulez00_22))
												{	/* Ast/venv.scm 276 */
													return CAR(((obj_t) BgL_globalsz00_1658));
												}
											else
												{	/* Ast/venv.scm 279 */
													obj_t BgL_arg1545z00_1664;

													BgL_arg1545z00_1664 =
														CDR(((obj_t) BgL_globalsz00_1658));
													{
														obj_t BgL_globalsz00_2990;

														BgL_globalsz00_2990 = BgL_arg1545z00_1664;
														BgL_globalsz00_1658 = BgL_globalsz00_2990;
														goto BgL_zc3z04anonymousza31531ze3z87_1659;
													}
												}
										}
								}
							}
					}
				else
					{	/* Ast/venv.scm 265 */
						return BFALSE;
					}
			}
		}

	}



/* &find-global/module */
	obj_t BGl_z62findzd2globalzf2modulez42zzast_envz00(obj_t BgL_envz00_2641,
		obj_t BgL_idz00_2642, obj_t BgL_modulez00_2643)
	{
		{	/* Ast/venv.scm 262 */
			return
				BGl_findzd2globalzf2modulez20zzast_envz00(BgL_idz00_2642,
				BgL_modulez00_2643);
		}

	}



/* get-global/module */
	BGL_EXPORTED_DEF obj_t BGl_getzd2globalzf2modulez20zzast_envz00(obj_t
		BgL_idz00_23, obj_t BgL_modulez00_24)
	{
		{	/* Ast/venv.scm 284 */
			{	/* Ast/venv.scm 285 */
				obj_t BgL_globalz00_1669;

				BgL_globalz00_1669 =
					BGl_findzd2globalzf2modulez20zzast_envz00(BgL_idz00_23,
					BgL_modulez00_24);
				{	/* Ast/venv.scm 286 */
					bool_t BgL_test2014z00_2993;

					{	/* Ast/venv.scm 286 */
						bool_t BgL_test2015z00_2994;

						{	/* Ast/venv.scm 286 */
							obj_t BgL_classz00_2155;

							BgL_classz00_2155 = BGl_globalz00zzast_varz00;
							if (BGL_OBJECTP(BgL_globalz00_1669))
								{	/* Ast/venv.scm 286 */
									BgL_objectz00_bglt BgL_arg1801z00_2157;

									BgL_arg1801z00_2157 =
										(BgL_objectz00_bglt) (BgL_globalz00_1669);
									if (BGL_CONDEXPAND_ISA_ARCH64())
										{	/* Ast/venv.scm 286 */
											long BgL_idxz00_2163;

											BgL_idxz00_2163 =
												BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2157);
											BgL_test2015z00_2994 =
												(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
													(BgL_idxz00_2163 + 2L)) == BgL_classz00_2155);
										}
									else
										{	/* Ast/venv.scm 286 */
											bool_t BgL_res1913z00_2185;

											{	/* Ast/venv.scm 286 */
												obj_t BgL_oclassz00_2171;

												{	/* Ast/venv.scm 286 */
													long BgL_arg1808z00_2177;

													{	/* Ast/venv.scm 286 */
														long BgL_arg1809z00_2178;

														BgL_arg1809z00_2178 =
															BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2157);
														BgL_arg1808z00_2177 =
															(BgL_arg1809z00_2178 - OBJECT_TYPE);
													}
													BgL_oclassz00_2171 =
														VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
														BgL_arg1808z00_2177);
												}
												{	/* Ast/venv.scm 286 */
													bool_t BgL__ortest_1115z00_2172;

													BgL__ortest_1115z00_2172 =
														(BgL_classz00_2155 == BgL_oclassz00_2171);
													if (BgL__ortest_1115z00_2172)
														{	/* Ast/venv.scm 286 */
															BgL_res1913z00_2185 = BgL__ortest_1115z00_2172;
														}
													else
														{	/* Ast/venv.scm 286 */
															long BgL_odepthz00_2173;

															BgL_odepthz00_2173 =
																BGL_CLASS_DEPTH(BgL_oclassz00_2171);
															if ((2L < BgL_odepthz00_2173))
																{	/* Ast/venv.scm 286 */
																	obj_t BgL_arg1797z00_2175;

																	BgL_arg1797z00_2175 =
																		BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2171,
																		2L);
																	BgL_res1913z00_2185 =
																		(BgL_arg1797z00_2175 == BgL_classz00_2155);
																}
															else
																{	/* Ast/venv.scm 286 */
																	BgL_res1913z00_2185 = ((bool_t) 0);
																}
														}
												}
											}
											BgL_test2015z00_2994 = BgL_res1913z00_2185;
										}
								}
							else
								{	/* Ast/venv.scm 286 */
									BgL_test2015z00_2994 = ((bool_t) 0);
								}
						}
						if (BgL_test2015z00_2994)
							{	/* Ast/venv.scm 286 */
								BgL_test2014z00_2993 = ((bool_t) 0);
							}
						else
							{	/* Ast/venv.scm 286 */
								if (CBOOL(BGl_za2libzd2modeza2zd2zzengine_paramz00))
									{	/* Ast/venv.scm 286 */
										BgL_test2014z00_2993 = ((bool_t) 0);
									}
								else
									{	/* Ast/venv.scm 286 */
										BgL_test2014z00_2993 = ((bool_t) 1);
									}
							}
					}
					if (BgL_test2014z00_2993)
						{	/* Ast/venv.scm 289 */
							obj_t BgL_arg1554z00_1672;

							{	/* Ast/venv.scm 289 */
								obj_t BgL_list1555z00_1673;

								{	/* Ast/venv.scm 289 */
									obj_t BgL_arg1560z00_1674;

									BgL_arg1560z00_1674 = MAKE_YOUNG_PAIR(BgL_modulez00_24, BNIL);
									BgL_list1555z00_1673 =
										MAKE_YOUNG_PAIR(BgL_idz00_23, BgL_arg1560z00_1674);
								}
								BgL_arg1554z00_1672 =
									BGl_formatz00zz__r4_output_6_10_3z00
									(BGl_string1932z00zzast_envz00, BgL_list1555z00_1673);
							}
							BGl_internalzd2errorzd2zztools_errorz00(CNST_TABLE_REF(2L),
								BGl_string1933z00zzast_envz00, BgL_arg1554z00_1672);
						}
					else
						{	/* Ast/venv.scm 286 */
							BFALSE;
						}
				}
				return BgL_globalz00_1669;
			}
		}

	}



/* &get-global/module */
	obj_t BGl_z62getzd2globalzf2modulez42zzast_envz00(obj_t BgL_envz00_2644,
		obj_t BgL_idz00_2645, obj_t BgL_modulez00_2646)
	{
		{	/* Ast/venv.scm 284 */
			return
				BGl_getzd2globalzf2modulez20zzast_envz00(BgL_idz00_2645,
				BgL_modulez00_2646);
		}

	}



/* warning-override-global! */
	obj_t BGl_warningzd2overridezd2globalz12z12zzast_envz00(obj_t BgL_nz00_25,
		obj_t BgL_oz00_26, obj_t BgL_srcez00_27)
	{
		{	/* Ast/venv.scm 295 */
			{	/* Ast/venv.scm 296 */
				bool_t BgL_test2021z00_3022;

				{	/* Ast/venv.scm 296 */
					bool_t BgL_test2022z00_3023;

					{	/* Ast/venv.scm 296 */
						int BgL_arg1597z00_1696;

						BgL_arg1597z00_1696 = BGl_bigloozd2warningzd2zz__paramz00();
						BgL_test2022z00_3023 = ((long) (BgL_arg1597z00_1696) > 0L);
					}
					if (BgL_test2022z00_3023)
						{	/* Ast/venv.scm 296 */
							BgL_test2021z00_3022 =
								CBOOL
								(BGl_za2warningzd2overridenzd2variablesza2z00zzengine_paramz00);
						}
					else
						{	/* Ast/venv.scm 296 */
							BgL_test2021z00_3022 = ((bool_t) 0);
						}
				}
				if (BgL_test2021z00_3022)
					{	/* Ast/venv.scm 298 */
						obj_t BgL_locz00_1681;
						obj_t BgL_oldz00_1682;
						obj_t BgL_newz00_1683;

						{	/* Ast/venv.scm 298 */
							obj_t BgL__ortest_1111z00_1685;

							{	/* Ast/venv.scm 298 */
								obj_t BgL_arg1575z00_1686;

								BgL_arg1575z00_1686 =
									(((BgL_globalz00_bglt) COBJECT(
											((BgL_globalz00_bglt) BgL_oz00_26)))->BgL_srcz00);
								BgL__ortest_1111z00_1685 =
									BGl_findzd2locationzd2zztools_locationz00
									(BgL_arg1575z00_1686);
							}
							if (CBOOL(BgL__ortest_1111z00_1685))
								{	/* Ast/venv.scm 298 */
									BgL_locz00_1681 = BgL__ortest_1111z00_1685;
								}
							else
								{	/* Ast/venv.scm 298 */
									BgL_locz00_1681 =
										BGl_findzd2locationzd2zztools_locationz00(BgL_srcez00_27);
								}
						}
						{	/* Ast/venv.scm 299 */
							obj_t BgL_arg1576z00_1687;

							{	/* Ast/venv.scm 299 */
								obj_t BgL_arg1578z00_1688;
								obj_t BgL_arg1579z00_1689;

								BgL_arg1578z00_1688 =
									(((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt)
												((BgL_globalz00_bglt) BgL_oz00_26))))->BgL_idz00);
								{	/* Ast/venv.scm 299 */
									obj_t BgL_arg1581z00_1690;

									BgL_arg1581z00_1690 =
										(((BgL_globalz00_bglt) COBJECT(
												((BgL_globalz00_bglt) BgL_oz00_26)))->BgL_modulez00);
									BgL_arg1579z00_1689 =
										MAKE_YOUNG_PAIR(BgL_arg1581z00_1690, BNIL);
								}
								BgL_arg1576z00_1687 =
									MAKE_YOUNG_PAIR(BgL_arg1578z00_1688, BgL_arg1579z00_1689);
							}
							BgL_oldz00_1682 =
								MAKE_YOUNG_PAIR(CNST_TABLE_REF(3L), BgL_arg1576z00_1687);
						}
						{	/* Ast/venv.scm 300 */
							obj_t BgL_arg1586z00_1691;

							{	/* Ast/venv.scm 300 */
								obj_t BgL_arg1590z00_1692;
								obj_t BgL_arg1592z00_1693;

								BgL_arg1590z00_1692 =
									(((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt)
												((BgL_globalz00_bglt) BgL_nz00_25))))->BgL_idz00);
								{	/* Ast/venv.scm 300 */
									obj_t BgL_arg1595z00_1694;

									BgL_arg1595z00_1694 =
										(((BgL_globalz00_bglt) COBJECT(
												((BgL_globalz00_bglt) BgL_nz00_25)))->BgL_modulez00);
									BgL_arg1592z00_1693 =
										MAKE_YOUNG_PAIR(BgL_arg1595z00_1694, BNIL);
								}
								BgL_arg1586z00_1691 =
									MAKE_YOUNG_PAIR(BgL_arg1590z00_1692, BgL_arg1592z00_1693);
							}
							BgL_newz00_1683 =
								MAKE_YOUNG_PAIR(CNST_TABLE_REF(3L), BgL_arg1586z00_1691);
						}
						if (CBOOL(BgL_locz00_1681))
							{	/* Ast/venv.scm 302 */
								return
									BGl_userzd2warningzf2locationz20zztools_errorz00
									(BgL_locz00_1681, BgL_oldz00_1682,
									BGl_string1934z00zzast_envz00, BgL_newz00_1683);
							}
						else
							{	/* Ast/venv.scm 302 */
								BGL_TAIL return
									BGl_userzd2warningzd2zztools_errorz00(BgL_oldz00_1682,
									BGl_string1934z00zzast_envz00, BgL_newz00_1683);
							}
					}
				else
					{	/* Ast/venv.scm 296 */
						return BFALSE;
					}
			}
		}

	}



/* error-rebind-global! */
	obj_t BGl_errorzd2rebindzd2globalz12z12zzast_envz00(obj_t BgL_oz00_28,
		obj_t BgL_srcz00_29)
	{
		{	/* Ast/venv.scm 309 */
			{	/* Ast/venv.scm 311 */
				obj_t BgL_locz00_1698;

				BgL_locz00_1698 =
					BGl_findzd2locationzd2zztools_locationz00(BgL_srcz00_29);
				if (CBOOL(BgL_locz00_1698))
					{	/* Ast/venv.scm 314 */
						obj_t BgL_arg1598z00_1700;
						obj_t BgL_arg1606z00_1701;

						BgL_arg1598z00_1700 =
							(((BgL_globalz00_bglt) COBJECT(
									((BgL_globalz00_bglt) BgL_oz00_28)))->BgL_modulez00);
						BgL_arg1606z00_1701 = BGl_shapez00zztools_shapez00(BgL_oz00_28);
						return
							BGl_userzd2errorzf2locationz20zztools_errorz00(BgL_locz00_1698,
							BgL_arg1598z00_1700, BGl_string1935z00zzast_envz00,
							BgL_arg1606z00_1701, BNIL);
					}
				else
					{	/* Ast/venv.scm 315 */
						obj_t BgL_arg1608z00_1703;
						obj_t BgL_arg1609z00_1704;

						BgL_arg1608z00_1703 =
							(((BgL_globalz00_bglt) COBJECT(
									((BgL_globalz00_bglt) BgL_oz00_28)))->BgL_modulez00);
						BgL_arg1609z00_1704 = BGl_shapez00zztools_shapez00(BgL_oz00_28);
						return
							BGl_userzd2errorzd2zztools_errorz00(BgL_arg1608z00_1703,
							BGl_string1935z00zzast_envz00, BgL_arg1609z00_1704, BNIL);
					}
			}
		}

	}



/* warning-rebind-global! */
	obj_t BGl_warningzd2rebindzd2globalz12z12zzast_envz00(obj_t BgL_oz00_30,
		obj_t BgL_srcz00_31)
	{
		{	/* Ast/venv.scm 320 */
			{	/* Ast/venv.scm 322 */
				obj_t BgL_locz00_1707;

				BgL_locz00_1707 =
					BGl_findzd2locationzd2zztools_locationz00(BgL_srcz00_31);
				if (CBOOL(BgL_locz00_1707))
					{	/* Ast/venv.scm 325 */
						obj_t BgL_arg1613z00_1709;
						obj_t BgL_arg1614z00_1710;

						BgL_arg1613z00_1709 =
							(((BgL_globalz00_bglt) COBJECT(
									((BgL_globalz00_bglt) BgL_oz00_30)))->BgL_modulez00);
						BgL_arg1614z00_1710 = BGl_shapez00zztools_shapez00(BgL_oz00_30);
						return
							BGl_userzd2warningzf2locationz20zztools_errorz00(BgL_locz00_1707,
							BgL_arg1613z00_1709, BGl_string1935z00zzast_envz00,
							BgL_arg1614z00_1710);
					}
				else
					{	/* Ast/venv.scm 326 */
						obj_t BgL_arg1615z00_1711;
						obj_t BgL_arg1616z00_1712;

						BgL_arg1615z00_1711 =
							(((BgL_globalz00_bglt) COBJECT(
									((BgL_globalz00_bglt) BgL_oz00_30)))->BgL_modulez00);
						BgL_arg1616z00_1712 = BGl_shapez00zztools_shapez00(BgL_oz00_30);
						return
							BGl_userzd2warningzd2zztools_errorz00(BgL_arg1615z00_1711,
							BGl_string1935z00zzast_envz00, BgL_arg1616z00_1712);
					}
			}
		}

	}



/* bind-global! */
	BGL_EXPORTED_DEF BgL_globalz00_bglt BGl_bindzd2globalz12zc0zzast_envz00(obj_t
		BgL_idz00_32, obj_t BgL_aliasz00_33, obj_t BgL_modulez00_34,
		BgL_valuez00_bglt BgL_valuez00_35, obj_t BgL_importz00_36,
		obj_t BgL_srcz00_37)
	{
		{	/* Ast/venv.scm 343 */
			{	/* Ast/venv.scm 346 */
				obj_t BgL_identz00_1713;

				if (CBOOL(BgL_aliasz00_33))
					{	/* Ast/venv.scm 346 */
						BgL_identz00_1713 = BgL_aliasz00_33;
					}
				else
					{	/* Ast/venv.scm 346 */
						BgL_identz00_1713 = BgL_idz00_32;
					}
				{	/* Ast/venv.scm 346 */
					obj_t BgL_oldz00_1714;

					{	/* Ast/venv.scm 347 */
						obj_t BgL_list1697z00_1749;

						BgL_list1697z00_1749 = MAKE_YOUNG_PAIR(BgL_modulez00_34, BNIL);
						BgL_oldz00_1714 =
							BGl_findzd2globalzd2zzast_envz00(BgL_identz00_1713,
							BgL_list1697z00_1749);
					}
					{	/* Ast/venv.scm 347 */

						{	/* Ast/venv.scm 348 */
							bool_t BgL_test2028z00_3082;

							{	/* Ast/venv.scm 348 */
								obj_t BgL_classz00_2189;

								BgL_classz00_2189 = BGl_globalz00zzast_varz00;
								if (BGL_OBJECTP(BgL_oldz00_1714))
									{	/* Ast/venv.scm 348 */
										BgL_objectz00_bglt BgL_arg1801z00_2191;

										BgL_arg1801z00_2191 =
											(BgL_objectz00_bglt) (BgL_oldz00_1714);
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* Ast/venv.scm 348 */
												long BgL_idxz00_2197;

												BgL_idxz00_2197 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2191);
												BgL_test2028z00_3082 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_2197 + 2L)) == BgL_classz00_2189);
											}
										else
											{	/* Ast/venv.scm 348 */
												bool_t BgL_res1914z00_2219;

												{	/* Ast/venv.scm 348 */
													obj_t BgL_oclassz00_2205;

													{	/* Ast/venv.scm 348 */
														long BgL_arg1808z00_2211;

														{	/* Ast/venv.scm 348 */
															long BgL_arg1809z00_2212;

															BgL_arg1809z00_2212 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2191);
															BgL_arg1808z00_2211 =
																(BgL_arg1809z00_2212 - OBJECT_TYPE);
														}
														BgL_oclassz00_2205 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_2211);
													}
													{	/* Ast/venv.scm 348 */
														bool_t BgL__ortest_1115z00_2206;

														BgL__ortest_1115z00_2206 =
															(BgL_classz00_2189 == BgL_oclassz00_2205);
														if (BgL__ortest_1115z00_2206)
															{	/* Ast/venv.scm 348 */
																BgL_res1914z00_2219 = BgL__ortest_1115z00_2206;
															}
														else
															{	/* Ast/venv.scm 348 */
																long BgL_odepthz00_2207;

																BgL_odepthz00_2207 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_2205);
																if ((2L < BgL_odepthz00_2207))
																	{	/* Ast/venv.scm 348 */
																		obj_t BgL_arg1797z00_2209;

																		BgL_arg1797z00_2209 =
																			BGL_CLASS_ANCESTORS_REF
																			(BgL_oclassz00_2205, 2L);
																		BgL_res1914z00_2219 =
																			(BgL_arg1797z00_2209 ==
																			BgL_classz00_2189);
																	}
																else
																	{	/* Ast/venv.scm 348 */
																		BgL_res1914z00_2219 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test2028z00_3082 = BgL_res1914z00_2219;
											}
									}
								else
									{	/* Ast/venv.scm 348 */
										BgL_test2028z00_3082 = ((bool_t) 0);
									}
							}
							if (BgL_test2028z00_3082)
								{	/* Ast/venv.scm 348 */
									if (CBOOL(BGl_za2libzd2modeza2zd2zzengine_paramz00))
										{	/* Ast/venv.scm 350 */
											return ((BgL_globalz00_bglt) BgL_oldz00_1714);
										}
									else
										{	/* Ast/venv.scm 350 */
											if (
												(BgL_modulez00_34 ==
													(((BgL_globalz00_bglt) COBJECT(
																((BgL_globalz00_bglt) BgL_oldz00_1714)))->
														BgL_modulez00)))
												{	/* Ast/venv.scm 352 */
													BGl_warningzd2rebindzd2globalz12z12zzast_envz00
														(BgL_oldz00_1714, BgL_srcz00_37);
													return ((BgL_globalz00_bglt) BgL_oldz00_1714);
												}
											else
												{	/* Ast/venv.scm 352 */
													return
														((BgL_globalz00_bglt)
														BGl_errorzd2rebindzd2globalz12z12zzast_envz00
														(BgL_oldz00_1714, BgL_srcz00_37));
												}
										}
								}
							else
								{	/* Ast/venv.scm 357 */
									obj_t BgL_bucketz00_1719;
									BgL_globalz00_bglt BgL_newz00_1720;

									BgL_bucketz00_1719 =
										BGl_hashtablezd2getzd2zz__hashz00
										(BGl_za2Genvza2z00zzast_envz00, BgL_identz00_1713);
									{	/* Ast/venv.scm 358 */
										BgL_globalz00_bglt BgL_new1117z00_1746;

										{	/* Ast/venv.scm 364 */
											BgL_globalz00_bglt BgL_new1116z00_1747;

											BgL_new1116z00_1747 =
												((BgL_globalz00_bglt) BOBJECT(GC_MALLOC(sizeof(struct
															BgL_globalz00_bgl))));
											{	/* Ast/venv.scm 364 */
												long BgL_arg1696z00_1748;

												BgL_arg1696z00_1748 =
													BGL_CLASS_NUM(BGl_globalz00zzast_varz00);
												BGL_OBJECT_CLASS_NUM_SET(
													((BgL_objectz00_bglt) BgL_new1116z00_1747),
													BgL_arg1696z00_1748);
											}
											{	/* Ast/venv.scm 364 */
												BgL_objectz00_bglt BgL_tmpz00_3118;

												BgL_tmpz00_3118 =
													((BgL_objectz00_bglt) BgL_new1116z00_1747);
												BGL_OBJECT_WIDENING_SET(BgL_tmpz00_3118, BFALSE);
											}
											((BgL_objectz00_bglt) BgL_new1116z00_1747);
											BgL_new1117z00_1746 = BgL_new1116z00_1747;
										}
										((((BgL_variablez00_bglt) COBJECT(
														((BgL_variablez00_bglt) BgL_new1117z00_1746)))->
												BgL_idz00) = ((obj_t) BgL_identz00_1713), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_namez00) =
											((obj_t) BFALSE), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_typez00) =
											((BgL_typez00_bglt) ((BgL_typez00_bglt)
													BGl_za2_za2z00zztype_cachez00)), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_valuez00) =
											((BgL_valuez00_bglt) BgL_valuez00_35), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_accessz00) =
											((obj_t) CNST_TABLE_REF(4L)), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_fastzd2alphazd2) =
											((obj_t) BUNSPEC), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_removablez00) =
											((obj_t) CNST_TABLE_REF(5L)), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_occurrencez00) =
											((long) 0L), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_occurrencewz00) =
											((long) 0L), BUNSPEC);
										((((BgL_variablez00_bglt) COBJECT(((BgL_variablez00_bglt)
															BgL_new1117z00_1746)))->BgL_userzf3zf3) =
											((bool_t) ((bool_t) 1)), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_modulez00) = ((obj_t) BgL_modulez00_34), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_importz00) = ((obj_t) BgL_importz00_36), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_evaluablezf3zf3) =
											((bool_t) ((bool_t) 1)), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_evalzf3zf3) = ((bool_t) ((bool_t) 0)), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_libraryz00) = ((obj_t) BFALSE), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_pragmaz00) = ((obj_t) BNIL), BUNSPEC);
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_srcz00) = ((obj_t) BgL_srcz00_37), BUNSPEC);
										{
											obj_t BgL_auxz00_3152;

											if ((BgL_importz00_36 == CNST_TABLE_REF(6L)))
												{	/* Ast/venv.scm 361 */
													BgL_auxz00_3152 = BGl_string1936z00zzast_envz00;
												}
											else
												{	/* Ast/venv.scm 361 */
													BgL_auxz00_3152 =
														BGl_modulezd2ze3qualifiedzd2typeze3zzread_jvmz00
														(BgL_modulez00_34);
												}
											((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
													BgL_jvmzd2typezd2namez00) =
												((obj_t) BgL_auxz00_3152), BUNSPEC);
										}
										((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
												BgL_initz00) = ((obj_t) BUNSPEC), BUNSPEC);
										{
											obj_t BgL_auxz00_3159;

											if (CBOOL(BgL_aliasz00_33))
												{	/* Ast/venv.scm 365 */
													BgL_auxz00_3159 = BgL_idz00_32;
												}
											else
												{	/* Ast/venv.scm 365 */
													BgL_auxz00_3159 = BFALSE;
												}
											((((BgL_globalz00_bglt) COBJECT(BgL_new1117z00_1746))->
													BgL_aliasz00) = ((obj_t) BgL_auxz00_3159), BUNSPEC);
										}
										BgL_newz00_1720 = BgL_new1117z00_1746;
									}
									{	/* Ast/venv.scm 371 */
										bool_t BgL_test2037z00_3163;

										if (PAIRP(BgL_bucketz00_1719))
											{	/* Ast/venv.scm 371 */
												BgL_test2037z00_3163 = NULLP(CDR(BgL_bucketz00_1719));
											}
										else
											{	/* Ast/venv.scm 371 */
												BgL_test2037z00_3163 = ((bool_t) 1);
											}
										if (BgL_test2037z00_3163)
											{	/* Ast/venv.scm 371 */
												{	/* Ast/venv.scm 373 */
													obj_t BgL_arg1639z00_1724;

													{	/* Ast/venv.scm 373 */
														obj_t BgL_list1640z00_1725;

														{	/* Ast/venv.scm 373 */
															obj_t BgL_arg1649z00_1726;

															BgL_arg1649z00_1726 =
																MAKE_YOUNG_PAIR(
																((obj_t) BgL_newz00_1720), BNIL);
															BgL_list1640z00_1725 =
																MAKE_YOUNG_PAIR(BgL_identz00_1713,
																BgL_arg1649z00_1726);
														}
														BgL_arg1639z00_1724 = BgL_list1640z00_1725;
													}
													BGl_hashtablezd2putz12zc0zz__hashz00
														(BGl_za2Genvza2z00zzast_envz00, BgL_identz00_1713,
														BgL_arg1639z00_1724);
												}
												return BgL_newz00_1720;
											}
										else
											{	/* Ast/venv.scm 376 */
												obj_t BgL_oldza2za2_1727;

												BgL_oldza2za2_1727 = CDR(((obj_t) BgL_bucketz00_1719));
												{	/* Ast/venv.scm 376 */
													obj_t BgL_midz00_1728;

													{	/* Ast/venv.scm 378 */
														obj_t BgL_arg1690z00_1742;

														BgL_arg1690z00_1742 =
															(((BgL_globalz00_bglt) COBJECT(
																	((BgL_globalz00_bglt)
																		CAR(
																			((obj_t) BgL_oldza2za2_1727)))))->
															BgL_modulez00);
														BgL_midz00_1728 =
															BGl_modulezd2initializa7ationzd2idza7zzmodule_modulez00
															(BgL_arg1690z00_1742);
													}
													{	/* Ast/venv.scm 377 */

														{	/* Ast/venv.scm 380 */
															bool_t BgL_test2039z00_3179;

															{	/* Ast/venv.scm 380 */
																obj_t BgL_arg1684z00_1740;

																BgL_arg1684z00_1740 =
																	(((BgL_globalz00_bglt) COBJECT(
																			((BgL_globalz00_bglt)
																				CAR(
																					((obj_t) BgL_oldza2za2_1727)))))->
																	BgL_modulez00);
																BgL_test2039z00_3179 =
																	(BgL_arg1684z00_1740 ==
																	BGl_za2moduleza2z00zzmodule_modulez00);
															}
															if (BgL_test2039z00_3179)
																{	/* Ast/venv.scm 380 */
																	{	/* Ast/venv.scm 382 */
																		bool_t BgL_test2040z00_3185;

																		if ((BgL_identz00_1713 == BgL_midz00_1728))
																			{	/* Ast/venv.scm 382 */
																				BgL_test2040z00_3185 = ((bool_t) 0);
																			}
																		else
																			{	/* Ast/venv.scm 382 */
																				if (CBOOL
																					(BGl_za2libzd2modeza2zd2zzengine_paramz00))
																					{	/* Ast/venv.scm 382 */
																						BgL_test2040z00_3185 = ((bool_t) 0);
																					}
																				else
																					{	/* Ast/venv.scm 382 */
																						BgL_test2040z00_3185 = ((bool_t) 1);
																					}
																			}
																		if (BgL_test2040z00_3185)
																			{	/* Ast/venv.scm 383 */
																				obj_t BgL_arg1669z00_1733;

																				BgL_arg1669z00_1733 =
																					CAR(((obj_t) BgL_oldza2za2_1727));
																				BGl_warningzd2overridezd2globalz12z12zzast_envz00
																					(BgL_arg1669z00_1733,
																					((obj_t) BgL_newz00_1720),
																					BgL_srcz00_37);
																			}
																		else
																			{	/* Ast/venv.scm 382 */
																				BFALSE;
																			}
																	}
																	{	/* Ast/venv.scm 384 */
																		obj_t BgL_arg1673z00_1734;
																		obj_t BgL_arg1675z00_1735;

																		BgL_arg1673z00_1734 =
																			CDR(((obj_t) BgL_bucketz00_1719));
																		{	/* Ast/venv.scm 384 */
																			obj_t BgL_arg1678z00_1736;

																			{	/* Ast/venv.scm 384 */
																				obj_t BgL_pairz00_2237;

																				BgL_pairz00_2237 =
																					CDR(((obj_t) BgL_bucketz00_1719));
																				BgL_arg1678z00_1736 =
																					CDR(BgL_pairz00_2237);
																			}
																			BgL_arg1675z00_1735 =
																				MAKE_YOUNG_PAIR(
																				((obj_t) BgL_newz00_1720),
																				BgL_arg1678z00_1736);
																		}
																		{	/* Ast/venv.scm 384 */
																			obj_t BgL_tmpz00_3201;

																			BgL_tmpz00_3201 =
																				((obj_t) BgL_arg1673z00_1734);
																			SET_CDR(BgL_tmpz00_3201,
																				BgL_arg1675z00_1735);
																		}
																	}
																	return BgL_newz00_1720;
																}
															else
																{	/* Ast/venv.scm 387 */
																	obj_t BgL_newza2za2_1737;

																	BgL_newza2za2_1737 =
																		MAKE_YOUNG_PAIR(
																		((obj_t) BgL_newz00_1720),
																		BgL_oldza2za2_1727);
																	{	/* Ast/venv.scm 388 */
																		bool_t BgL_test2043z00_3206;

																		if ((BgL_identz00_1713 == BgL_midz00_1728))
																			{	/* Ast/venv.scm 388 */
																				BgL_test2043z00_3206 = ((bool_t) 0);
																			}
																		else
																			{	/* Ast/venv.scm 388 */
																				if (CBOOL
																					(BGl_za2libzd2modeza2zd2zzengine_paramz00))
																					{	/* Ast/venv.scm 388 */
																						BgL_test2043z00_3206 = ((bool_t) 0);
																					}
																				else
																					{	/* Ast/venv.scm 388 */
																						BgL_test2043z00_3206 = ((bool_t) 1);
																					}
																			}
																		if (BgL_test2043z00_3206)
																			{	/* Ast/venv.scm 389 */
																				obj_t BgL_arg1681z00_1739;

																				BgL_arg1681z00_1739 =
																					CAR(((obj_t) BgL_oldza2za2_1727));
																				BGl_warningzd2overridezd2globalz12z12zzast_envz00
																					(((obj_t) BgL_newz00_1720),
																					BgL_arg1681z00_1739, BgL_srcz00_37);
																			}
																		else
																			{	/* Ast/venv.scm 388 */
																				BFALSE;
																			}
																	}
																	{	/* Ast/venv.scm 390 */
																		obj_t BgL_tmpz00_3215;

																		BgL_tmpz00_3215 =
																			((obj_t) BgL_bucketz00_1719);
																		SET_CDR(BgL_tmpz00_3215,
																			BgL_newza2za2_1737);
																	}
																	return BgL_newz00_1720;
																}
														}
													}
												}
											}
									}
								}
						}
					}
				}
			}
		}

	}



/* &bind-global! */
	BgL_globalz00_bglt BGl_z62bindzd2globalz12za2zzast_envz00(obj_t
		BgL_envz00_2647, obj_t BgL_idz00_2648, obj_t BgL_aliasz00_2649,
		obj_t BgL_modulez00_2650, obj_t BgL_valuez00_2651, obj_t BgL_importz00_2652,
		obj_t BgL_srcz00_2653)
	{
		{	/* Ast/venv.scm 343 */
			return
				BGl_bindzd2globalz12zc0zzast_envz00(BgL_idz00_2648, BgL_aliasz00_2649,
				BgL_modulez00_2650, ((BgL_valuez00_bglt) BgL_valuez00_2651),
				BgL_importz00_2652, BgL_srcz00_2653);
		}

	}



/* unbind-global! */
	BGL_EXPORTED_DEF obj_t BGl_unbindzd2globalz12zc0zzast_envz00(obj_t
		BgL_idz00_38, obj_t BgL_modulez00_39)
	{
		{	/* Ast/venv.scm 396 */
			{	/* Ast/venv.scm 397 */
				obj_t BgL_globalz00_1751;

				{	/* Ast/venv.scm 397 */
					obj_t BgL_list1731z00_1770;

					BgL_list1731z00_1770 = MAKE_YOUNG_PAIR(BgL_modulez00_39, BNIL);
					BgL_globalz00_1751 =
						BGl_findzd2globalzd2zzast_envz00(BgL_idz00_38,
						BgL_list1731z00_1770);
				}
				{	/* Ast/venv.scm 398 */
					bool_t BgL_test2046z00_3222;

					{	/* Ast/venv.scm 398 */
						obj_t BgL_classz00_2241;

						BgL_classz00_2241 = BGl_globalz00zzast_varz00;
						if (BGL_OBJECTP(BgL_globalz00_1751))
							{	/* Ast/venv.scm 398 */
								BgL_objectz00_bglt BgL_arg1801z00_2243;

								BgL_arg1801z00_2243 = (BgL_objectz00_bglt) (BgL_globalz00_1751);
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* Ast/venv.scm 398 */
										long BgL_idxz00_2249;

										BgL_idxz00_2249 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2243);
										BgL_test2046z00_3222 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_2249 + 2L)) == BgL_classz00_2241);
									}
								else
									{	/* Ast/venv.scm 398 */
										bool_t BgL_res1916z00_2271;

										{	/* Ast/venv.scm 398 */
											obj_t BgL_oclassz00_2257;

											{	/* Ast/venv.scm 398 */
												long BgL_arg1808z00_2263;

												{	/* Ast/venv.scm 398 */
													long BgL_arg1809z00_2264;

													BgL_arg1809z00_2264 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2243);
													BgL_arg1808z00_2263 =
														(BgL_arg1809z00_2264 - OBJECT_TYPE);
												}
												BgL_oclassz00_2257 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_2263);
											}
											{	/* Ast/venv.scm 398 */
												bool_t BgL__ortest_1115z00_2258;

												BgL__ortest_1115z00_2258 =
													(BgL_classz00_2241 == BgL_oclassz00_2257);
												if (BgL__ortest_1115z00_2258)
													{	/* Ast/venv.scm 398 */
														BgL_res1916z00_2271 = BgL__ortest_1115z00_2258;
													}
												else
													{	/* Ast/venv.scm 398 */
														long BgL_odepthz00_2259;

														BgL_odepthz00_2259 =
															BGL_CLASS_DEPTH(BgL_oclassz00_2257);
														if ((2L < BgL_odepthz00_2259))
															{	/* Ast/venv.scm 398 */
																obj_t BgL_arg1797z00_2261;

																BgL_arg1797z00_2261 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2257,
																	2L);
																BgL_res1916z00_2271 =
																	(BgL_arg1797z00_2261 == BgL_classz00_2241);
															}
														else
															{	/* Ast/venv.scm 398 */
																BgL_res1916z00_2271 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test2046z00_3222 = BgL_res1916z00_2271;
									}
							}
						else
							{	/* Ast/venv.scm 398 */
								BgL_test2046z00_3222 = ((bool_t) 0);
							}
					}
					if (BgL_test2046z00_3222)
						{	/* Ast/venv.scm 400 */
							obj_t BgL_bucketz00_1753;

							BgL_bucketz00_1753 =
								BGl_hashtablezd2getzd2zz__hashz00(BGl_za2Genvza2z00zzast_envz00,
								BgL_idz00_38);
							{	/* Ast/venv.scm 401 */
								obj_t BgL_g1118z00_1754;

								BgL_g1118z00_1754 = CDR(((obj_t) BgL_bucketz00_1753));
								{
									obj_t BgL_curz00_1756;
									obj_t BgL_prevz00_1757;

									BgL_curz00_1756 = BgL_g1118z00_1754;
									BgL_prevz00_1757 = BgL_bucketz00_1753;
								BgL_zc3z04anonymousza31699ze3z87_1758:
									if ((CAR(((obj_t) BgL_curz00_1756)) == BgL_globalz00_1751))
										{	/* Ast/venv.scm 404 */
											obj_t BgL_arg1710z00_1761;

											BgL_arg1710z00_1761 = CDR(((obj_t) BgL_curz00_1756));
											{	/* Ast/venv.scm 404 */
												obj_t BgL_tmpz00_3251;

												BgL_tmpz00_3251 = ((obj_t) BgL_prevz00_1757);
												return SET_CDR(BgL_tmpz00_3251, BgL_arg1710z00_1761);
											}
										}
									else
										{	/* Ast/venv.scm 405 */
											obj_t BgL_arg1712z00_1762;
											obj_t BgL_arg1714z00_1763;

											BgL_arg1712z00_1762 = CDR(((obj_t) BgL_curz00_1756));
											BgL_arg1714z00_1763 = CDR(((obj_t) BgL_prevz00_1757));
											{
												obj_t BgL_prevz00_3259;
												obj_t BgL_curz00_3258;

												BgL_curz00_3258 = BgL_arg1712z00_1762;
												BgL_prevz00_3259 = BgL_arg1714z00_1763;
												BgL_prevz00_1757 = BgL_prevz00_3259;
												BgL_curz00_1756 = BgL_curz00_3258;
												goto BgL_zc3z04anonymousza31699ze3z87_1758;
											}
										}
								}
							}
						}
					else
						{	/* Ast/venv.scm 399 */
							obj_t BgL_arg1717z00_1766;

							{	/* Ast/venv.scm 399 */
								obj_t BgL_arg1729z00_1768;

								{	/* Ast/venv.scm 399 */
									obj_t BgL_arg1730z00_1769;

									BgL_arg1730z00_1769 = MAKE_YOUNG_PAIR(BgL_modulez00_39, BNIL);
									BgL_arg1729z00_1768 =
										MAKE_YOUNG_PAIR(BgL_idz00_38, BgL_arg1730z00_1769);
								}
								BgL_arg1717z00_1766 =
									MAKE_YOUNG_PAIR(CNST_TABLE_REF(3L), BgL_arg1729z00_1768);
							}
							return
								BGl_userzd2errorzd2zztools_errorz00
								(BGl_string1937z00zzast_envz00, BGl_string1938z00zzast_envz00,
								BgL_arg1717z00_1766, BNIL);
						}
				}
			}
		}

	}



/* &unbind-global! */
	obj_t BGl_z62unbindzd2globalz12za2zzast_envz00(obj_t BgL_envz00_2654,
		obj_t BgL_idz00_2655, obj_t BgL_modulez00_2656)
	{
		{	/* Ast/venv.scm 396 */
			return
				BGl_unbindzd2globalz12zc0zzast_envz00(BgL_idz00_2655,
				BgL_modulez00_2656);
		}

	}



/* for-each-global! */
	BGL_EXPORTED_DEF obj_t BGl_forzd2eachzd2globalz12z12zzast_envz00(obj_t
		BgL_procz00_40, obj_t BgL_envz00_41)
	{
		{	/* Ast/venv.scm 410 */
			{	/* Ast/venv.scm 411 */
				obj_t BgL_arg1732z00_1771;

				if (NULLP(BgL_envz00_41))
					{	/* Ast/venv.scm 411 */
						BgL_arg1732z00_1771 = BGl_za2Genvza2z00zzast_envz00;
					}
				else
					{	/* Ast/venv.scm 411 */
						BgL_arg1732z00_1771 = CAR(((obj_t) BgL_envz00_41));
					}
				{	/* Ast/venv.scm 412 */
					obj_t BgL_zc3z04anonymousza31735ze3z87_2657;

					BgL_zc3z04anonymousza31735ze3z87_2657 =
						MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31735ze3ze5zzast_envz00,
						(int) (2L), (int) (1L));
					PROCEDURE_SET(BgL_zc3z04anonymousza31735ze3z87_2657,
						(int) (0L), BgL_procz00_40);
					return
						BGl_hashtablezd2forzd2eachz00zz__hashz00(BgL_arg1732z00_1771,
						BgL_zc3z04anonymousza31735ze3z87_2657);
				}
			}
		}

	}



/* &for-each-global! */
	obj_t BGl_z62forzd2eachzd2globalz12z70zzast_envz00(obj_t BgL_envz00_2658,
		obj_t BgL_procz00_2659, obj_t BgL_envz00_2660)
	{
		{	/* Ast/venv.scm 410 */
			return
				BGl_forzd2eachzd2globalz12z12zzast_envz00(BgL_procz00_2659,
				BgL_envz00_2660);
		}

	}



/* &<@anonymous:1735> */
	obj_t BGl_z62zc3z04anonymousza31735ze3ze5zzast_envz00(obj_t BgL_envz00_2661,
		obj_t BgL_kz00_2663, obj_t BgL_bucketz00_2664)
	{
		{	/* Ast/venv.scm 412 */
			{	/* Ast/venv.scm 412 */
				obj_t BgL_procz00_2662;

				BgL_procz00_2662 = ((obj_t) PROCEDURE_REF(BgL_envz00_2661, (int) (0L)));
				{	/* Ast/venv.scm 412 */
					bool_t BgL_tmpz00_3280;

					{	/* Ast/venv.scm 412 */
						obj_t BgL_g1306z00_2717;

						BgL_g1306z00_2717 = CDR(((obj_t) BgL_bucketz00_2664));
						{
							obj_t BgL_l1304z00_2719;

							BgL_l1304z00_2719 = BgL_g1306z00_2717;
						BgL_zc3z04anonymousza31736ze3z87_2718:
							if (PAIRP(BgL_l1304z00_2719))
								{	/* Ast/venv.scm 412 */
									{	/* Ast/venv.scm 412 */
										obj_t BgL_arg1739z00_2720;

										BgL_arg1739z00_2720 = CAR(BgL_l1304z00_2719);
										(VA_PROCEDUREP(BgL_procz00_2662) ? ((obj_t(*)(obj_t,
														...))
												PROCEDURE_ENTRY(BgL_procz00_2662)) (BgL_procz00_2662,
												BgL_arg1739z00_2720, BEOA) : ((obj_t(*)(obj_t,
														obj_t))
												PROCEDURE_ENTRY(BgL_procz00_2662)) (BgL_procz00_2662,
												BgL_arg1739z00_2720));
									}
									{
										obj_t BgL_l1304z00_3290;

										BgL_l1304z00_3290 = CDR(BgL_l1304z00_2719);
										BgL_l1304z00_2719 = BgL_l1304z00_3290;
										goto BgL_zc3z04anonymousza31736ze3z87_2718;
									}
								}
							else
								{	/* Ast/venv.scm 412 */
									BgL_tmpz00_3280 = ((bool_t) 1);
								}
						}
					}
					return BBOOL(BgL_tmpz00_3280);
				}
			}
		}

	}



/* global-bucket-position */
	BGL_EXPORTED_DEF obj_t BGl_globalzd2bucketzd2positionz00zzast_envz00(obj_t
		BgL_idz00_42, obj_t BgL_modulez00_43)
	{
		{	/* Ast/venv.scm 417 */
			{	/* Ast/venv.scm 418 */
				obj_t BgL_bucketz00_1786;

				BgL_bucketz00_1786 =
					BGl_hashtablezd2getzd2zz__hashz00(BGl_za2Genvza2z00zzast_envz00,
					BgL_idz00_42);
				if (PAIRP(BgL_bucketz00_1786))
					{	/* Ast/venv.scm 421 */
						obj_t BgL_g1119z00_1788;

						BgL_g1119z00_1788 = CDR(BgL_bucketz00_1786);
						{
							obj_t BgL_globalsz00_1790;
							long BgL_posz00_1791;

							{	/* Ast/venv.scm 421 */
								long BgL_tmpz00_3297;

								BgL_globalsz00_1790 = BgL_g1119z00_1788;
								BgL_posz00_1791 = 0L;
							BgL_zc3z04anonymousza31743ze3z87_1792:
								if (NULLP(BgL_globalsz00_1790))
									{	/* Ast/venv.scm 424 */
										BgL_tmpz00_3297 = -1L;
									}
								else
									{	/* Ast/venv.scm 424 */
										if (
											((((BgL_globalz00_bglt) COBJECT(
															((BgL_globalz00_bglt)
																CAR(
																	((obj_t) BgL_globalsz00_1790)))))->
													BgL_modulez00) == BgL_modulez00_43))
											{	/* Ast/venv.scm 426 */
												BgL_tmpz00_3297 = BgL_posz00_1791;
											}
										else
											{	/* Ast/venv.scm 429 */
												obj_t BgL_arg1748z00_1797;
												long BgL_arg1749z00_1798;

												BgL_arg1748z00_1797 =
													CDR(((obj_t) BgL_globalsz00_1790));
												BgL_arg1749z00_1798 = (BgL_posz00_1791 + 1L);
												{
													long BgL_posz00_3310;
													obj_t BgL_globalsz00_3309;

													BgL_globalsz00_3309 = BgL_arg1748z00_1797;
													BgL_posz00_3310 = BgL_arg1749z00_1798;
													BgL_posz00_1791 = BgL_posz00_3310;
													BgL_globalsz00_1790 = BgL_globalsz00_3309;
													goto BgL_zc3z04anonymousza31743ze3z87_1792;
												}
											}
									}
								return BINT(BgL_tmpz00_3297);
							}
						}
					}
				else
					{	/* Ast/venv.scm 419 */
						return BINT(-1L);
					}
			}
		}

	}



/* &global-bucket-position */
	obj_t BGl_z62globalzd2bucketzd2positionz62zzast_envz00(obj_t BgL_envz00_2665,
		obj_t BgL_idz00_2666, obj_t BgL_modulez00_2667)
	{
		{	/* Ast/venv.scm 417 */
			return
				BGl_globalzd2bucketzd2positionz00zzast_envz00(BgL_idz00_2666,
				BgL_modulez00_2667);
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			return
				BGl_registerzd2genericz12zc0zz__objectz00
				(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
				BGl_proc1939z00zzast_envz00, BGl_valuez00zzast_varz00,
				BGl_string1940z00zzast_envz00);
		}

	}



/* &restore-value-types!1307 */
	obj_t BGl_z62restorezd2valuezd2typesz121307z70zzast_envz00(obj_t
		BgL_envz00_2669, obj_t BgL_valuez00_2670, obj_t BgL_idz00_2671)
	{
		{	/* Ast/venv.scm 153 */
			return BUNSPEC;
		}

	}



/* restore-value-types! */
	obj_t BGl_restorezd2valuezd2typesz12z12zzast_envz00(BgL_valuez00_bglt
		BgL_valuez00_9, obj_t BgL_idz00_10)
	{
		{	/* Ast/venv.scm 153 */
			{	/* Ast/venv.scm 153 */
				obj_t BgL_method1308z00_1807;

				{	/* Ast/venv.scm 153 */
					obj_t BgL_res1921z00_2317;

					{	/* Ast/venv.scm 153 */
						long BgL_objzd2classzd2numz00_2288;

						BgL_objzd2classzd2numz00_2288 =
							BGL_OBJECT_CLASS_NUM(((BgL_objectz00_bglt) BgL_valuez00_9));
						{	/* Ast/venv.scm 153 */
							obj_t BgL_arg1805z00_2289;

							BgL_arg1805z00_2289 =
								PROCEDURE_REF
								(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
								(int) (1L));
							{	/* Ast/venv.scm 153 */
								int BgL_offsetz00_2292;

								BgL_offsetz00_2292 = (int) (BgL_objzd2classzd2numz00_2288);
								{	/* Ast/venv.scm 153 */
									long BgL_offsetz00_2293;

									BgL_offsetz00_2293 =
										((long) (BgL_offsetz00_2292) - OBJECT_TYPE);
									{	/* Ast/venv.scm 153 */
										long BgL_modz00_2294;

										BgL_modz00_2294 =
											(BgL_offsetz00_2293 >> (int) ((long) ((int) (4L))));
										{	/* Ast/venv.scm 153 */
											long BgL_restz00_2296;

											BgL_restz00_2296 =
												(BgL_offsetz00_2293 &
												(long) (
													(int) (
														((long) (
																(int) (
																	(1L <<
																		(int) ((long) ((int) (4L)))))) - 1L))));
											{	/* Ast/venv.scm 153 */

												{	/* Ast/venv.scm 153 */
													obj_t BgL_bucketz00_2298;

													BgL_bucketz00_2298 =
														VECTOR_REF(
														((obj_t) BgL_arg1805z00_2289), BgL_modz00_2294);
													BgL_res1921z00_2317 =
														VECTOR_REF(
														((obj_t) BgL_bucketz00_2298), BgL_restz00_2296);
					}}}}}}}}
					BgL_method1308z00_1807 = BgL_res1921z00_2317;
				}
				return
					(VA_PROCEDUREP(BgL_method1308z00_1807) ? ((obj_t(*)(obj_t,
								...))
						PROCEDURE_ENTRY(BgL_method1308z00_1807)) (BgL_method1308z00_1807,
						((obj_t) BgL_valuez00_9), BgL_idz00_10, BEOA) : ((obj_t(*)(obj_t,
								obj_t,
								obj_t))
						PROCEDURE_ENTRY(BgL_method1308z00_1807)) (BgL_method1308z00_1807,
						((obj_t) BgL_valuez00_9), BgL_idz00_10));
			}
		}

	}



/* &restore-value-types! */
	obj_t BGl_z62restorezd2valuezd2typesz12z70zzast_envz00(obj_t BgL_envz00_2672,
		obj_t BgL_valuez00_2673, obj_t BgL_idz00_2674)
	{
		{	/* Ast/venv.scm 153 */
			return
				BGl_restorezd2valuezd2typesz12z12zzast_envz00(
				((BgL_valuez00_bglt) BgL_valuez00_2673), BgL_idz00_2674);
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
				BGl_funz00zzast_varz00, BGl_proc1941z00zzast_envz00,
				BGl_string1942z00zzast_envz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
				BGl_sfunz00zzast_varz00, BGl_proc1943z00zzast_envz00,
				BGl_string1942z00zzast_envz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
				BGl_isfunz00zzinline_inlinez00, BGl_proc1944z00zzast_envz00,
				BGl_string1942z00zzast_envz00);
			return
				BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
				BGl_cfunz00zzast_varz00, BGl_proc1945z00zzast_envz00,
				BGl_string1942z00zzast_envz00);
		}

	}



/* &restore-value-types!1316 */
	obj_t BGl_z62restorezd2valuezd2typesz121316z70zzast_envz00(obj_t
		BgL_envz00_2679, obj_t BgL_valuez00_2680, obj_t BgL_idz00_2681)
	{
		{	/* Ast/venv.scm 208 */
			{	/* Ast/venv.scm 208 */
				bool_t BgL_tmpz00_3352;

				{

					{	/* Ast/venv.scm 208 */
						obj_t BgL_nextzd2method1315zd2_2724;

						BgL_nextzd2method1315zd2_2724 =
							BGl_findzd2superzd2classzd2methodzd2zz__objectz00(
							((BgL_objectz00_bglt)
								((BgL_cfunz00_bglt) BgL_valuez00_2680)),
							BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
							BGl_cfunz00zzast_varz00);
						(VA_PROCEDUREP(BgL_nextzd2method1315zd2_2724) ? ((obj_t(*)(obj_t,
										...))
								PROCEDURE_ENTRY(BgL_nextzd2method1315zd2_2724))
							(BgL_nextzd2method1315zd2_2724,
								((obj_t) ((BgL_cfunz00_bglt) BgL_valuez00_2680)),
								BgL_idz00_2681, BEOA) : ((obj_t(*)(obj_t, obj_t,
										obj_t))
								PROCEDURE_ENTRY(BgL_nextzd2method1315zd2_2724))
							(BgL_nextzd2method1315zd2_2724,
								((obj_t) ((BgL_cfunz00_bglt) BgL_valuez00_2680)),
								BgL_idz00_2681));
					}
					{
						obj_t BgL_argsz00_2726;

						BgL_argsz00_2726 =
							(((BgL_cfunz00_bglt) COBJECT(
									((BgL_cfunz00_bglt) BgL_valuez00_2680)))->BgL_argszd2typezd2);
					BgL_loopz00_2725:
						if (PAIRP(BgL_argsz00_2726))
							{	/* Ast/venv.scm 212 */
								if (
									((((BgL_typez00_bglt) COBJECT(
													((BgL_typez00_bglt)
														CAR(BgL_argsz00_2726))))->BgL_idz00) ==
										CNST_TABLE_REF(7L)))
									{	/* Ast/venv.scm 214 */
										BGl_userzd2warningzd2zztools_errorz00
											(BGl_string1946z00zzast_envz00,
											BGl_string1947z00zzast_envz00, BgL_idz00_2681);
										SET_CAR(BgL_argsz00_2726, BGl_za2objza2z00zztype_cachez00);
									}
								else
									{	/* Ast/venv.scm 220 */
										BgL_typez00_bglt BgL_arg1831z00_2727;

										{	/* Ast/venv.scm 220 */
											obj_t BgL_arg1832z00_2728;

											BgL_arg1832z00_2728 =
												(((BgL_typez00_bglt) COBJECT(
														((BgL_typez00_bglt)
															CAR(BgL_argsz00_2726))))->BgL_idz00);
											BgL_arg1831z00_2727 =
												BGl_findzd2typezd2zztype_envz00(BgL_arg1832z00_2728);
										}
										{	/* Ast/venv.scm 220 */
											obj_t BgL_tmpz00_3377;

											BgL_tmpz00_3377 = ((obj_t) BgL_arg1831z00_2727);
											SET_CAR(BgL_argsz00_2726, BgL_tmpz00_3377);
										}
									}
								{
									obj_t BgL_argsz00_3380;

									BgL_argsz00_3380 = CDR(BgL_argsz00_2726);
									BgL_argsz00_2726 = BgL_argsz00_3380;
									goto BgL_loopz00_2725;
								}
							}
						else
							{	/* Ast/venv.scm 212 */
								BgL_tmpz00_3352 = ((bool_t) 0);
							}
					}
				}
				return BBOOL(BgL_tmpz00_3352);
			}
		}

	}



/* &restore-value-types!1314 */
	obj_t BGl_z62restorezd2valuezd2typesz121314z70zzast_envz00(obj_t
		BgL_envz00_2682, obj_t BgL_valuez00_2683, obj_t BgL_idz00_2684)
	{
		{	/* Ast/venv.scm 201 */
			{

				{	/* Ast/venv.scm 201 */
					obj_t BgL_nextzd2method1313zd2_2731;

					BgL_nextzd2method1313zd2_2731 =
						BGl_findzd2superzd2classzd2methodzd2zz__objectz00(
						((BgL_objectz00_bglt)
							((BgL_sfunz00_bglt) BgL_valuez00_2683)),
						BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
						BGl_isfunz00zzinline_inlinez00);
					(VA_PROCEDUREP(BgL_nextzd2method1313zd2_2731) ? ((obj_t(*)(obj_t,
									...))
							PROCEDURE_ENTRY(BgL_nextzd2method1313zd2_2731))
						(BgL_nextzd2method1313zd2_2731,
							((obj_t) ((BgL_sfunz00_bglt) BgL_valuez00_2683)), BgL_idz00_2684,
							BEOA) : ((obj_t(*)(obj_t, obj_t,
									obj_t))
							PROCEDURE_ENTRY(BgL_nextzd2method1313zd2_2731))
						(BgL_nextzd2method1313zd2_2731,
							((obj_t) ((BgL_sfunz00_bglt) BgL_valuez00_2683)),
							BgL_idz00_2684));
				}
				{	/* Ast/venv.scm 203 */
					BgL_nodez00_bglt BgL_arg1824z00_2732;

					{
						BgL_isfunz00_bglt BgL_auxz00_3395;

						{
							obj_t BgL_auxz00_3396;

							{	/* Ast/venv.scm 203 */
								BgL_objectz00_bglt BgL_tmpz00_3397;

								BgL_tmpz00_3397 =
									((BgL_objectz00_bglt) ((BgL_sfunz00_bglt) BgL_valuez00_2683));
								BgL_auxz00_3396 = BGL_OBJECT_WIDENING(BgL_tmpz00_3397);
							}
							BgL_auxz00_3395 = ((BgL_isfunz00_bglt) BgL_auxz00_3396);
						}
						BgL_arg1824z00_2732 =
							(((BgL_isfunz00_bglt) COBJECT(BgL_auxz00_3395))->
							BgL_originalzd2bodyzd2);
					}
					return BGl_hrtypezd2nodez12zc0zzast_hrtypez00(BgL_arg1824z00_2732);
				}
			}
		}

	}



/* &restore-value-types!1312 */
	obj_t BGl_z62restorezd2valuezd2typesz121312z70zzast_envz00(obj_t
		BgL_envz00_2685, obj_t BgL_valuez00_2686, obj_t BgL_idz00_2687)
	{
		{	/* Ast/venv.scm 167 */
			{

				{	/* Ast/venv.scm 167 */
					obj_t BgL_nextzd2method1311zd2_2735;

					BgL_nextzd2method1311zd2_2735 =
						BGl_findzd2superzd2classzd2methodzd2zz__objectz00(
						((BgL_objectz00_bglt)
							((BgL_sfunz00_bglt) BgL_valuez00_2686)),
						BGl_restorezd2valuezd2typesz12zd2envzc0zzast_envz00,
						BGl_sfunz00zzast_varz00);
					(VA_PROCEDUREP(BgL_nextzd2method1311zd2_2735) ? ((obj_t(*)(obj_t,
									...))
							PROCEDURE_ENTRY(BgL_nextzd2method1311zd2_2735))
						(BgL_nextzd2method1311zd2_2735,
							((obj_t) ((BgL_sfunz00_bglt) BgL_valuez00_2686)), BgL_idz00_2687,
							BEOA) : ((obj_t(*)(obj_t, obj_t,
									obj_t))
							PROCEDURE_ENTRY(BgL_nextzd2method1311zd2_2735))
						(BgL_nextzd2method1311zd2_2735,
							((obj_t) ((BgL_sfunz00_bglt) BgL_valuez00_2686)),
							BgL_idz00_2687));
				}
				{
					obj_t BgL_argsz00_2737;

					BgL_argsz00_2737 =
						(((BgL_sfunz00_bglt) COBJECT(
								((BgL_sfunz00_bglt) BgL_valuez00_2686)))->BgL_argsz00);
				BgL_loopz00_2736:
					if (PAIRP(BgL_argsz00_2737))
						{	/* Ast/venv.scm 173 */
							obj_t BgL_argz00_2738;

							BgL_argz00_2738 = CAR(BgL_argsz00_2737);
							{	/* Ast/venv.scm 175 */
								bool_t BgL_test2060z00_3417;

								{	/* Ast/venv.scm 175 */
									obj_t BgL_classz00_2739;

									BgL_classz00_2739 = BGl_typez00zztype_typez00;
									if (BGL_OBJECTP(BgL_argz00_2738))
										{	/* Ast/venv.scm 175 */
											BgL_objectz00_bglt BgL_arg1801z00_2740;

											BgL_arg1801z00_2740 =
												(BgL_objectz00_bglt) (BgL_argz00_2738);
											if (BGL_CONDEXPAND_ISA_ARCH64())
												{	/* Ast/venv.scm 175 */
													long BgL_idxz00_2741;

													BgL_idxz00_2741 =
														BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2740);
													BgL_test2060z00_3417 =
														(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
															(BgL_idxz00_2741 + 1L)) == BgL_classz00_2739);
												}
											else
												{	/* Ast/venv.scm 175 */
													bool_t BgL_res1923z00_2744;

													{	/* Ast/venv.scm 175 */
														obj_t BgL_oclassz00_2745;

														{	/* Ast/venv.scm 175 */
															long BgL_arg1808z00_2746;

															{	/* Ast/venv.scm 175 */
																long BgL_arg1809z00_2747;

																BgL_arg1809z00_2747 =
																	BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2740);
																BgL_arg1808z00_2746 =
																	(BgL_arg1809z00_2747 - OBJECT_TYPE);
															}
															BgL_oclassz00_2745 =
																VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
																BgL_arg1808z00_2746);
														}
														{	/* Ast/venv.scm 175 */
															bool_t BgL__ortest_1115z00_2748;

															BgL__ortest_1115z00_2748 =
																(BgL_classz00_2739 == BgL_oclassz00_2745);
															if (BgL__ortest_1115z00_2748)
																{	/* Ast/venv.scm 175 */
																	BgL_res1923z00_2744 =
																		BgL__ortest_1115z00_2748;
																}
															else
																{	/* Ast/venv.scm 175 */
																	long BgL_odepthz00_2749;

																	BgL_odepthz00_2749 =
																		BGL_CLASS_DEPTH(BgL_oclassz00_2745);
																	if ((1L < BgL_odepthz00_2749))
																		{	/* Ast/venv.scm 175 */
																			obj_t BgL_arg1797z00_2750;

																			BgL_arg1797z00_2750 =
																				BGL_CLASS_ANCESTORS_REF
																				(BgL_oclassz00_2745, 1L);
																			BgL_res1923z00_2744 =
																				(BgL_arg1797z00_2750 ==
																				BgL_classz00_2739);
																		}
																	else
																		{	/* Ast/venv.scm 175 */
																			BgL_res1923z00_2744 = ((bool_t) 0);
																		}
																}
														}
													}
													BgL_test2060z00_3417 = BgL_res1923z00_2744;
												}
										}
									else
										{	/* Ast/venv.scm 175 */
											BgL_test2060z00_3417 = ((bool_t) 0);
										}
								}
								if (BgL_test2060z00_3417)
									{	/* Ast/venv.scm 176 */
										BgL_typez00_bglt BgL_arg1773z00_2751;

										{	/* Ast/venv.scm 176 */
											obj_t BgL_arg1776z00_2752;

											BgL_arg1776z00_2752 =
												(((BgL_typez00_bglt) COBJECT(
														((BgL_typez00_bglt) BgL_argz00_2738)))->BgL_idz00);
											BgL_arg1773z00_2751 =
												BGl_findzd2typezd2zztype_envz00(BgL_arg1776z00_2752);
										}
										{	/* Ast/venv.scm 176 */
											obj_t BgL_tmpz00_3440;

											BgL_tmpz00_3440 = ((obj_t) BgL_arg1773z00_2751);
											SET_CAR(BgL_argsz00_2737, BgL_tmpz00_3440);
										}
									}
								else
									{	/* Ast/venv.scm 177 */
										bool_t BgL_test2065z00_3443;

										{	/* Ast/venv.scm 177 */
											obj_t BgL_classz00_2753;

											BgL_classz00_2753 = BGl_localz00zzast_varz00;
											if (BGL_OBJECTP(BgL_argz00_2738))
												{	/* Ast/venv.scm 177 */
													BgL_objectz00_bglt BgL_arg1801z00_2754;

													BgL_arg1801z00_2754 =
														(BgL_objectz00_bglt) (BgL_argz00_2738);
													if (BGL_CONDEXPAND_ISA_ARCH64())
														{	/* Ast/venv.scm 177 */
															long BgL_idxz00_2755;

															BgL_idxz00_2755 =
																BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2754);
															BgL_test2065z00_3443 =
																(VECTOR_REF
																(BGl_za2inheritancesza2z00zz__objectz00,
																	(BgL_idxz00_2755 + 2L)) == BgL_classz00_2753);
														}
													else
														{	/* Ast/venv.scm 177 */
															bool_t BgL_res1924z00_2758;

															{	/* Ast/venv.scm 177 */
																obj_t BgL_oclassz00_2759;

																{	/* Ast/venv.scm 177 */
																	long BgL_arg1808z00_2760;

																	{	/* Ast/venv.scm 177 */
																		long BgL_arg1809z00_2761;

																		BgL_arg1809z00_2761 =
																			BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2754);
																		BgL_arg1808z00_2760 =
																			(BgL_arg1809z00_2761 - OBJECT_TYPE);
																	}
																	BgL_oclassz00_2759 =
																		VECTOR_REF
																		(BGl_za2classesza2z00zz__objectz00,
																		BgL_arg1808z00_2760);
																}
																{	/* Ast/venv.scm 177 */
																	bool_t BgL__ortest_1115z00_2762;

																	BgL__ortest_1115z00_2762 =
																		(BgL_classz00_2753 == BgL_oclassz00_2759);
																	if (BgL__ortest_1115z00_2762)
																		{	/* Ast/venv.scm 177 */
																			BgL_res1924z00_2758 =
																				BgL__ortest_1115z00_2762;
																		}
																	else
																		{	/* Ast/venv.scm 177 */
																			long BgL_odepthz00_2763;

																			BgL_odepthz00_2763 =
																				BGL_CLASS_DEPTH(BgL_oclassz00_2759);
																			if ((2L < BgL_odepthz00_2763))
																				{	/* Ast/venv.scm 177 */
																					obj_t BgL_arg1797z00_2764;

																					BgL_arg1797z00_2764 =
																						BGL_CLASS_ANCESTORS_REF
																						(BgL_oclassz00_2759, 2L);
																					BgL_res1924z00_2758 =
																						(BgL_arg1797z00_2764 ==
																						BgL_classz00_2753);
																				}
																			else
																				{	/* Ast/venv.scm 177 */
																					BgL_res1924z00_2758 = ((bool_t) 0);
																				}
																		}
																}
															}
															BgL_test2065z00_3443 = BgL_res1924z00_2758;
														}
												}
											else
												{	/* Ast/venv.scm 177 */
													BgL_test2065z00_3443 = ((bool_t) 0);
												}
										}
										if (BgL_test2065z00_3443)
											{	/* Ast/venv.scm 178 */
												BgL_typez00_bglt BgL_newzd2typezd2_2765;

												{	/* Ast/venv.scm 178 */
													obj_t BgL_arg1793z00_2766;

													BgL_arg1793z00_2766 =
														(((BgL_typez00_bglt) COBJECT(
																(((BgL_variablez00_bglt) COBJECT(
																			((BgL_variablez00_bglt)
																				((BgL_localz00_bglt)
																					BgL_argz00_2738))))->BgL_typez00)))->
														BgL_idz00);
													BgL_newzd2typezd2_2765 =
														BGl_findzd2typezd2zztype_envz00
														(BgL_arg1793z00_2766);
												}
												((((BgL_variablez00_bglt) COBJECT(
																((BgL_variablez00_bglt)
																	((BgL_localz00_bglt) BgL_argz00_2738))))->
														BgL_typez00) =
													((BgL_typez00_bglt) BgL_newzd2typezd2_2765), BUNSPEC);
											}
										else
											{	/* Ast/venv.scm 177 */
												BGl_errorz00zz__errorz00(BGl_string1948z00zzast_envz00,
													BGl_string1949z00zzast_envz00,
													BGl_shapez00zztools_shapez00(BgL_argz00_2738));
											}
									}
							}
							{
								obj_t BgL_argsz00_3473;

								BgL_argsz00_3473 = CDR(BgL_argsz00_2737);
								BgL_argsz00_2737 = BgL_argsz00_3473;
								goto BgL_loopz00_2736;
							}
						}
					else
						{	/* Ast/venv.scm 172 */
							if (NULLP(BgL_argsz00_2737))
								{	/* Ast/venv.scm 186 */
									obj_t BgL_bodyz00_2767;

									BgL_bodyz00_2767 =
										(((BgL_sfunz00_bglt) COBJECT(
												((BgL_sfunz00_bglt) BgL_valuez00_2686)))->BgL_bodyz00);
									{	/* Ast/venv.scm 188 */
										bool_t BgL_test2071z00_3479;

										{	/* Ast/venv.scm 188 */
											obj_t BgL_classz00_2768;

											BgL_classz00_2768 = BGl_nodez00zzast_nodez00;
											if (BGL_OBJECTP(BgL_bodyz00_2767))
												{	/* Ast/venv.scm 188 */
													BgL_objectz00_bglt BgL_arg1801z00_2769;

													BgL_arg1801z00_2769 =
														(BgL_objectz00_bglt) (BgL_bodyz00_2767);
													if (BGL_CONDEXPAND_ISA_ARCH64())
														{	/* Ast/venv.scm 188 */
															long BgL_idxz00_2770;

															BgL_idxz00_2770 =
																BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2769);
															BgL_test2071z00_3479 =
																(VECTOR_REF
																(BGl_za2inheritancesza2z00zz__objectz00,
																	(BgL_idxz00_2770 + 1L)) == BgL_classz00_2768);
														}
													else
														{	/* Ast/venv.scm 188 */
															bool_t BgL_res1925z00_2773;

															{	/* Ast/venv.scm 188 */
																obj_t BgL_oclassz00_2774;

																{	/* Ast/venv.scm 188 */
																	long BgL_arg1808z00_2775;

																	{	/* Ast/venv.scm 188 */
																		long BgL_arg1809z00_2776;

																		BgL_arg1809z00_2776 =
																			BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2769);
																		BgL_arg1808z00_2775 =
																			(BgL_arg1809z00_2776 - OBJECT_TYPE);
																	}
																	BgL_oclassz00_2774 =
																		VECTOR_REF
																		(BGl_za2classesza2z00zz__objectz00,
																		BgL_arg1808z00_2775);
																}
																{	/* Ast/venv.scm 188 */
																	bool_t BgL__ortest_1115z00_2777;

																	BgL__ortest_1115z00_2777 =
																		(BgL_classz00_2768 == BgL_oclassz00_2774);
																	if (BgL__ortest_1115z00_2777)
																		{	/* Ast/venv.scm 188 */
																			BgL_res1925z00_2773 =
																				BgL__ortest_1115z00_2777;
																		}
																	else
																		{	/* Ast/venv.scm 188 */
																			long BgL_odepthz00_2778;

																			BgL_odepthz00_2778 =
																				BGL_CLASS_DEPTH(BgL_oclassz00_2774);
																			if ((1L < BgL_odepthz00_2778))
																				{	/* Ast/venv.scm 188 */
																					obj_t BgL_arg1797z00_2779;

																					BgL_arg1797z00_2779 =
																						BGL_CLASS_ANCESTORS_REF
																						(BgL_oclassz00_2774, 1L);
																					BgL_res1925z00_2773 =
																						(BgL_arg1797z00_2779 ==
																						BgL_classz00_2768);
																				}
																			else
																				{	/* Ast/venv.scm 188 */
																					BgL_res1925z00_2773 = ((bool_t) 0);
																				}
																		}
																}
															}
															BgL_test2071z00_3479 = BgL_res1925z00_2773;
														}
												}
											else
												{	/* Ast/venv.scm 188 */
													BgL_test2071z00_3479 = ((bool_t) 0);
												}
										}
										if (BgL_test2071z00_3479)
											{	/* Ast/venv.scm 189 */
												BgL_typez00_bglt BgL_tresz00_2780;

												BgL_tresz00_2780 =
													(((BgL_nodez00_bglt) COBJECT(
															((BgL_nodez00_bglt) BgL_bodyz00_2767)))->
													BgL_typez00);
												BGl_hrtypezd2nodez12zc0zzast_hrtypez00((
														(BgL_nodez00_bglt) BgL_bodyz00_2767));
												{	/* Ast/venv.scm 191 */
													bool_t BgL_test2076z00_3503;

													{	/* Ast/venv.scm 191 */
														obj_t BgL_classz00_2781;

														BgL_classz00_2781 = BGl_typez00zztype_typez00;
														{	/* Ast/venv.scm 191 */
															BgL_objectz00_bglt BgL_arg1801z00_2782;

															{	/* Ast/venv.scm 191 */
																obj_t BgL_tmpz00_3504;

																BgL_tmpz00_3504 =
																	((obj_t)
																	((BgL_objectz00_bglt) BgL_tresz00_2780));
																BgL_arg1801z00_2782 =
																	(BgL_objectz00_bglt) (BgL_tmpz00_3504);
															}
															if (BGL_CONDEXPAND_ISA_ARCH64())
																{	/* Ast/venv.scm 191 */
																	long BgL_idxz00_2783;

																	BgL_idxz00_2783 =
																		BGL_OBJECT_INHERITANCE_NUM
																		(BgL_arg1801z00_2782);
																	BgL_test2076z00_3503 =
																		(VECTOR_REF
																		(BGl_za2inheritancesza2z00zz__objectz00,
																			(BgL_idxz00_2783 + 1L)) ==
																		BgL_classz00_2781);
																}
															else
																{	/* Ast/venv.scm 191 */
																	bool_t BgL_res1926z00_2786;

																	{	/* Ast/venv.scm 191 */
																		obj_t BgL_oclassz00_2787;

																		{	/* Ast/venv.scm 191 */
																			long BgL_arg1808z00_2788;

																			{	/* Ast/venv.scm 191 */
																				long BgL_arg1809z00_2789;

																				BgL_arg1809z00_2789 =
																					BGL_OBJECT_CLASS_NUM
																					(BgL_arg1801z00_2782);
																				BgL_arg1808z00_2788 =
																					(BgL_arg1809z00_2789 - OBJECT_TYPE);
																			}
																			BgL_oclassz00_2787 =
																				VECTOR_REF
																				(BGl_za2classesza2z00zz__objectz00,
																				BgL_arg1808z00_2788);
																		}
																		{	/* Ast/venv.scm 191 */
																			bool_t BgL__ortest_1115z00_2790;

																			BgL__ortest_1115z00_2790 =
																				(BgL_classz00_2781 ==
																				BgL_oclassz00_2787);
																			if (BgL__ortest_1115z00_2790)
																				{	/* Ast/venv.scm 191 */
																					BgL_res1926z00_2786 =
																						BgL__ortest_1115z00_2790;
																				}
																			else
																				{	/* Ast/venv.scm 191 */
																					long BgL_odepthz00_2791;

																					BgL_odepthz00_2791 =
																						BGL_CLASS_DEPTH(BgL_oclassz00_2787);
																					if ((1L < BgL_odepthz00_2791))
																						{	/* Ast/venv.scm 191 */
																							obj_t BgL_arg1797z00_2792;

																							BgL_arg1797z00_2792 =
																								BGL_CLASS_ANCESTORS_REF
																								(BgL_oclassz00_2787, 1L);
																							BgL_res1926z00_2786 =
																								(BgL_arg1797z00_2792 ==
																								BgL_classz00_2781);
																						}
																					else
																						{	/* Ast/venv.scm 191 */
																							BgL_res1926z00_2786 =
																								((bool_t) 0);
																						}
																				}
																		}
																	}
																	BgL_test2076z00_3503 = BgL_res1926z00_2786;
																}
														}
													}
													if (BgL_test2076z00_3503)
														{	/* Ast/venv.scm 192 */
															BgL_typez00_bglt BgL_arg1816z00_2793;

															BgL_arg1816z00_2793 =
																BGl_findzd2typezd2zztype_envz00(
																(((BgL_typez00_bglt)
																		COBJECT(BgL_tresz00_2780))->BgL_idz00));
															return ((((BgL_nodez00_bglt)
																		COBJECT(((BgL_nodez00_bglt)
																				BgL_bodyz00_2767)))->BgL_typez00) =
																((BgL_typez00_bglt) BgL_arg1816z00_2793),
																BUNSPEC);
														}
													else
														{	/* Ast/venv.scm 191 */
															return BFALSE;
														}
												}
											}
										else
											{	/* Ast/venv.scm 188 */
												return BFALSE;
											}
									}
								}
							else
								{	/* Ast/venv.scm 185 */
									return
										BGl_errorz00zz__errorz00(BGl_string1950z00zzast_envz00,
										BGl_string1951z00zzast_envz00,
										BGl_shapez00zztools_shapez00(BgL_argsz00_2737));
								}
						}
				}
			}
		}

	}



/* &restore-value-types!1310 */
	obj_t BGl_z62restorezd2valuezd2typesz121310z70zzast_envz00(obj_t
		BgL_envz00_2688, obj_t BgL_valuez00_2689, obj_t BgL_idz00_2690)
	{
		{	/* Ast/venv.scm 159 */
			{	/* Ast/venv.scm 161 */
				bool_t BgL_test2080z00_3532;

				{	/* Ast/venv.scm 161 */
					obj_t BgL_arg1763z00_2795;

					BgL_arg1763z00_2795 =
						(((BgL_funz00_bglt) COBJECT(
								((BgL_funz00_bglt) BgL_valuez00_2689)))->BgL_predicatezd2ofzd2);
					{	/* Ast/venv.scm 161 */
						obj_t BgL_classz00_2796;

						BgL_classz00_2796 = BGl_typez00zztype_typez00;
						if (BGL_OBJECTP(BgL_arg1763z00_2795))
							{	/* Ast/venv.scm 161 */
								BgL_objectz00_bglt BgL_arg1801z00_2797;

								BgL_arg1801z00_2797 =
									(BgL_objectz00_bglt) (BgL_arg1763z00_2795);
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* Ast/venv.scm 161 */
										long BgL_idxz00_2798;

										BgL_idxz00_2798 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2797);
										BgL_test2080z00_3532 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_2798 + 1L)) == BgL_classz00_2796);
									}
								else
									{	/* Ast/venv.scm 161 */
										bool_t BgL_res1922z00_2801;

										{	/* Ast/venv.scm 161 */
											obj_t BgL_oclassz00_2802;

											{	/* Ast/venv.scm 161 */
												long BgL_arg1808z00_2803;

												{	/* Ast/venv.scm 161 */
													long BgL_arg1809z00_2804;

													BgL_arg1809z00_2804 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2797);
													BgL_arg1808z00_2803 =
														(BgL_arg1809z00_2804 - OBJECT_TYPE);
												}
												BgL_oclassz00_2802 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_2803);
											}
											{	/* Ast/venv.scm 161 */
												bool_t BgL__ortest_1115z00_2805;

												BgL__ortest_1115z00_2805 =
													(BgL_classz00_2796 == BgL_oclassz00_2802);
												if (BgL__ortest_1115z00_2805)
													{	/* Ast/venv.scm 161 */
														BgL_res1922z00_2801 = BgL__ortest_1115z00_2805;
													}
												else
													{	/* Ast/venv.scm 161 */
														long BgL_odepthz00_2806;

														BgL_odepthz00_2806 =
															BGL_CLASS_DEPTH(BgL_oclassz00_2802);
														if ((1L < BgL_odepthz00_2806))
															{	/* Ast/venv.scm 161 */
																obj_t BgL_arg1797z00_2807;

																BgL_arg1797z00_2807 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2802,
																	1L);
																BgL_res1922z00_2801 =
																	(BgL_arg1797z00_2807 == BgL_classz00_2796);
															}
														else
															{	/* Ast/venv.scm 161 */
																BgL_res1922z00_2801 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test2080z00_3532 = BgL_res1922z00_2801;
									}
							}
						else
							{	/* Ast/venv.scm 161 */
								BgL_test2080z00_3532 = ((bool_t) 0);
							}
					}
				}
				if (BgL_test2080z00_3532)
					{
						obj_t BgL_auxz00_3554;

						{	/* Ast/venv.scm 162 */
							obj_t BgL_arg1759z00_2808;

							BgL_arg1759z00_2808 =
								(((BgL_typez00_bglt) COBJECT(
										((BgL_typez00_bglt)
											(((BgL_funz00_bglt) COBJECT(
														((BgL_funz00_bglt) BgL_valuez00_2689)))->
												BgL_predicatezd2ofzd2))))->BgL_idz00);
							BgL_auxz00_3554 =
								((obj_t) BGl_findzd2typezd2zztype_envz00(BgL_arg1759z00_2808));
						}
						return
							((((BgL_funz00_bglt) COBJECT(
										((BgL_funz00_bglt) BgL_valuez00_2689)))->
								BgL_predicatezd2ofzd2) = ((obj_t) BgL_auxz00_3554), BUNSPEC);
					}
				else
					{	/* Ast/venv.scm 161 */
						return BFALSE;
					}
			}
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zzast_envz00(void)
	{
		{	/* Ast/venv.scm 14 */
			BGl_modulezd2initializa7ationz75zztools_shapez00(365925558L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzengine_paramz00(517137079L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zztools_errorz00(300504031L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zztype_typez00(515343395L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zztype_cachez00(346491734L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zztype_envz00(296457443L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzast_varz00(90839984L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzast_nodez00(469732712L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzast_hrtypez00(156957722L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzast_dumpz00(271707717L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzread_jvmz00(261574382L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzmodule_modulez00(158397907L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zztools_locationz00(462333240L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			BGl_modulezd2initializa7ationz75zzbackend_backendz00(216206620L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
			return
				BGl_modulezd2initializa7ationz75zzinline_inlinez00(20504962L,
				BSTRING_TO_STRING(BGl_string1952z00zzast_envz00));
		}

	}

#ifdef __cplusplus
}
#endif
