/*===========================================================================*/
/*   (BackEnd/cplib.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 BackEnd/cplib.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_BACKEND_CPLIB_TYPE_DEFINITIONS
#define BGL_BACKEND_CPLIB_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_scnstz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_nodez00;
		obj_t BgL_classz00;
		obj_t BgL_locz00;
	}               *BgL_scnstz00_bglt;

	typedef struct BgL_varz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_variablez00_bgl *BgL_variablez00;
	}             *BgL_varz00_bglt;

	typedef struct BgL_appz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		obj_t BgL_sidezd2effectzd2;
		obj_t BgL_keyz00;
		struct BgL_varz00_bgl *BgL_funz00;
		obj_t BgL_argsz00;
		obj_t BgL_stackablez00;
	}             *BgL_appz00_bglt;

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

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

	typedef struct BgL_wclassz00_bgl
	{
		obj_t BgL_itszd2classzd2;
	}                *BgL_wclassz00_bglt;

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


#endif													// BGL_BACKEND_CPLIB_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	extern obj_t BGl_modulezd2ze3qualifiedzd2typeze3zzread_jvmz00(obj_t);
	static obj_t BGl_z62getzd2declaredzd2classesz62zzbackend_cplibz00(obj_t);
	static obj_t BGl_requirezd2initializa7ationz75zzbackend_cplibz00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t
		BGl_qualifiedzd2wclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt);
	static obj_t
		BGl_z62getzd2declaredzd2globalzd2variableszb0zzbackend_cplibz00(obj_t,
		obj_t);
	static obj_t BGl_z62widezd2ze3chunkz53zzbackend_cplibz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_getzd2declaredzd2classesz00zzbackend_cplibz00(void);
	BGL_IMPORT obj_t BGl_za2classesza2z00zz__objectz00;
	BGL_EXPORTED_DECL obj_t
		BGl_getzd2declaredzd2fieldsz00zzbackend_cplibz00(BgL_typez00_bglt);
	extern obj_t BGl_tclassz00zzobject_classz00;
	extern bool_t BGl_widezd2classzf3z21zzobject_classz00(obj_t);
	static obj_t BGl_z62qualifiedzd2jclasszd2namez62zzbackend_cplibz00(obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_qualifiedzd2tclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt);
	extern obj_t BGl_sfunz00zzast_varz00;
	BGL_EXPORTED_DECL obj_t
		BGl_getzd2globalzd2variableszd2tozd2bezd2initializa7edz75zzbackend_cplibz00
		(obj_t);
	static obj_t BGl_toplevelzd2initzd2zzbackend_cplibz00(void);
	static obj_t BGl_z62globalzd2arityzb0zzbackend_cplibz00(obj_t, obj_t);
	static BgL_typez00_bglt BGl_z62getzd2itszd2superz62zzbackend_cplibz00(obj_t,
		obj_t);
	extern obj_t BGl_forzd2eachzd2globalz12z12zzast_envz00(obj_t, obj_t);
	BGL_IMPORT obj_t bigloo_module_mangle(obj_t, obj_t);
	extern obj_t BGl_internalzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t);
	static obj_t BGl_genericzd2initzd2zzbackend_cplibz00(void);
	BGL_IMPORT obj_t BGl_stringzd2copyzd2zz__r4_strings_6_7z00(obj_t);
	static obj_t BGl_z62qualifiedzd2wclasszd2namez62zzbackend_cplibz00(obj_t,
		obj_t);
	extern obj_t BGl_getzd2objectzd2typez00zztype_cachez00(void);
	static obj_t BGl_objectzd2initzd2zzbackend_cplibz00(void);
	extern obj_t BGl_widezd2chunkzd2classzd2idzd2zzobject_classz00(obj_t);
	extern obj_t BGl_shapez00zztools_shapez00(obj_t);
	BGL_IMPORT obj_t BGl_za2inheritancesza2z00zz__objectz00;
	extern obj_t BGl_findzd2javazd2classz00zzmodule_javaz00(obj_t);
	static obj_t BGl_z62qualifiedzd2tclasszd2namez62zzbackend_cplibz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t string_append_3(obj_t, obj_t, obj_t);
	BGL_IMPORT obj_t bgl_bignum_add(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_readz00zz__readerz00(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_methodzd2initzd2zzbackend_cplibz00(void);
	BGL_IMPORT obj_t bgl_bignum_sub(obj_t, obj_t);
	BGL_IMPORT obj_t string_append(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_getzd2declaredzd2globalzd2variableszd2zzbackend_cplibz00(obj_t);
	static obj_t
		BGl_z62forzd2eachzd2declaredzd2classeszb0zzbackend_cplibz00(obj_t, obj_t);
	BGL_IMPORT obj_t bgl_long_to_bignum(long);
	BGL_EXPORTED_DECL BgL_globalz00_bglt
		BGl_globalzd2entryzd2zzbackend_cplibz00(BgL_globalz00_bglt);
	static obj_t
		BGl_z62getzd2globalzd2variableszd2tozd2bezd2initializa7edz17zzbackend_cplibz00
		(obj_t, obj_t);
	static obj_t BGl_z62setzd2variablezd2namez12z70zzbackend_cplibz00(obj_t,
		obj_t);
	BGL_IMPORT bool_t BGl_bigloozd2needzd2manglingzf3zf3zz__biglooz00(obj_t);
	static obj_t BGl_z62resetzd2globalz12za2zzbackend_cplibz00(obj_t, obj_t);
	BGL_IMPORT obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	static obj_t
		BGl_qualifiedzd2realzd2tclasszd2namezd2zzbackend_cplibz00(BgL_typez00_bglt);
	BGL_EXPORTED_DECL BgL_typez00_bglt
		BGl_getzd2itszd2superz00zzbackend_cplibz00(BgL_typez00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_forzd2eachzd2declaredzd2classeszd2zzbackend_cplibz00(obj_t);
	extern obj_t BGl_wclassz00zzobject_classz00;
	BGL_EXPORTED_DECL obj_t
		BGl_modulezd2initializa7ationz75zzbackend_cplibz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzbackend_c_prototypez00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzmodule_javaz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzread_jvmz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzobject_slotsz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzobject_classz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcnst_nodez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztype_cachez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzast_envz00(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_typez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(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_symbols_6_4z00(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__structurez00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__osz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__biglooz00(long, char *);
	extern obj_t BGl_cfunz00zzast_varz00;
	static obj_t BGl_z62zc3z04anonymousza31712ze3ze5zzbackend_cplibz00(obj_t,
		obj_t);
	extern bool_t BGl_slotzd2virtualzf3z21zzobject_slotsz00(BgL_slotz00_bglt);
	BGL_IMPORT obj_t BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(long,
		long);
	extern obj_t BGl_localz00zzast_varz00;
	static obj_t BGl_cnstzd2initzd2zzbackend_cplibz00(void);
	static obj_t BGl_libraryzd2moduleszd2initz00zzbackend_cplibz00(void);
	extern bool_t
		BGl_requirezd2prototypezf3z21zzbackend_c_prototypez00(BgL_globalz00_bglt);
	static obj_t BGl_typezd2ze3classz31zzbackend_cplibz00(BgL_typez00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_globalzd2arityzd2zzbackend_cplibz00(BgL_globalz00_bglt);
	extern obj_t BGl_scnstz00zzast_varz00;
	static obj_t BGl_importedzd2moduleszd2initz00zzbackend_cplibz00(void);
	BGL_IMPORT obj_t BGl_prefixz00zz__osz00(obj_t);
	static obj_t BGl_gczd2rootszd2initz00zzbackend_cplibz00(void);
	static obj_t BGl_z62classzd2idzd2ze3typezd2namez53zzbackend_cplibz00(obj_t,
		obj_t, obj_t);
	static obj_t BGl_z62qualifiedzd2typezd2namez62zzbackend_cplibz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t bigloo_mangle(obj_t);
	static obj_t BGl_z62getzd2fieldzd2typez62zzbackend_cplibz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_widezd2ze3chunkz31zzbackend_cplibz00(BgL_typez00_bglt);
	extern BgL_typez00_bglt BGl_findzd2typezd2zztype_envz00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_resetzd2globalz12zc0zzbackend_cplibz00(BgL_globalz00_bglt);
	extern obj_t BGl_za2jvmzd2foreignzd2classzd2nameza2zd2zzengine_paramz00;
	static obj_t BGl_z62getzd2declaredzd2fieldsz62zzbackend_cplibz00(obj_t,
		obj_t);
	extern obj_t BGl_addzd2qualifiedzd2typez12z12zzread_jvmz00(obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_setzd2variablezd2namez12z12zzbackend_cplibz00(BgL_variablez00_bglt);
	static obj_t BGl_z62zc3z04anonymousza31680ze3ze5zzbackend_cplibz00(obj_t,
		obj_t);
	static BgL_globalz00_bglt BGl_z62globalzd2entryzb0zzbackend_cplibz00(obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_getzd2fieldzd2typez00zzbackend_cplibz00(BgL_slotz00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_classzd2idzd2ze3typezd2namez31zzbackend_cplibz00(obj_t, obj_t);
	extern obj_t BGl_getzd2classzd2listz00zzobject_classz00(void);
	extern obj_t BGl_globalz00zzast_varz00;
	BGL_EXPORTED_DECL obj_t
		BGl_qualifiedzd2typezd2namez00zzbackend_cplibz00(BgL_typez00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_qualifiedzd2jclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt);
	static obj_t __cnst[7];


	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2declaredzd2globalzd2variableszd2envz00zzbackend_cplibz00,
		BgL_bgl_za762getza7d2declare1893z00,
		BGl_z62getzd2declaredzd2globalzd2variableszb0zzbackend_cplibz00, 0L,
		BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_qualifiedzd2typezd2namezd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762qualifiedza7d2t1894z00,
		BGl_z62qualifiedzd2typezd2namez62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_resetzd2globalz12zd2envz12zzbackend_cplibz00,
		BgL_bgl_za762resetza7d2globa1895z00,
		BGl_z62resetzd2globalz12za2zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_qualifiedzd2tclasszd2namezd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762qualifiedza7d2t1896z00,
		BGl_z62qualifiedzd2tclasszd2namez62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_classzd2idzd2ze3typezd2namezd2envze3zzbackend_cplibz00,
		BgL_bgl_za762classza7d2idza7d21897za7,
		BGl_z62classzd2idzd2ze3typezd2namez53zzbackend_cplibz00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_widezd2ze3chunkzd2envze3zzbackend_cplibz00,
		BgL_bgl_za762wideza7d2za7e3chu1898za7,
		BGl_z62widezd2ze3chunkz53zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_globalzd2entryzd2envz00zzbackend_cplibz00,
		BgL_bgl_za762globalza7d2entr1899z00,
		BGl_z62globalzd2entryzb0zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2globalzd2variableszd2tozd2bezd2initializa7edzd2envza7zzbackend_cplibz00,
		BgL_bgl_za762getza7d2globalza71900za7,
		BGl_z62getzd2globalzd2variableszd2tozd2bezd2initializa7edz17zzbackend_cplibz00,
		0L, BUNSPEC, 1);
	      DEFINE_STRING(BGl_string1877z00zzbackend_cplibz00,
		BgL_bgl_string1877za700za7za7b1901za7, "_K", 2);
	      DEFINE_STRING(BGl_string1878z00zzbackend_cplibz00,
		BgL_bgl_string1878za700za7za7b1902za7, "object", 6);
	      DEFINE_STRING(BGl_string1879z00zzbackend_cplibz00,
		BgL_bgl_string1879za700za7za7b1903za7, "", 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_qualifiedzd2wclasszd2namezd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762qualifiedza7d2w1904z00,
		BGl_z62qualifiedzd2wclasszd2namez62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_globalzd2arityzd2envz00zzbackend_cplibz00,
		BgL_bgl_za762globalza7d2arit1905z00,
		BGl_z62globalzd2arityzb0zzbackend_cplibz00, 0L, BUNSPEC, 1);
	      DEFINE_STRING(BGl_string1880z00zzbackend_cplibz00,
		BgL_bgl_string1880za700za7za7b1906za7, "bigloo", 6);
	      DEFINE_STRING(BGl_string1881z00zzbackend_cplibz00,
		BgL_bgl_string1881za700za7za7b1907za7, ".", 1);
	      DEFINE_STRING(BGl_string1882z00zzbackend_cplibz00,
		BgL_bgl_string1882za700za7za7b1908za7, "bigloo.", 7);
	      DEFINE_STRING(BGl_string1883z00zzbackend_cplibz00,
		BgL_bgl_string1883za700za7za7b1909za7, "_", 1);
	      DEFINE_STRING(BGl_string1884z00zzbackend_cplibz00,
		BgL_bgl_string1884za700za7za7b1910za7, "set-variable-name!", 18);
	      DEFINE_STRING(BGl_string1885z00zzbackend_cplibz00,
		BgL_bgl_string1885za700za7za7b1911za7, "Unknown variable king", 21);
	      DEFINE_STRING(BGl_string1886z00zzbackend_cplibz00,
		BgL_bgl_string1886za700za7za7b1912za7, "Illegal type", 12);
	      DEFINE_STRING(BGl_string1887z00zzbackend_cplibz00,
		BgL_bgl_string1887za700za7za7b1913za7, "wide-chunk", 10);
	      DEFINE_STRING(BGl_string1888z00zzbackend_cplibz00,
		BgL_bgl_string1888za700za7za7b1914za7, "internal error", 14);
	      DEFINE_STRING(BGl_string1889z00zzbackend_cplibz00,
		BgL_bgl_string1889za700za7za7b1915za7, "backend_cplib", 13);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2declaredzd2classeszd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762getza7d2declare1916z00,
		BGl_z62getzd2declaredzd2classesz62zzbackend_cplibz00, 0L, BUNSPEC, 0);
	      DEFINE_STRING(BGl_string1890z00zzbackend_cplibz00,
		BgL_bgl_string1890za700za7za7b1917za7,
		"__cnsts_table get-declared-fields import #z1 stvector foreign obj ", 66);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_setzd2variablezd2namez12zd2envzc0zzbackend_cplibz00,
		BgL_bgl_za762setza7d2variabl1918z00,
		BGl_z62setzd2variablezd2namez12z70zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2itszd2superzd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762getza7d2itsza7d2s1919za7,
		BGl_z62getzd2itszd2superz62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_forzd2eachzd2declaredzd2classeszd2envz00zzbackend_cplibz00,
		BgL_bgl_za762forza7d2eachza7d21920za7,
		BGl_z62forzd2eachzd2declaredzd2classeszb0zzbackend_cplibz00, 0L, BUNSPEC,
		1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2declaredzd2fieldszd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762getza7d2declare1921z00,
		BGl_z62getzd2declaredzd2fieldsz62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_qualifiedzd2jclasszd2namezd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762qualifiedza7d2j1922z00,
		BGl_z62qualifiedzd2jclasszd2namez62zzbackend_cplibz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_getzd2fieldzd2typezd2envzd2zzbackend_cplibz00,
		BgL_bgl_za762getza7d2fieldza7d1923za7,
		BGl_z62getzd2fieldzd2typez62zzbackend_cplibz00, 0L, BUNSPEC, 1);

/* GC roots registration */
	static obj_t bgl_gc_roots_register()
	{
#if defined( BGL_GC_ROOTS )
#define ADD_ROOT( addr ) (addr > roots_max ? roots_max = addr : (addr < roots_min ? roots_min = addr : 0))
		void *roots_min = (void *) ULONG_MAX, *roots_max = 0;
		   
			 ADD_ROOT((void
				*) (&BGl_requirezd2initializa7ationz75zzbackend_cplibz00));
#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_modulezd2initializa7ationz75zzbackend_cplibz00(long
		BgL_checksumz00_2916, char *BgL_fromz00_2917)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zzbackend_cplibz00))
				{
					BGl_requirezd2initializa7ationz75zzbackend_cplibz00 =
						BBOOL(((bool_t) 0));
					BGl_gczd2rootszd2initz00zzbackend_cplibz00();
					BGl_libraryzd2moduleszd2initz00zzbackend_cplibz00();
					BGl_cnstzd2initzd2zzbackend_cplibz00();
					BGl_importedzd2moduleszd2initz00zzbackend_cplibz00();
					return BGl_toplevelzd2initzd2zzbackend_cplibz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* library-modules-init */
	obj_t BGl_libraryzd2moduleszd2initz00zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			BGl_modulezd2initializa7ationz75zz__objectz00(0L, "backend_cplib");
			BGl_modulezd2initializa7ationz75zz__biglooz00(0L, "backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__readerz00(0L, "backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__errorz00(0L, "backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__osz00(0L, "backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(0L,
				"backend_cplib");
			BGl_modulezd2initializa7ationz75zz__structurez00(0L, "backend_cplib");
			return BUNSPEC;
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			{	/* BackEnd/cplib.scm 15 */
				obj_t BgL_cportz00_2864;

				{	/* BackEnd/cplib.scm 15 */
					obj_t BgL_stringz00_2871;

					BgL_stringz00_2871 = BGl_string1890z00zzbackend_cplibz00;
					{	/* BackEnd/cplib.scm 15 */
						obj_t BgL_startz00_2872;

						BgL_startz00_2872 = BINT(0L);
						{	/* BackEnd/cplib.scm 15 */
							obj_t BgL_endz00_2873;

							BgL_endz00_2873 =
								BINT(STRING_LENGTH(((obj_t) BgL_stringz00_2871)));
							{	/* BackEnd/cplib.scm 15 */

								BgL_cportz00_2864 =
									BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00
									(BgL_stringz00_2871, BgL_startz00_2872, BgL_endz00_2873);
				}}}}
				{
					long BgL_iz00_2865;

					BgL_iz00_2865 = 6L;
				BgL_loopz00_2866:
					if ((BgL_iz00_2865 == -1L))
						{	/* BackEnd/cplib.scm 15 */
							return BUNSPEC;
						}
					else
						{	/* BackEnd/cplib.scm 15 */
							{	/* BackEnd/cplib.scm 15 */
								obj_t BgL_arg1892z00_2867;

								{	/* BackEnd/cplib.scm 15 */

									{	/* BackEnd/cplib.scm 15 */
										obj_t BgL_locationz00_2869;

										BgL_locationz00_2869 = BBOOL(((bool_t) 0));
										{	/* BackEnd/cplib.scm 15 */

											BgL_arg1892z00_2867 =
												BGl_readz00zz__readerz00(BgL_cportz00_2864,
												BgL_locationz00_2869);
										}
									}
								}
								{	/* BackEnd/cplib.scm 15 */
									int BgL_tmpz00_2948;

									BgL_tmpz00_2948 = (int) (BgL_iz00_2865);
									CNST_TABLE_SET(BgL_tmpz00_2948, BgL_arg1892z00_2867);
							}}
							{	/* BackEnd/cplib.scm 15 */
								int BgL_auxz00_2870;

								BgL_auxz00_2870 = (int) ((BgL_iz00_2865 - 1L));
								{
									long BgL_iz00_2953;

									BgL_iz00_2953 = (long) (BgL_auxz00_2870);
									BgL_iz00_2865 = BgL_iz00_2953;
									goto BgL_loopz00_2866;
								}
							}
						}
				}
			}
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			return BUNSPEC;
		}

	}



/* class-id->type-name */
	BGL_EXPORTED_DEF obj_t
		BGl_classzd2idzd2ze3typezd2namez31zzbackend_cplibz00(obj_t BgL_cidz00_13,
		obj_t BgL_midz00_14)
	{
		{	/* BackEnd/cplib.scm 56 */
			{	/* BackEnd/cplib.scm 57 */
				obj_t BgL_idz00_2059;

				{	/* BackEnd/cplib.scm 57 */
					obj_t BgL_arg1289z00_2060;
					obj_t BgL_arg1291z00_2061;

					{	/* BackEnd/cplib.scm 57 */
						obj_t BgL_arg1454z00_2063;

						BgL_arg1454z00_2063 = SYMBOL_TO_STRING(BgL_cidz00_13);
						BgL_arg1289z00_2060 =
							BGl_stringzd2copyzd2zz__r4_strings_6_7z00(BgL_arg1454z00_2063);
					}
					{	/* BackEnd/cplib.scm 57 */
						obj_t BgL_arg1454z00_2065;

						BgL_arg1454z00_2065 = SYMBOL_TO_STRING(BgL_midz00_14);
						BgL_arg1291z00_2061 =
							BGl_stringzd2copyzd2zz__r4_strings_6_7z00(BgL_arg1454z00_2065);
					}
					BgL_idz00_2059 =
						bigloo_module_mangle(BgL_arg1289z00_2060, BgL_arg1291z00_2061);
				}
				return
					string_append(BGl_string1877z00zzbackend_cplibz00, BgL_idz00_2059);
			}
		}

	}



/* &class-id->type-name */
	obj_t BGl_z62classzd2idzd2ze3typezd2namez53zzbackend_cplibz00(obj_t
		BgL_envz00_2813, obj_t BgL_cidz00_2814, obj_t BgL_midz00_2815)
	{
		{	/* BackEnd/cplib.scm 56 */
			return
				BGl_classzd2idzd2ze3typezd2namez31zzbackend_cplibz00(BgL_cidz00_2814,
				BgL_midz00_2815);
		}

	}



/* qualified-real-tclass-name */
	obj_t
		BGl_qualifiedzd2realzd2tclasszd2namezd2zzbackend_cplibz00(BgL_typez00_bglt
		BgL_classz00_15)
	{
		{	/* BackEnd/cplib.scm 63 */
			{
				BgL_typez00_bglt BgL_superz00_1677;
				obj_t BgL_namez00_1672;
				BgL_typez00_bglt BgL_classz00_1663;

				{	/* BackEnd/cplib.scm 97 */
					obj_t BgL_arg1292z00_1657;
					obj_t BgL_arg1294z00_1658;

					BgL_superz00_1677 = BgL_classz00_15;
					{	/* BackEnd/cplib.scm 87 */
						bool_t BgL_test1926z00_2963;

						{	/* BackEnd/cplib.scm 87 */
							bool_t BgL_test1927z00_2964;

							{	/* BackEnd/cplib.scm 87 */
								obj_t BgL_arg1374z00_1703;

								{
									BgL_tclassz00_bglt BgL_auxz00_2965;

									{
										obj_t BgL_auxz00_2966;

										{	/* BackEnd/cplib.scm 87 */
											BgL_objectz00_bglt BgL_tmpz00_2967;

											BgL_tmpz00_2967 =
												((BgL_objectz00_bglt) BgL_superz00_1677);
											BgL_auxz00_2966 = BGL_OBJECT_WIDENING(BgL_tmpz00_2967);
										}
										BgL_auxz00_2965 = ((BgL_tclassz00_bglt) BgL_auxz00_2966);
									}
									BgL_arg1374z00_1703 =
										(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_2965))->
										BgL_itszd2superzd2);
								}
								{	/* BackEnd/cplib.scm 87 */
									obj_t BgL_classz00_2101;

									BgL_classz00_2101 = BGl_tclassz00zzobject_classz00;
									if (BGL_OBJECTP(BgL_arg1374z00_1703))
										{	/* BackEnd/cplib.scm 87 */
											BgL_objectz00_bglt BgL_arg1801z00_2103;

											BgL_arg1801z00_2103 =
												(BgL_objectz00_bglt) (BgL_arg1374z00_1703);
											if (BGL_CONDEXPAND_ISA_ARCH64())
												{	/* BackEnd/cplib.scm 87 */
													long BgL_idxz00_2109;

													BgL_idxz00_2109 =
														BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2103);
													BgL_test1927z00_2964 =
														(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
															(BgL_idxz00_2109 + 2L)) == BgL_classz00_2101);
												}
											else
												{	/* BackEnd/cplib.scm 87 */
													bool_t BgL_res1858z00_2131;

													{	/* BackEnd/cplib.scm 87 */
														obj_t BgL_oclassz00_2117;

														{	/* BackEnd/cplib.scm 87 */
															long BgL_arg1808z00_2123;

															{	/* BackEnd/cplib.scm 87 */
																long BgL_arg1809z00_2124;

																BgL_arg1809z00_2124 =
																	BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2103);
																BgL_arg1808z00_2123 =
																	(BgL_arg1809z00_2124 - OBJECT_TYPE);
															}
															BgL_oclassz00_2117 =
																VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
																BgL_arg1808z00_2123);
														}
														{	/* BackEnd/cplib.scm 87 */
															bool_t BgL__ortest_1115z00_2118;

															BgL__ortest_1115z00_2118 =
																(BgL_classz00_2101 == BgL_oclassz00_2117);
															if (BgL__ortest_1115z00_2118)
																{	/* BackEnd/cplib.scm 87 */
																	BgL_res1858z00_2131 =
																		BgL__ortest_1115z00_2118;
																}
															else
																{	/* BackEnd/cplib.scm 87 */
																	long BgL_odepthz00_2119;

																	BgL_odepthz00_2119 =
																		BGL_CLASS_DEPTH(BgL_oclassz00_2117);
																	if ((2L < BgL_odepthz00_2119))
																		{	/* BackEnd/cplib.scm 87 */
																			obj_t BgL_arg1797z00_2121;

																			BgL_arg1797z00_2121 =
																				BGL_CLASS_ANCESTORS_REF
																				(BgL_oclassz00_2117, 2L);
																			BgL_res1858z00_2131 =
																				(BgL_arg1797z00_2121 ==
																				BgL_classz00_2101);
																		}
																	else
																		{	/* BackEnd/cplib.scm 87 */
																			BgL_res1858z00_2131 = ((bool_t) 0);
																		}
																}
														}
													}
													BgL_test1927z00_2964 = BgL_res1858z00_2131;
												}
										}
									else
										{	/* BackEnd/cplib.scm 87 */
											BgL_test1927z00_2964 = ((bool_t) 0);
										}
								}
							}
							if (BgL_test1927z00_2964)
								{	/* BackEnd/cplib.scm 88 */
									bool_t BgL_test1932z00_2991;

									{	/* BackEnd/cplib.scm 88 */
										obj_t BgL_arg1373z00_1702;

										{
											BgL_tclassz00_bglt BgL_auxz00_2992;

											{
												obj_t BgL_auxz00_2993;

												{	/* BackEnd/cplib.scm 88 */
													BgL_objectz00_bglt BgL_tmpz00_2994;

													BgL_tmpz00_2994 =
														((BgL_objectz00_bglt) BgL_superz00_1677);
													BgL_auxz00_2993 =
														BGL_OBJECT_WIDENING(BgL_tmpz00_2994);
												}
												BgL_auxz00_2992 =
													((BgL_tclassz00_bglt) BgL_auxz00_2993);
											}
											BgL_arg1373z00_1702 =
												(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_2992))->
												BgL_itszd2superzd2);
										}
										BgL_test1932z00_2991 =
											(((obj_t) BgL_superz00_1677) == BgL_arg1373z00_1702);
									}
									if (BgL_test1932z00_2991)
										{	/* BackEnd/cplib.scm 89 */
											bool_t BgL_test1933z00_3001;

											{	/* BackEnd/cplib.scm 89 */
												obj_t BgL_arg1369z00_1700;

												{	/* BackEnd/cplib.scm 89 */
													obj_t BgL_arg1372z00_1701;

													{
														BgL_tclassz00_bglt BgL_auxz00_3002;

														{
															obj_t BgL_auxz00_3003;

															{	/* BackEnd/cplib.scm 89 */
																BgL_objectz00_bglt BgL_tmpz00_3004;

																BgL_tmpz00_3004 =
																	((BgL_objectz00_bglt) BgL_superz00_1677);
																BgL_auxz00_3003 =
																	BGL_OBJECT_WIDENING(BgL_tmpz00_3004);
															}
															BgL_auxz00_3002 =
																((BgL_tclassz00_bglt) BgL_auxz00_3003);
														}
														BgL_arg1372z00_1701 =
															(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3002))->
															BgL_itszd2superzd2);
													}
													BgL_arg1369z00_1700 =
														(((BgL_typez00_bglt) COBJECT(
																((BgL_typez00_bglt) BgL_arg1372z00_1701)))->
														BgL_idz00);
												}
												BgL_test1933z00_3001 =
													(BgL_arg1369z00_1700 == CNST_TABLE_REF(0L));
											}
											if (BgL_test1933z00_3001)
												{	/* BackEnd/cplib.scm 89 */
													BgL_test1926z00_2963 = ((bool_t) 0);
												}
											else
												{	/* BackEnd/cplib.scm 89 */
													BgL_test1926z00_2963 = ((bool_t) 1);
												}
										}
									else
										{	/* BackEnd/cplib.scm 88 */
											BgL_test1926z00_2963 = ((bool_t) 0);
										}
								}
							else
								{	/* BackEnd/cplib.scm 87 */
									BgL_test1926z00_2963 = ((bool_t) 1);
								}
						}
						if (BgL_test1926z00_2963)
							{	/* BackEnd/cplib.scm 87 */
								BgL_arg1292z00_1657 = BGl_string1880z00zzbackend_cplibz00;
							}
						else
							{	/* BackEnd/cplib.scm 91 */
								BgL_globalz00_bglt BgL_holderz00_1691;

								{
									BgL_tclassz00_bglt BgL_auxz00_3013;

									{
										obj_t BgL_auxz00_3014;

										{	/* BackEnd/cplib.scm 91 */
											BgL_objectz00_bglt BgL_tmpz00_3015;

											BgL_tmpz00_3015 =
												((BgL_objectz00_bglt) BgL_superz00_1677);
											BgL_auxz00_3014 = BGL_OBJECT_WIDENING(BgL_tmpz00_3015);
										}
										BgL_auxz00_3013 = ((BgL_tclassz00_bglt) BgL_auxz00_3014);
									}
									BgL_holderz00_1691 =
										(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3013))->
										BgL_holderz00);
								}
								{	/* BackEnd/cplib.scm 92 */
									obj_t BgL_arg1354z00_1692;
									obj_t BgL_arg1361z00_1693;
									obj_t BgL_arg1363z00_1694;

									BgL_arg1354z00_1692 =
										(((BgL_globalz00_bglt) COBJECT(BgL_holderz00_1691))->
										BgL_modulez00);
									BgL_arg1361z00_1693 =
										(((BgL_globalz00_bglt) COBJECT(BgL_holderz00_1691))->
										BgL_jvmzd2typezd2namez00);
									BgL_arg1363z00_1694 =
										(((BgL_typez00_bglt) COBJECT(((BgL_typez00_bglt)
													BgL_superz00_1677)))->BgL_idz00);
									{	/* BackEnd/cplib.scm 92 */
										obj_t BgL_list1364z00_1695;

										BgL_list1364z00_1695 =
											MAKE_YOUNG_PAIR(BgL_arg1363z00_1694, BNIL);
										BGl_addzd2qualifiedzd2typez12z12zzread_jvmz00
											(BgL_arg1354z00_1692, BgL_arg1361z00_1693,
											BgL_list1364z00_1695);
									}
								}
								BgL_namez00_1672 =
									(((BgL_globalz00_bglt) COBJECT(BgL_holderz00_1691))->
									BgL_modulez00);
								{	/* BackEnd/cplib.scm 79 */
									obj_t BgL_sz00_1674;

									BgL_sz00_1674 =
										BGl_modulezd2ze3qualifiedzd2typeze3zzread_jvmz00
										(BgL_namez00_1672);
									{	/* BackEnd/cplib.scm 79 */
										obj_t BgL_prefz00_1675;

										BgL_prefz00_1675 = BGl_prefixz00zz__osz00(BgL_sz00_1674);
										{	/* BackEnd/cplib.scm 80 */

											{	/* BackEnd/cplib.scm 81 */
												bool_t BgL_test1934z00_3028;

												{	/* BackEnd/cplib.scm 81 */
													long BgL_l1z00_2091;

													BgL_l1z00_2091 = STRING_LENGTH(BgL_prefz00_1675);
													if ((BgL_l1z00_2091 == STRING_LENGTH(BgL_sz00_1674)))
														{	/* BackEnd/cplib.scm 81 */
															int BgL_arg1303z00_2094;

															{	/* BackEnd/cplib.scm 81 */
																char *BgL_auxz00_3035;
																char *BgL_tmpz00_3033;

																BgL_auxz00_3035 =
																	BSTRING_TO_STRING(BgL_sz00_1674);
																BgL_tmpz00_3033 =
																	BSTRING_TO_STRING(BgL_prefz00_1675);
																BgL_arg1303z00_2094 =
																	memcmp(BgL_tmpz00_3033, BgL_auxz00_3035,
																	BgL_l1z00_2091);
															}
															BgL_test1934z00_3028 =
																((long) (BgL_arg1303z00_2094) == 0L);
														}
													else
														{	/* BackEnd/cplib.scm 81 */
															BgL_test1934z00_3028 = ((bool_t) 0);
														}
												}
												if (BgL_test1934z00_3028)
													{	/* BackEnd/cplib.scm 81 */
														BgL_arg1292z00_1657 =
															BGl_string1879z00zzbackend_cplibz00;
													}
												else
													{	/* BackEnd/cplib.scm 81 */
														BgL_arg1292z00_1657 = BgL_prefz00_1675;
													}
											}
										}
									}
								}
							}
					}
					BgL_classz00_1663 = BgL_classz00_15;
					{	/* BackEnd/cplib.scm 72 */
						bool_t BgL_test1936z00_3041;

						{	/* BackEnd/cplib.scm 72 */
							obj_t BgL_arg1332z00_1671;

							BgL_arg1332z00_1671 = BGl_getzd2objectzd2typez00zztype_cachez00();
							BgL_test1936z00_3041 =
								(((obj_t) BgL_classz00_1663) == BgL_arg1332z00_1671);
						}
						if (BgL_test1936z00_3041)
							{	/* BackEnd/cplib.scm 72 */
								BgL_arg1294z00_1658 = BGl_string1878z00zzbackend_cplibz00;
							}
						else
							{	/* BackEnd/cplib.scm 75 */
								obj_t BgL_modz00_1668;

								{	/* BackEnd/cplib.scm 75 */
									BgL_globalz00_bglt BgL_arg1331z00_1670;

									{
										BgL_tclassz00_bglt BgL_auxz00_3045;

										{
											obj_t BgL_auxz00_3046;

											{	/* BackEnd/cplib.scm 75 */
												BgL_objectz00_bglt BgL_tmpz00_3047;

												BgL_tmpz00_3047 =
													((BgL_objectz00_bglt) BgL_classz00_1663);
												BgL_auxz00_3046 = BGL_OBJECT_WIDENING(BgL_tmpz00_3047);
											}
											BgL_auxz00_3045 = ((BgL_tclassz00_bglt) BgL_auxz00_3046);
										}
										BgL_arg1331z00_1670 =
											(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3045))->
											BgL_holderz00);
									}
									BgL_modz00_1668 =
										(((BgL_globalz00_bglt) COBJECT(BgL_arg1331z00_1670))->
										BgL_modulez00);
								}
								{	/* BackEnd/cplib.scm 76 */
									obj_t BgL_arg1330z00_1669;

									BgL_arg1330z00_1669 =
										(((BgL_typez00_bglt) COBJECT(
												((BgL_typez00_bglt) BgL_classz00_1663)))->BgL_idz00);
									{	/* BackEnd/cplib.scm 57 */
										obj_t BgL_idz00_2082;

										{	/* BackEnd/cplib.scm 57 */
											obj_t BgL_arg1289z00_2083;
											obj_t BgL_arg1291z00_2084;

											{	/* BackEnd/cplib.scm 57 */
												obj_t BgL_arg1454z00_2086;

												BgL_arg1454z00_2086 =
													SYMBOL_TO_STRING(BgL_arg1330z00_1669);
												BgL_arg1289z00_2083 =
													BGl_stringzd2copyzd2zz__r4_strings_6_7z00
													(BgL_arg1454z00_2086);
											}
											{	/* BackEnd/cplib.scm 57 */
												obj_t BgL_arg1454z00_2088;

												BgL_arg1454z00_2088 = SYMBOL_TO_STRING(BgL_modz00_1668);
												BgL_arg1291z00_2084 =
													BGl_stringzd2copyzd2zz__r4_strings_6_7z00
													(BgL_arg1454z00_2088);
											}
											BgL_idz00_2082 =
												bigloo_module_mangle(BgL_arg1289z00_2083,
												BgL_arg1291z00_2084);
										}
										BgL_arg1294z00_1658 =
											string_append(BGl_string1877z00zzbackend_cplibz00,
											BgL_idz00_2082);
									}
								}
							}
					}
					{	/* BackEnd/cplib.scm 67 */
						bool_t BgL_test1937z00_3061;

						{	/* BackEnd/cplib.scm 67 */
							long BgL_l1z00_2143;

							BgL_l1z00_2143 = STRING_LENGTH(BgL_arg1292z00_1657);
							if ((BgL_l1z00_2143 == 0L))
								{	/* BackEnd/cplib.scm 67 */
									int BgL_arg1303z00_2146;

									{	/* BackEnd/cplib.scm 67 */
										char *BgL_auxz00_3067;
										char *BgL_tmpz00_3065;

										BgL_auxz00_3067 =
											BSTRING_TO_STRING(BGl_string1879z00zzbackend_cplibz00);
										BgL_tmpz00_3065 = BSTRING_TO_STRING(BgL_arg1292z00_1657);
										BgL_arg1303z00_2146 =
											memcmp(BgL_tmpz00_3065, BgL_auxz00_3067, BgL_l1z00_2143);
									}
									BgL_test1937z00_3061 = ((long) (BgL_arg1303z00_2146) == 0L);
								}
							else
								{	/* BackEnd/cplib.scm 67 */
									BgL_test1937z00_3061 = ((bool_t) 0);
								}
						}
						if (BgL_test1937z00_3061)
							{	/* BackEnd/cplib.scm 67 */
								return BgL_arg1294z00_1658;
							}
						else
							{	/* BackEnd/cplib.scm 67 */
								return
									string_append_3(BgL_arg1292z00_1657,
									BGl_string1881z00zzbackend_cplibz00, BgL_arg1294z00_1658);
							}
					}
				}
			}
		}

	}



/* qualified-tclass-name */
	BGL_EXPORTED_DEF obj_t
		BGl_qualifiedzd2tclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt
		BgL_classz00_16)
	{
		{	/* BackEnd/cplib.scm 102 */
			{	/* BackEnd/cplib.scm 103 */
				obj_t BgL_cz00_1708;

				if (BGl_widezd2classzf3z21zzobject_classz00(((obj_t) BgL_classz00_16)))
					{
						BgL_tclassz00_bglt BgL_auxz00_3076;

						{
							obj_t BgL_auxz00_3077;

							{	/* BackEnd/cplib.scm 103 */
								BgL_objectz00_bglt BgL_tmpz00_3078;

								BgL_tmpz00_3078 = ((BgL_objectz00_bglt) BgL_classz00_16);
								BgL_auxz00_3077 = BGL_OBJECT_WIDENING(BgL_tmpz00_3078);
							}
							BgL_auxz00_3076 = ((BgL_tclassz00_bglt) BgL_auxz00_3077);
						}
						BgL_cz00_1708 =
							(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3076))->
							BgL_itszd2superzd2);
					}
				else
					{	/* BackEnd/cplib.scm 103 */
						BgL_cz00_1708 = ((obj_t) BgL_classz00_16);
					}
				BGL_TAIL return
					BGl_qualifiedzd2realzd2tclasszd2namezd2zzbackend_cplibz00(
					((BgL_typez00_bglt) BgL_cz00_1708));
			}
		}

	}



/* &qualified-tclass-name */
	obj_t BGl_z62qualifiedzd2tclasszd2namez62zzbackend_cplibz00(obj_t
		BgL_envz00_2816, obj_t BgL_classz00_2817)
	{
		{	/* BackEnd/cplib.scm 102 */
			return
				BGl_qualifiedzd2tclasszd2namez00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_classz00_2817));
		}

	}



/* qualified-wclass-name */
	BGL_EXPORTED_DEF obj_t
		BGl_qualifiedzd2wclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt
		BgL_classz00_17)
	{
		{	/* BackEnd/cplib.scm 109 */
			{	/* BackEnd/cplib.scm 110 */
				obj_t BgL_arg1397z00_2154;

				{
					BgL_wclassz00_bglt BgL_auxz00_3088;

					{
						obj_t BgL_auxz00_3089;

						{	/* BackEnd/cplib.scm 110 */
							BgL_objectz00_bglt BgL_tmpz00_3090;

							BgL_tmpz00_3090 = ((BgL_objectz00_bglt) BgL_classz00_17);
							BgL_auxz00_3089 = BGL_OBJECT_WIDENING(BgL_tmpz00_3090);
						}
						BgL_auxz00_3088 = ((BgL_wclassz00_bglt) BgL_auxz00_3089);
					}
					BgL_arg1397z00_2154 =
						(((BgL_wclassz00_bglt) COBJECT(BgL_auxz00_3088))->
						BgL_itszd2classzd2);
				}
				return
					BGl_qualifiedzd2realzd2tclasszd2namezd2zzbackend_cplibz00(
					((BgL_typez00_bglt) BgL_arg1397z00_2154));
			}
		}

	}



/* &qualified-wclass-name */
	obj_t BGl_z62qualifiedzd2wclasszd2namez62zzbackend_cplibz00(obj_t
		BgL_envz00_2818, obj_t BgL_classz00_2819)
	{
		{	/* BackEnd/cplib.scm 109 */
			return
				BGl_qualifiedzd2wclasszd2namez00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_classz00_2819));
		}

	}



/* qualified-jclass-name */
	BGL_EXPORTED_DEF obj_t
		BGl_qualifiedzd2jclasszd2namez00zzbackend_cplibz00(BgL_typez00_bglt
		BgL_classz00_18)
	{
		{	/* BackEnd/cplib.scm 115 */
			return
				(((BgL_typez00_bglt) COBJECT(
						((BgL_typez00_bglt) BgL_classz00_18)))->BgL_namez00);
		}

	}



/* &qualified-jclass-name */
	obj_t BGl_z62qualifiedzd2jclasszd2namez62zzbackend_cplibz00(obj_t
		BgL_envz00_2820, obj_t BgL_classz00_2821)
	{
		{	/* BackEnd/cplib.scm 115 */
			return
				BGl_qualifiedzd2jclasszd2namez00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_classz00_2821));
		}

	}



/* qualified-type-name */
	BGL_EXPORTED_DEF obj_t
		BGl_qualifiedzd2typezd2namez00zzbackend_cplibz00(BgL_typez00_bglt
		BgL_typez00_19)
	{
		{	/* BackEnd/cplib.scm 121 */
			{	/* BackEnd/cplib.scm 122 */
				obj_t BgL_idz00_1711;

				BgL_idz00_1711 =
					(((BgL_typez00_bglt) COBJECT(BgL_typez00_19))->BgL_idz00);
				if ((BgL_idz00_1711 == CNST_TABLE_REF(1L)))
					{	/* BackEnd/cplib.scm 123 */
						return BGl_za2jvmzd2foreignzd2classzd2nameza2zd2zzengine_paramz00;
					}
				else
					{	/* BackEnd/cplib.scm 125 */
						obj_t BgL_javazd2classzd2_1712;

						BgL_javazd2classzd2_1712 =
							BGl_findzd2javazd2classz00zzmodule_javaz00(BgL_idz00_1711);
						if (STRINGP(BgL_javazd2classzd2_1712))
							{	/* BackEnd/cplib.scm 126 */
								return BgL_javazd2classzd2_1712;
							}
						else
							{	/* BackEnd/cplib.scm 128 */
								obj_t BgL_arg1407z00_1714;

								{	/* BackEnd/cplib.scm 128 */
									obj_t BgL_arg1454z00_2160;

									BgL_arg1454z00_2160 = SYMBOL_TO_STRING(BgL_idz00_1711);
									BgL_arg1407z00_1714 =
										BGl_stringzd2copyzd2zz__r4_strings_6_7z00
										(BgL_arg1454z00_2160);
								}
								return
									string_append(BGl_string1882z00zzbackend_cplibz00,
									BgL_arg1407z00_1714);
							}
					}
			}
		}

	}



/* &qualified-type-name */
	obj_t BGl_z62qualifiedzd2typezd2namez62zzbackend_cplibz00(obj_t
		BgL_envz00_2822, obj_t BgL_typez00_2823)
	{
		{	/* BackEnd/cplib.scm 121 */
			return
				BGl_qualifiedzd2typezd2namez00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_typez00_2823));
		}

	}



/* reset-global! */
	BGL_EXPORTED_DEF obj_t
		BGl_resetzd2globalz12zc0zzbackend_cplibz00(BgL_globalz00_bglt BgL_varz00_20)
	{
		{	/* BackEnd/cplib.scm 134 */
			{	/* BackEnd/cplib.scm 136 */
				obj_t BgL_namez00_1715;

				BgL_namez00_1715 =
					(((BgL_variablez00_bglt) COBJECT(
							((BgL_variablez00_bglt) BgL_varz00_20)))->BgL_namez00);
				if (STRINGP(BgL_namez00_1715))
					{	/* BackEnd/cplib.scm 137 */
						BgL_namez00_1715;
					}
				else
					{	/* BackEnd/cplib.scm 139 */
						obj_t BgL_namez00_1717;

						{	/* BackEnd/cplib.scm 139 */
							obj_t BgL_arg1431z00_1720;

							{	/* BackEnd/cplib.scm 139 */
								obj_t BgL__ortest_1109z00_1721;

								BgL__ortest_1109z00_1721 =
									(((BgL_globalz00_bglt) COBJECT(BgL_varz00_20))->BgL_aliasz00);
								if (CBOOL(BgL__ortest_1109z00_1721))
									{	/* BackEnd/cplib.scm 139 */
										BgL_arg1431z00_1720 = BgL__ortest_1109z00_1721;
									}
								else
									{	/* BackEnd/cplib.scm 139 */
										BgL_arg1431z00_1720 =
											(((BgL_variablez00_bglt) COBJECT(
													((BgL_variablez00_bglt) BgL_varz00_20)))->BgL_idz00);
									}
							}
							{	/* BackEnd/cplib.scm 139 */
								obj_t BgL_arg1454z00_2165;

								BgL_arg1454z00_2165 =
									SYMBOL_TO_STRING(((obj_t) BgL_arg1431z00_1720));
								BgL_namez00_1717 =
									BGl_stringzd2copyzd2zz__r4_strings_6_7z00
									(BgL_arg1454z00_2165);
							}
						}
						{	/* BackEnd/cplib.scm 141 */
							obj_t BgL_arg1420z00_1718;

							if (BGl_bigloozd2needzd2manglingzf3zf3zz__biglooz00
								(BgL_namez00_1717))
								{	/* BackEnd/cplib.scm 141 */
									BgL_arg1420z00_1718 = bigloo_mangle(BgL_namez00_1717);
								}
							else
								{	/* BackEnd/cplib.scm 141 */
									BgL_arg1420z00_1718 = BgL_namez00_1717;
								}
							((((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt) BgL_varz00_20)))->BgL_namez00) =
								((obj_t) BgL_arg1420z00_1718), BUNSPEC);
						}
					}
			}
			{	/* BackEnd/cplib.scm 145 */
				BgL_valuez00_bglt BgL_valuez00_1722;

				BgL_valuez00_1722 =
					(((BgL_variablez00_bglt) COBJECT(
							((BgL_variablez00_bglt) BgL_varz00_20)))->BgL_valuez00);
				{	/* BackEnd/cplib.scm 146 */
					bool_t BgL_test1945z00_3134;

					{	/* BackEnd/cplib.scm 146 */
						bool_t BgL_test1946z00_3135;

						{	/* BackEnd/cplib.scm 146 */
							obj_t BgL_classz00_2168;

							BgL_classz00_2168 = BGl_scnstz00zzast_varz00;
							{	/* BackEnd/cplib.scm 146 */
								BgL_objectz00_bglt BgL_arg1801z00_2170;

								{	/* BackEnd/cplib.scm 146 */
									obj_t BgL_tmpz00_3136;

									BgL_tmpz00_3136 =
										((obj_t) ((BgL_objectz00_bglt) BgL_valuez00_1722));
									BgL_arg1801z00_2170 = (BgL_objectz00_bglt) (BgL_tmpz00_3136);
								}
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* BackEnd/cplib.scm 146 */
										long BgL_idxz00_2176;

										BgL_idxz00_2176 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2170);
										BgL_test1946z00_3135 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_2176 + 2L)) == BgL_classz00_2168);
									}
								else
									{	/* BackEnd/cplib.scm 146 */
										bool_t BgL_res1859z00_2198;

										{	/* BackEnd/cplib.scm 146 */
											obj_t BgL_oclassz00_2184;

											{	/* BackEnd/cplib.scm 146 */
												long BgL_arg1808z00_2190;

												{	/* BackEnd/cplib.scm 146 */
													long BgL_arg1809z00_2191;

													BgL_arg1809z00_2191 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2170);
													BgL_arg1808z00_2190 =
														(BgL_arg1809z00_2191 - OBJECT_TYPE);
												}
												BgL_oclassz00_2184 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_2190);
											}
											{	/* BackEnd/cplib.scm 146 */
												bool_t BgL__ortest_1115z00_2185;

												BgL__ortest_1115z00_2185 =
													(BgL_classz00_2168 == BgL_oclassz00_2184);
												if (BgL__ortest_1115z00_2185)
													{	/* BackEnd/cplib.scm 146 */
														BgL_res1859z00_2198 = BgL__ortest_1115z00_2185;
													}
												else
													{	/* BackEnd/cplib.scm 146 */
														long BgL_odepthz00_2186;

														BgL_odepthz00_2186 =
															BGL_CLASS_DEPTH(BgL_oclassz00_2184);
														if ((2L < BgL_odepthz00_2186))
															{	/* BackEnd/cplib.scm 146 */
																obj_t BgL_arg1797z00_2188;

																BgL_arg1797z00_2188 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2184,
																	2L);
																BgL_res1859z00_2198 =
																	(BgL_arg1797z00_2188 == BgL_classz00_2168);
															}
														else
															{	/* BackEnd/cplib.scm 146 */
																BgL_res1859z00_2198 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test1946z00_3135 = BgL_res1859z00_2198;
									}
							}
						}
						if (BgL_test1946z00_3135)
							{	/* BackEnd/cplib.scm 146 */
								BgL_test1945z00_3134 =
									(
									(((BgL_scnstz00_bglt) COBJECT(
												((BgL_scnstz00_bglt) BgL_valuez00_1722)))->
										BgL_classz00) == CNST_TABLE_REF(2L));
							}
						else
							{	/* BackEnd/cplib.scm 146 */
								BgL_test1945z00_3134 = ((bool_t) 0);
							}
					}
					if (BgL_test1945z00_3134)
						{	/* BackEnd/cplib.scm 147 */
							obj_t BgL_arg1450z00_1726;

							{	/* BackEnd/cplib.scm 147 */
								obj_t BgL_sz00_2201;

								BgL_sz00_2201 =
									(((BgL_scnstz00_bglt) COBJECT(
											((BgL_scnstz00_bglt) BgL_valuez00_1722)))->BgL_nodez00);
								BgL_arg1450z00_1726 = STRUCT_REF(BgL_sz00_2201, (int) (0L));
							}
							return
								((((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt) BgL_varz00_20)))->BgL_typez00) =
								((BgL_typez00_bglt) ((BgL_typez00_bglt) BgL_arg1450z00_1726)),
								BUNSPEC);
						}
					else
						{	/* BackEnd/cplib.scm 146 */
							return BFALSE;
						}
				}
			}
		}

	}



/* &reset-global! */
	obj_t BGl_z62resetzd2globalz12za2zzbackend_cplibz00(obj_t BgL_envz00_2824,
		obj_t BgL_varz00_2825)
	{
		{	/* BackEnd/cplib.scm 134 */
			return
				BGl_resetzd2globalz12zc0zzbackend_cplibz00(
				((BgL_globalz00_bglt) BgL_varz00_2825));
		}

	}



/* set-variable-name! */
	BGL_EXPORTED_DEF obj_t
		BGl_setzd2variablezd2namez12z12zzbackend_cplibz00(BgL_variablez00_bglt
		BgL_variablez00_21)
	{
		{	/* BackEnd/cplib.scm 152 */
			{	/* BackEnd/cplib.scm 154 */
				bool_t BgL_test1950z00_3169;

				{	/* BackEnd/cplib.scm 154 */
					obj_t BgL_tmpz00_3170;

					BgL_tmpz00_3170 =
						(((BgL_variablez00_bglt) COBJECT(BgL_variablez00_21))->BgL_namez00);
					BgL_test1950z00_3169 = STRINGP(BgL_tmpz00_3170);
				}
				if (BgL_test1950z00_3169)
					{	/* BackEnd/cplib.scm 154 */
						return
							(((BgL_variablez00_bglt) COBJECT(BgL_variablez00_21))->
							BgL_namez00);
					}
				else
					{	/* BackEnd/cplib.scm 156 */
						obj_t BgL_nz00_1733;

						{	/* BackEnd/cplib.scm 157 */
							bool_t BgL_test1951z00_3174;

							{	/* BackEnd/cplib.scm 157 */
								obj_t BgL_classz00_2204;

								BgL_classz00_2204 = BGl_globalz00zzast_varz00;
								{	/* BackEnd/cplib.scm 157 */
									BgL_objectz00_bglt BgL_arg1801z00_2206;

									{	/* BackEnd/cplib.scm 157 */
										obj_t BgL_tmpz00_3175;

										BgL_tmpz00_3175 = ((obj_t) BgL_variablez00_21);
										BgL_arg1801z00_2206 =
											(BgL_objectz00_bglt) (BgL_tmpz00_3175);
									}
									if (BGL_CONDEXPAND_ISA_ARCH64())
										{	/* BackEnd/cplib.scm 157 */
											long BgL_idxz00_2212;

											BgL_idxz00_2212 =
												BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2206);
											BgL_test1951z00_3174 =
												(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
													(BgL_idxz00_2212 + 2L)) == BgL_classz00_2204);
										}
									else
										{	/* BackEnd/cplib.scm 157 */
											bool_t BgL_res1860z00_2234;

											{	/* BackEnd/cplib.scm 157 */
												obj_t BgL_oclassz00_2220;

												{	/* BackEnd/cplib.scm 157 */
													long BgL_arg1808z00_2226;

													{	/* BackEnd/cplib.scm 157 */
														long BgL_arg1809z00_2227;

														BgL_arg1809z00_2227 =
															BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2206);
														BgL_arg1808z00_2226 =
															(BgL_arg1809z00_2227 - OBJECT_TYPE);
													}
													BgL_oclassz00_2220 =
														VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
														BgL_arg1808z00_2226);
												}
												{	/* BackEnd/cplib.scm 157 */
													bool_t BgL__ortest_1115z00_2221;

													BgL__ortest_1115z00_2221 =
														(BgL_classz00_2204 == BgL_oclassz00_2220);
													if (BgL__ortest_1115z00_2221)
														{	/* BackEnd/cplib.scm 157 */
															BgL_res1860z00_2234 = BgL__ortest_1115z00_2221;
														}
													else
														{	/* BackEnd/cplib.scm 157 */
															long BgL_odepthz00_2222;

															BgL_odepthz00_2222 =
																BGL_CLASS_DEPTH(BgL_oclassz00_2220);
															if ((2L < BgL_odepthz00_2222))
																{	/* BackEnd/cplib.scm 157 */
																	obj_t BgL_arg1797z00_2224;

																	BgL_arg1797z00_2224 =
																		BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2220,
																		2L);
																	BgL_res1860z00_2234 =
																		(BgL_arg1797z00_2224 == BgL_classz00_2204);
																}
															else
																{	/* BackEnd/cplib.scm 157 */
																	BgL_res1860z00_2234 = ((bool_t) 0);
																}
														}
												}
											}
											BgL_test1951z00_3174 = BgL_res1860z00_2234;
										}
								}
							}
							if (BgL_test1951z00_3174)
								{	/* BackEnd/cplib.scm 159 */
									obj_t BgL_arg1479z00_1736;
									obj_t BgL_arg1491z00_1737;

									{	/* BackEnd/cplib.scm 159 */
										obj_t BgL_arg1492z00_1738;

										{	/* BackEnd/cplib.scm 159 */
											obj_t BgL__ortest_1112z00_1739;

											BgL__ortest_1112z00_1739 =
												(((BgL_globalz00_bglt) COBJECT(
														((BgL_globalz00_bglt) BgL_variablez00_21)))->
												BgL_aliasz00);
											if (CBOOL(BgL__ortest_1112z00_1739))
												{	/* BackEnd/cplib.scm 159 */
													BgL_arg1492z00_1738 = BgL__ortest_1112z00_1739;
												}
											else
												{	/* BackEnd/cplib.scm 159 */
													BgL_arg1492z00_1738 =
														(((BgL_variablez00_bglt) COBJECT(
																((BgL_variablez00_bglt)
																	((BgL_globalz00_bglt) BgL_variablez00_21))))->
														BgL_idz00);
												}
										}
										{	/* BackEnd/cplib.scm 159 */
											obj_t BgL_arg1454z00_2236;

											BgL_arg1454z00_2236 =
												SYMBOL_TO_STRING(((obj_t) BgL_arg1492z00_1738));
											BgL_arg1479z00_1736 =
												BGl_stringzd2copyzd2zz__r4_strings_6_7z00
												(BgL_arg1454z00_2236);
										}
									}
									{	/* BackEnd/cplib.scm 160 */
										obj_t BgL_arg1494z00_1740;

										BgL_arg1494z00_1740 =
											(((BgL_globalz00_bglt) COBJECT(
													((BgL_globalz00_bglt) BgL_variablez00_21)))->
											BgL_modulez00);
										{	/* BackEnd/cplib.scm 160 */
											obj_t BgL_arg1454z00_2238;

											BgL_arg1454z00_2238 =
												SYMBOL_TO_STRING(BgL_arg1494z00_1740);
											BgL_arg1491z00_1737 =
												BGl_stringzd2copyzd2zz__r4_strings_6_7z00
												(BgL_arg1454z00_2238);
										}
									}
									BgL_nz00_1733 =
										bigloo_module_mangle(BgL_arg1479z00_1736,
										BgL_arg1491z00_1737);
								}
							else
								{	/* BackEnd/cplib.scm 161 */
									bool_t BgL_test1956z00_3209;

									{	/* BackEnd/cplib.scm 161 */
										obj_t BgL_classz00_2239;

										BgL_classz00_2239 = BGl_localz00zzast_varz00;
										{	/* BackEnd/cplib.scm 161 */
											BgL_objectz00_bglt BgL_arg1801z00_2241;

											{	/* BackEnd/cplib.scm 161 */
												obj_t BgL_tmpz00_3210;

												BgL_tmpz00_3210 = ((obj_t) BgL_variablez00_21);
												BgL_arg1801z00_2241 =
													(BgL_objectz00_bglt) (BgL_tmpz00_3210);
											}
											if (BGL_CONDEXPAND_ISA_ARCH64())
												{	/* BackEnd/cplib.scm 161 */
													long BgL_idxz00_2247;

													BgL_idxz00_2247 =
														BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2241);
													BgL_test1956z00_3209 =
														(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
															(BgL_idxz00_2247 + 2L)) == BgL_classz00_2239);
												}
											else
												{	/* BackEnd/cplib.scm 161 */
													bool_t BgL_res1861z00_2269;

													{	/* BackEnd/cplib.scm 161 */
														obj_t BgL_oclassz00_2255;

														{	/* BackEnd/cplib.scm 161 */
															long BgL_arg1808z00_2261;

															{	/* BackEnd/cplib.scm 161 */
																long BgL_arg1809z00_2262;

																BgL_arg1809z00_2262 =
																	BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2241);
																BgL_arg1808z00_2261 =
																	(BgL_arg1809z00_2262 - OBJECT_TYPE);
															}
															BgL_oclassz00_2255 =
																VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
																BgL_arg1808z00_2261);
														}
														{	/* BackEnd/cplib.scm 161 */
															bool_t BgL__ortest_1115z00_2256;

															BgL__ortest_1115z00_2256 =
																(BgL_classz00_2239 == BgL_oclassz00_2255);
															if (BgL__ortest_1115z00_2256)
																{	/* BackEnd/cplib.scm 161 */
																	BgL_res1861z00_2269 =
																		BgL__ortest_1115z00_2256;
																}
															else
																{	/* BackEnd/cplib.scm 161 */
																	long BgL_odepthz00_2257;

																	BgL_odepthz00_2257 =
																		BGL_CLASS_DEPTH(BgL_oclassz00_2255);
																	if ((2L < BgL_odepthz00_2257))
																		{	/* BackEnd/cplib.scm 161 */
																			obj_t BgL_arg1797z00_2259;

																			BgL_arg1797z00_2259 =
																				BGL_CLASS_ANCESTORS_REF
																				(BgL_oclassz00_2255, 2L);
																			BgL_res1861z00_2269 =
																				(BgL_arg1797z00_2259 ==
																				BgL_classz00_2239);
																		}
																	else
																		{	/* BackEnd/cplib.scm 161 */
																			BgL_res1861z00_2269 = ((bool_t) 0);
																		}
																}
														}
													}
													BgL_test1956z00_3209 = BgL_res1861z00_2269;
												}
										}
									}
									if (BgL_test1956z00_3209)
										{	/* BackEnd/cplib.scm 165 */
											obj_t BgL_arg1496z00_1743;

											{	/* BackEnd/cplib.scm 165 */
												obj_t BgL_arg1497z00_1744;
												obj_t BgL_arg1519z00_1745;

												{	/* BackEnd/cplib.scm 165 */
													obj_t BgL_arg1528z00_1746;

													BgL_arg1528z00_1746 =
														(((BgL_variablez00_bglt) COBJECT(
																((BgL_variablez00_bglt)
																	((BgL_localz00_bglt) BgL_variablez00_21))))->
														BgL_idz00);
													{	/* BackEnd/cplib.scm 165 */
														obj_t BgL_arg1454z00_2271;

														BgL_arg1454z00_2271 =
															SYMBOL_TO_STRING(BgL_arg1528z00_1746);
														BgL_arg1497z00_1744 =
															BGl_stringzd2copyzd2zz__r4_strings_6_7z00
															(BgL_arg1454z00_2271);
													}
												}
												{	/* BackEnd/cplib.scm 165 */

													BgL_arg1519z00_1745 =
														BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00
														((((BgL_localz00_bglt) COBJECT(((BgL_localz00_bglt)
																		BgL_variablez00_21)))->BgL_keyz00), 10L);
												}
												BgL_arg1496z00_1743 =
													string_append_3(BgL_arg1497z00_1744,
													BGl_string1883z00zzbackend_cplibz00,
													BgL_arg1519z00_1745);
											}
											BgL_nz00_1733 = bigloo_mangle(BgL_arg1496z00_1743);
										}
									else
										{	/* BackEnd/cplib.scm 169 */
											obj_t BgL_arg1534z00_1750;

											BgL_arg1534z00_1750 =
												BGl_shapez00zztools_shapez00(
												((obj_t) BgL_variablez00_21));
											BgL_nz00_1733 =
												BGl_internalzd2errorzd2zztools_errorz00
												(BGl_string1884z00zzbackend_cplibz00,
												BGl_string1885z00zzbackend_cplibz00,
												BgL_arg1534z00_1750);
										}
								}
						}
						((((BgL_variablez00_bglt) COBJECT(BgL_variablez00_21))->
								BgL_namez00) = ((obj_t) BgL_nz00_1733), BUNSPEC);
						return BgL_nz00_1733;
					}
			}
		}

	}



/* &set-variable-name! */
	obj_t BGl_z62setzd2variablezd2namez12z70zzbackend_cplibz00(obj_t
		BgL_envz00_2826, obj_t BgL_variablez00_2827)
	{
		{	/* BackEnd/cplib.scm 152 */
			return
				BGl_setzd2variablezd2namez12z12zzbackend_cplibz00(
				((BgL_variablez00_bglt) BgL_variablez00_2827));
		}

	}



/* global-entry */
	BGL_EXPORTED_DEF BgL_globalz00_bglt
		BGl_globalzd2entryzd2zzbackend_cplibz00(BgL_globalz00_bglt BgL_varz00_22)
	{
		{	/* BackEnd/cplib.scm 176 */
			{	/* BackEnd/cplib.scm 178 */
				BgL_valuez00_bglt BgL_valuez00_1752;

				BgL_valuez00_1752 =
					(((BgL_variablez00_bglt) COBJECT(
							((BgL_variablez00_bglt) BgL_varz00_22)))->BgL_valuez00);
				{	/* BackEnd/cplib.scm 179 */
					bool_t BgL_test1960z00_3247;

					{	/* BackEnd/cplib.scm 179 */
						obj_t BgL_classz00_2273;

						BgL_classz00_2273 = BGl_scnstz00zzast_varz00;
						{	/* BackEnd/cplib.scm 179 */
							BgL_objectz00_bglt BgL_arg1801z00_2275;

							{	/* BackEnd/cplib.scm 179 */
								obj_t BgL_tmpz00_3248;

								BgL_tmpz00_3248 =
									((obj_t) ((BgL_objectz00_bglt) BgL_valuez00_1752));
								BgL_arg1801z00_2275 = (BgL_objectz00_bglt) (BgL_tmpz00_3248);
							}
							if (BGL_CONDEXPAND_ISA_ARCH64())
								{	/* BackEnd/cplib.scm 179 */
									long BgL_idxz00_2281;

									BgL_idxz00_2281 =
										BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2275);
									BgL_test1960z00_3247 =
										(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
											(BgL_idxz00_2281 + 2L)) == BgL_classz00_2273);
								}
							else
								{	/* BackEnd/cplib.scm 179 */
									bool_t BgL_res1862z00_2303;

									{	/* BackEnd/cplib.scm 179 */
										obj_t BgL_oclassz00_2289;

										{	/* BackEnd/cplib.scm 179 */
											long BgL_arg1808z00_2295;

											{	/* BackEnd/cplib.scm 179 */
												long BgL_arg1809z00_2296;

												BgL_arg1809z00_2296 =
													BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2275);
												BgL_arg1808z00_2295 =
													(BgL_arg1809z00_2296 - OBJECT_TYPE);
											}
											BgL_oclassz00_2289 =
												VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
												BgL_arg1808z00_2295);
										}
										{	/* BackEnd/cplib.scm 179 */
											bool_t BgL__ortest_1115z00_2290;

											BgL__ortest_1115z00_2290 =
												(BgL_classz00_2273 == BgL_oclassz00_2289);
											if (BgL__ortest_1115z00_2290)
												{	/* BackEnd/cplib.scm 179 */
													BgL_res1862z00_2303 = BgL__ortest_1115z00_2290;
												}
											else
												{	/* BackEnd/cplib.scm 179 */
													long BgL_odepthz00_2291;

													BgL_odepthz00_2291 =
														BGL_CLASS_DEPTH(BgL_oclassz00_2289);
													if ((2L < BgL_odepthz00_2291))
														{	/* BackEnd/cplib.scm 179 */
															obj_t BgL_arg1797z00_2293;

															BgL_arg1797z00_2293 =
																BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2289, 2L);
															BgL_res1862z00_2303 =
																(BgL_arg1797z00_2293 == BgL_classz00_2273);
														}
													else
														{	/* BackEnd/cplib.scm 179 */
															BgL_res1862z00_2303 = ((bool_t) 0);
														}
												}
										}
									}
									BgL_test1960z00_3247 = BgL_res1862z00_2303;
								}
						}
					}
					if (BgL_test1960z00_3247)
						{
							BgL_variablez00_bglt BgL_auxz00_3268;

							{
								BgL_varz00_bglt BgL_auxz00_3269;

								{	/* BackEnd/cplib.scm 180 */
									obj_t BgL_pairz00_2306;

									BgL_pairz00_2306 =
										(((BgL_appz00_bglt) COBJECT(
												((BgL_appz00_bglt)
													(((BgL_scnstz00_bglt) COBJECT(
																((BgL_scnstz00_bglt) BgL_valuez00_1752)))->
														BgL_nodez00))))->BgL_argsz00);
									BgL_auxz00_3269 = ((BgL_varz00_bglt) CAR(BgL_pairz00_2306));
								}
								BgL_auxz00_3268 =
									(((BgL_varz00_bglt) COBJECT(BgL_auxz00_3269))->
									BgL_variablez00);
							}
							return ((BgL_globalz00_bglt) BgL_auxz00_3268);
						}
					else
						{	/* BackEnd/cplib.scm 179 */
							return BgL_varz00_22;
						}
				}
			}
		}

	}



/* &global-entry */
	BgL_globalz00_bglt BGl_z62globalzd2entryzb0zzbackend_cplibz00(obj_t
		BgL_envz00_2828, obj_t BgL_varz00_2829)
	{
		{	/* BackEnd/cplib.scm 176 */
			return
				BGl_globalzd2entryzd2zzbackend_cplibz00(
				((BgL_globalz00_bglt) BgL_varz00_2829));
		}

	}



/* global-arity */
	BGL_EXPORTED_DEF obj_t
		BGl_globalzd2arityzd2zzbackend_cplibz00(BgL_globalz00_bglt BgL_varz00_23)
	{
		{	/* BackEnd/cplib.scm 186 */
			{	/* BackEnd/cplib.scm 188 */
				BgL_valuez00_bglt BgL_valuez00_1757;

				BgL_valuez00_1757 =
					(((BgL_variablez00_bglt) COBJECT(
							((BgL_variablez00_bglt) BgL_varz00_23)))->BgL_valuez00);
				{	/* BackEnd/cplib.scm 190 */
					bool_t BgL_test1964z00_3282;

					{	/* BackEnd/cplib.scm 190 */
						obj_t BgL_classz00_2309;

						BgL_classz00_2309 = BGl_scnstz00zzast_varz00;
						{	/* BackEnd/cplib.scm 190 */
							BgL_objectz00_bglt BgL_arg1801z00_2311;

							{	/* BackEnd/cplib.scm 190 */
								obj_t BgL_tmpz00_3283;

								BgL_tmpz00_3283 =
									((obj_t) ((BgL_objectz00_bglt) BgL_valuez00_1757));
								BgL_arg1801z00_2311 = (BgL_objectz00_bglt) (BgL_tmpz00_3283);
							}
							if (BGL_CONDEXPAND_ISA_ARCH64())
								{	/* BackEnd/cplib.scm 190 */
									long BgL_idxz00_2317;

									BgL_idxz00_2317 =
										BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2311);
									BgL_test1964z00_3282 =
										(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
											(BgL_idxz00_2317 + 2L)) == BgL_classz00_2309);
								}
							else
								{	/* BackEnd/cplib.scm 190 */
									bool_t BgL_res1863z00_2339;

									{	/* BackEnd/cplib.scm 190 */
										obj_t BgL_oclassz00_2325;

										{	/* BackEnd/cplib.scm 190 */
											long BgL_arg1808z00_2331;

											{	/* BackEnd/cplib.scm 190 */
												long BgL_arg1809z00_2332;

												BgL_arg1809z00_2332 =
													BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2311);
												BgL_arg1808z00_2331 =
													(BgL_arg1809z00_2332 - OBJECT_TYPE);
											}
											BgL_oclassz00_2325 =
												VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
												BgL_arg1808z00_2331);
										}
										{	/* BackEnd/cplib.scm 190 */
											bool_t BgL__ortest_1115z00_2326;

											BgL__ortest_1115z00_2326 =
												(BgL_classz00_2309 == BgL_oclassz00_2325);
											if (BgL__ortest_1115z00_2326)
												{	/* BackEnd/cplib.scm 190 */
													BgL_res1863z00_2339 = BgL__ortest_1115z00_2326;
												}
											else
												{	/* BackEnd/cplib.scm 190 */
													long BgL_odepthz00_2327;

													BgL_odepthz00_2327 =
														BGL_CLASS_DEPTH(BgL_oclassz00_2325);
													if ((2L < BgL_odepthz00_2327))
														{	/* BackEnd/cplib.scm 190 */
															obj_t BgL_arg1797z00_2329;

															BgL_arg1797z00_2329 =
																BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2325, 2L);
															BgL_res1863z00_2339 =
																(BgL_arg1797z00_2329 == BgL_classz00_2309);
														}
													else
														{	/* BackEnd/cplib.scm 190 */
															BgL_res1863z00_2339 = ((bool_t) 0);
														}
												}
										}
									}
									BgL_test1964z00_3282 = BgL_res1863z00_2339;
								}
						}
					}
					if (BgL_test1964z00_3282)
						{	/* BackEnd/cplib.scm 193 */

							{	/* BackEnd/cplib.scm 194 */
								long BgL_tmpz00_3303;

								{
									BgL_funz00_bglt BgL_auxz00_3304;

									{
										BgL_sfunz00_bglt BgL_auxz00_3305;

										{
											BgL_valuez00_bglt BgL_auxz00_3306;

											{
												BgL_variablez00_bglt BgL_auxz00_3307;

												{
													obj_t BgL_auxz00_3308;

													{
														BgL_sfunz00_bglt BgL_auxz00_3309;

														{
															BgL_valuez00_bglt BgL_auxz00_3310;

															{
																BgL_variablez00_bglt BgL_auxz00_3311;

																{
																	BgL_globalz00_bglt BgL_auxz00_3312;

																	{
																		BgL_variablez00_bglt BgL_auxz00_3313;

																		{
																			BgL_varz00_bglt BgL_auxz00_3314;

																			{	/* BackEnd/cplib.scm 192 */
																				obj_t BgL_pairz00_2342;

																				BgL_pairz00_2342 =
																					(((BgL_appz00_bglt) COBJECT(
																							((BgL_appz00_bglt)
																								(((BgL_scnstz00_bglt) COBJECT(
																											((BgL_scnstz00_bglt)
																												BgL_valuez00_1757)))->
																									BgL_nodez00))))->BgL_argsz00);
																				BgL_auxz00_3314 =
																					((BgL_varz00_bglt)
																					CAR(BgL_pairz00_2342));
																			}
																			BgL_auxz00_3313 =
																				(((BgL_varz00_bglt)
																					COBJECT(BgL_auxz00_3314))->
																				BgL_variablez00);
																		}
																		BgL_auxz00_3312 =
																			((BgL_globalz00_bglt) BgL_auxz00_3313);
																	}
																	BgL_auxz00_3311 =
																		((BgL_variablez00_bglt) BgL_auxz00_3312);
																}
																BgL_auxz00_3310 =
																	(((BgL_variablez00_bglt)
																		COBJECT(BgL_auxz00_3311))->BgL_valuez00);
															}
															BgL_auxz00_3309 =
																((BgL_sfunz00_bglt) BgL_auxz00_3310);
														}
														BgL_auxz00_3308 =
															(((BgL_sfunz00_bglt) COBJECT(BgL_auxz00_3309))->
															BgL_thezd2closurezd2globalz00);
													}
													BgL_auxz00_3307 =
														((BgL_variablez00_bglt) BgL_auxz00_3308);
												}
												BgL_auxz00_3306 =
													(((BgL_variablez00_bglt) COBJECT(BgL_auxz00_3307))->
													BgL_valuez00);
											}
											BgL_auxz00_3305 = ((BgL_sfunz00_bglt) BgL_auxz00_3306);
										}
										BgL_auxz00_3304 = ((BgL_funz00_bglt) BgL_auxz00_3305);
									}
									BgL_tmpz00_3303 =
										(((BgL_funz00_bglt) COBJECT(BgL_auxz00_3304))->
										BgL_arityz00);
								}
								return BINT(BgL_tmpz00_3303);
							}
						}
					else
						{	/* BackEnd/cplib.scm 196 */
							bool_t BgL_test1968z00_3333;

							{	/* BackEnd/cplib.scm 196 */
								obj_t BgL_classz00_2348;

								BgL_classz00_2348 = BGl_sfunz00zzast_varz00;
								{	/* BackEnd/cplib.scm 196 */
									BgL_objectz00_bglt BgL_arg1801z00_2350;

									{	/* BackEnd/cplib.scm 196 */
										obj_t BgL_tmpz00_3334;

										BgL_tmpz00_3334 =
											((obj_t) ((BgL_objectz00_bglt) BgL_valuez00_1757));
										BgL_arg1801z00_2350 =
											(BgL_objectz00_bglt) (BgL_tmpz00_3334);
									}
									if (BGL_CONDEXPAND_ISA_ARCH64())
										{	/* BackEnd/cplib.scm 196 */
											long BgL_idxz00_2356;

											BgL_idxz00_2356 =
												BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2350);
											BgL_test1968z00_3333 =
												(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
													(BgL_idxz00_2356 + 3L)) == BgL_classz00_2348);
										}
									else
										{	/* BackEnd/cplib.scm 196 */
											bool_t BgL_res1864z00_2378;

											{	/* BackEnd/cplib.scm 196 */
												obj_t BgL_oclassz00_2364;

												{	/* BackEnd/cplib.scm 196 */
													long BgL_arg1808z00_2370;

													{	/* BackEnd/cplib.scm 196 */
														long BgL_arg1809z00_2371;

														BgL_arg1809z00_2371 =
															BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2350);
														BgL_arg1808z00_2370 =
															(BgL_arg1809z00_2371 - OBJECT_TYPE);
													}
													BgL_oclassz00_2364 =
														VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
														BgL_arg1808z00_2370);
												}
												{	/* BackEnd/cplib.scm 196 */
													bool_t BgL__ortest_1115z00_2365;

													BgL__ortest_1115z00_2365 =
														(BgL_classz00_2348 == BgL_oclassz00_2364);
													if (BgL__ortest_1115z00_2365)
														{	/* BackEnd/cplib.scm 196 */
															BgL_res1864z00_2378 = BgL__ortest_1115z00_2365;
														}
													else
														{	/* BackEnd/cplib.scm 196 */
															long BgL_odepthz00_2366;

															BgL_odepthz00_2366 =
																BGL_CLASS_DEPTH(BgL_oclassz00_2364);
															if ((3L < BgL_odepthz00_2366))
																{	/* BackEnd/cplib.scm 196 */
																	obj_t BgL_arg1797z00_2368;

																	BgL_arg1797z00_2368 =
																		BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2364,
																		3L);
																	BgL_res1864z00_2378 =
																		(BgL_arg1797z00_2368 == BgL_classz00_2348);
																}
															else
																{	/* BackEnd/cplib.scm 196 */
																	BgL_res1864z00_2378 = ((bool_t) 0);
																}
														}
												}
											}
											BgL_test1968z00_3333 = BgL_res1864z00_2378;
										}
								}
							}
							if (BgL_test1968z00_3333)
								{	/* BackEnd/cplib.scm 197 */
									long BgL_xz00_1767;

									BgL_xz00_1767 =
										(((BgL_funz00_bglt) COBJECT(
												((BgL_funz00_bglt)
													((BgL_sfunz00_bglt) BgL_valuez00_1757))))->
										BgL_arityz00);
									if ((BgL_xz00_1767 >= 0L))
										{	/* BackEnd/cplib.scm 198 */
											obj_t BgL_za71za7_2381;

											BgL_za71za7_2381 = BINT(BgL_xz00_1767);
											{	/* BackEnd/cplib.scm 198 */
												obj_t BgL_tmpz00_2383;

												BgL_tmpz00_2383 = BINT(0L);
												{	/* BackEnd/cplib.scm 198 */
													bool_t BgL_test1973z00_3361;

													{	/* BackEnd/cplib.scm 198 */
														obj_t BgL_tmpz00_3362;

														BgL_tmpz00_3362 = BINT(1L);
														BgL_test1973z00_3361 =
															BGL_SUBFX_OV(BgL_za71za7_2381, BgL_tmpz00_3362,
															BgL_tmpz00_2383);
													}
													if (BgL_test1973z00_3361)
														{	/* BackEnd/cplib.scm 198 */
															return
																bgl_bignum_sub(bgl_long_to_bignum(
																	(long) CINT(BgL_za71za7_2381)),
																CNST_TABLE_REF(3L));
														}
													else
														{	/* BackEnd/cplib.scm 198 */
															return BgL_tmpz00_2383;
														}
												}
											}
										}
									else
										{	/* BackEnd/cplib.scm 198 */
											obj_t BgL_za71za7_2391;

											BgL_za71za7_2391 = BINT(BgL_xz00_1767);
											{	/* BackEnd/cplib.scm 198 */
												obj_t BgL_tmpz00_2393;

												BgL_tmpz00_2393 = BINT(0L);
												{	/* BackEnd/cplib.scm 198 */
													bool_t BgL_test1974z00_3371;

													{	/* BackEnd/cplib.scm 198 */
														obj_t BgL_tmpz00_3372;

														BgL_tmpz00_3372 = BINT(1L);
														BgL_test1974z00_3371 =
															BGL_ADDFX_OV(BgL_za71za7_2391, BgL_tmpz00_3372,
															BgL_tmpz00_2393);
													}
													if (BgL_test1974z00_3371)
														{	/* BackEnd/cplib.scm 198 */
															return
																bgl_bignum_add(bgl_long_to_bignum(
																	(long) CINT(BgL_za71za7_2391)),
																CNST_TABLE_REF(3L));
														}
													else
														{	/* BackEnd/cplib.scm 198 */
															return BgL_tmpz00_2393;
														}
												}
											}
										}
								}
							else
								{	/* BackEnd/cplib.scm 196 */
									return BFALSE;
								}
						}
				}
			}
		}

	}



/* &global-arity */
	obj_t BGl_z62globalzd2arityzb0zzbackend_cplibz00(obj_t BgL_envz00_2830,
		obj_t BgL_varz00_2831)
	{
		{	/* BackEnd/cplib.scm 186 */
			return
				BGl_globalzd2arityzd2zzbackend_cplibz00(
				((BgL_globalz00_bglt) BgL_varz00_2831));
		}

	}



/* for-each-declared-classes */
	BGL_EXPORTED_DEF obj_t
		BGl_forzd2eachzd2declaredzd2classeszd2zzbackend_cplibz00(obj_t
		BgL_funz00_24)
	{
		{	/* BackEnd/cplib.scm 205 */
			{	/* BackEnd/cplib.scm 206 */
				obj_t BgL_g1249z00_1769;

				BgL_g1249z00_1769 = BGl_getzd2declaredzd2classesz00zzbackend_cplibz00();
				{
					obj_t BgL_l1247z00_1771;

					{	/* BackEnd/cplib.scm 215 */
						bool_t BgL_tmpz00_3382;

						BgL_l1247z00_1771 = BgL_g1249z00_1769;
					BgL_zc3z04anonymousza31563ze3z87_1772:
						if (PAIRP(BgL_l1247z00_1771))
							{	/* BackEnd/cplib.scm 215 */
								{	/* BackEnd/cplib.scm 207 */
									obj_t BgL_cz00_1774;

									BgL_cz00_1774 = CAR(BgL_l1247z00_1771);
									{	/* BackEnd/cplib.scm 207 */
										bool_t BgL_widezf3zf3_1775;

										BgL_widezf3zf3_1775 =
											BGl_widezd2classzf3z21zzobject_classz00(BgL_cz00_1774);
										{	/* BackEnd/cplib.scm 212 */
											obj_t BgL_arg1565z00_1776;
											obj_t BgL_arg1575z00_1777;

											if (BgL_widezf3zf3_1775)
												{	/* BackEnd/cplib.scm 212 */
													BgL_arg1565z00_1776 =
														BGl_widezd2ze3chunkz31zzbackend_cplibz00(
														((BgL_typez00_bglt) BgL_cz00_1774));
												}
											else
												{	/* BackEnd/cplib.scm 212 */
													BgL_arg1565z00_1776 = BgL_cz00_1774;
												}
											if (BgL_widezf3zf3_1775)
												{	/* BackEnd/cplib.scm 214 */
													BgL_arg1575z00_1777 =
														((obj_t)
														BGl_findzd2typezd2zztype_envz00(CNST_TABLE_REF
															(0L)));
												}
											else
												{
													BgL_tclassz00_bglt BgL_auxz00_3394;

													{
														obj_t BgL_auxz00_3395;

														{	/* BackEnd/cplib.scm 214 */
															BgL_objectz00_bglt BgL_tmpz00_3396;

															BgL_tmpz00_3396 =
																((BgL_objectz00_bglt)
																((BgL_typez00_bglt) BgL_cz00_1774));
															BgL_auxz00_3395 =
																BGL_OBJECT_WIDENING(BgL_tmpz00_3396);
														}
														BgL_auxz00_3394 =
															((BgL_tclassz00_bglt) BgL_auxz00_3395);
													}
													BgL_arg1575z00_1777 =
														(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3394))->
														BgL_itszd2superzd2);
												}
											(VA_PROCEDUREP(BgL_funz00_24) ? ((obj_t(*)(obj_t,
															...))
													PROCEDURE_ENTRY(BgL_funz00_24)) (BgL_funz00_24,
													BgL_cz00_1774, BgL_arg1565z00_1776,
													BgL_arg1575z00_1777, BEOA) : ((obj_t(*)(obj_t, obj_t,
															obj_t,
															obj_t))
													PROCEDURE_ENTRY(BgL_funz00_24)) (BgL_funz00_24,
													BgL_cz00_1774, BgL_arg1565z00_1776,
													BgL_arg1575z00_1777));
										}
									}
								}
								{
									obj_t BgL_l1247z00_3408;

									BgL_l1247z00_3408 = CDR(BgL_l1247z00_1771);
									BgL_l1247z00_1771 = BgL_l1247z00_3408;
									goto BgL_zc3z04anonymousza31563ze3z87_1772;
								}
							}
						else
							{	/* BackEnd/cplib.scm 215 */
								BgL_tmpz00_3382 = ((bool_t) 1);
							}
						return BBOOL(BgL_tmpz00_3382);
					}
				}
			}
		}

	}



/* &for-each-declared-classes */
	obj_t BGl_z62forzd2eachzd2declaredzd2classeszb0zzbackend_cplibz00(obj_t
		BgL_envz00_2832, obj_t BgL_funz00_2833)
	{
		{	/* BackEnd/cplib.scm 205 */
			return
				BGl_forzd2eachzd2declaredzd2classeszd2zzbackend_cplibz00
				(BgL_funz00_2833);
		}

	}



/* get-declared-classes */
	BGL_EXPORTED_DEF obj_t BGl_getzd2declaredzd2classesz00zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 220 */
			{	/* BackEnd/cplib.scm 223 */
				obj_t BgL_rz00_1780;

				BgL_rz00_1780 = BNIL;
				{	/* BackEnd/cplib.scm 224 */
					obj_t BgL_g1252z00_1781;

					BgL_g1252z00_1781 = BGl_getzd2classzd2listz00zzobject_classz00();
					{
						obj_t BgL_l1250z00_1783;

						BgL_l1250z00_1783 = BgL_g1252z00_1781;
					BgL_zc3z04anonymousza31577ze3z87_1784:
						if (PAIRP(BgL_l1250z00_1783))
							{	/* BackEnd/cplib.scm 229 */
								{	/* BackEnd/cplib.scm 225 */
									obj_t BgL_cz00_1786;

									BgL_cz00_1786 = CAR(BgL_l1250z00_1783);
									{	/* BackEnd/cplib.scm 225 */
										bool_t BgL_test1979z00_3416;

										{	/* BackEnd/cplib.scm 225 */
											bool_t BgL_test1980z00_3417;

											{	/* BackEnd/cplib.scm 225 */
												obj_t BgL_arg1606z00_1798;

												{	/* BackEnd/cplib.scm 225 */
													BgL_globalz00_bglt BgL_arg1608z00_1799;

													{
														BgL_tclassz00_bglt BgL_auxz00_3418;

														{
															obj_t BgL_auxz00_3419;

															{	/* BackEnd/cplib.scm 225 */
																BgL_objectz00_bglt BgL_tmpz00_3420;

																BgL_tmpz00_3420 =
																	((BgL_objectz00_bglt)
																	((BgL_typez00_bglt) BgL_cz00_1786));
																BgL_auxz00_3419 =
																	BGL_OBJECT_WIDENING(BgL_tmpz00_3420);
															}
															BgL_auxz00_3418 =
																((BgL_tclassz00_bglt) BgL_auxz00_3419);
														}
														BgL_arg1608z00_1799 =
															(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3418))->
															BgL_holderz00);
													}
													BgL_arg1606z00_1798 =
														(((BgL_globalz00_bglt)
															COBJECT(BgL_arg1608z00_1799))->BgL_importz00);
												}
												BgL_test1980z00_3417 =
													(BgL_arg1606z00_1798 == CNST_TABLE_REF(4L));
											}
											if (BgL_test1980z00_3417)
												{	/* BackEnd/cplib.scm 225 */
													BgL_test1979z00_3416 = ((bool_t) 1);
												}
											else
												{	/* BackEnd/cplib.scm 225 */
													BgL_test1979z00_3416 =
														(BgL_cz00_1786 ==
														BGl_getzd2objectzd2typez00zztype_cachez00());
												}
										}
										if (BgL_test1979z00_3416)
											{	/* BackEnd/cplib.scm 225 */
												BFALSE;
											}
										else
											{	/* BackEnd/cplib.scm 227 */
												obj_t BgL_arg1595z00_1794;

												if (BGl_widezd2classzf3z21zzobject_classz00
													(BgL_cz00_1786))
													{	/* BackEnd/cplib.scm 227 */
														BgL_arg1595z00_1794 =
															BGl_widezd2ze3chunkz31zzbackend_cplibz00(
															((BgL_typez00_bglt) BgL_cz00_1786));
													}
												else
													{	/* BackEnd/cplib.scm 227 */
														BgL_arg1595z00_1794 = BgL_cz00_1786;
													}
												BgL_rz00_1780 =
													MAKE_YOUNG_PAIR(BgL_arg1595z00_1794, BgL_rz00_1780);
											}
									}
								}
								{
									obj_t BgL_l1250z00_3436;

									BgL_l1250z00_3436 = CDR(BgL_l1250z00_1783);
									BgL_l1250z00_1783 = BgL_l1250z00_3436;
									goto BgL_zc3z04anonymousza31577ze3z87_1784;
								}
							}
						else
							{	/* BackEnd/cplib.scm 229 */
								((bool_t) 1);
							}
					}
				}
				return BgL_rz00_1780;
			}
		}

	}



/* &get-declared-classes */
	obj_t BGl_z62getzd2declaredzd2classesz62zzbackend_cplibz00(obj_t
		BgL_envz00_2834)
	{
		{	/* BackEnd/cplib.scm 220 */
			return BGl_getzd2declaredzd2classesz00zzbackend_cplibz00();
		}

	}



/* type->class */
	obj_t BGl_typezd2ze3classz31zzbackend_cplibz00(BgL_typez00_bglt
		BgL_typez00_25)
	{
		{	/* BackEnd/cplib.scm 235 */
			{	/* BackEnd/cplib.scm 237 */
				bool_t BgL_test1982z00_3439;

				{	/* BackEnd/cplib.scm 237 */
					obj_t BgL_classz00_2410;

					BgL_classz00_2410 = BGl_tclassz00zzobject_classz00;
					{	/* BackEnd/cplib.scm 237 */
						BgL_objectz00_bglt BgL_arg1801z00_2412;

						{	/* BackEnd/cplib.scm 237 */
							obj_t BgL_tmpz00_3440;

							BgL_tmpz00_3440 = ((obj_t) ((BgL_objectz00_bglt) BgL_typez00_25));
							BgL_arg1801z00_2412 = (BgL_objectz00_bglt) (BgL_tmpz00_3440);
						}
						if (BGL_CONDEXPAND_ISA_ARCH64())
							{	/* BackEnd/cplib.scm 237 */
								long BgL_idxz00_2418;

								BgL_idxz00_2418 =
									BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2412);
								BgL_test1982z00_3439 =
									(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
										(BgL_idxz00_2418 + 2L)) == BgL_classz00_2410);
							}
						else
							{	/* BackEnd/cplib.scm 237 */
								bool_t BgL_res1865z00_2440;

								{	/* BackEnd/cplib.scm 237 */
									obj_t BgL_oclassz00_2426;

									{	/* BackEnd/cplib.scm 237 */
										long BgL_arg1808z00_2432;

										{	/* BackEnd/cplib.scm 237 */
											long BgL_arg1809z00_2433;

											BgL_arg1809z00_2433 =
												BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2412);
											BgL_arg1808z00_2432 = (BgL_arg1809z00_2433 - OBJECT_TYPE);
										}
										BgL_oclassz00_2426 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2432);
									}
									{	/* BackEnd/cplib.scm 237 */
										bool_t BgL__ortest_1115z00_2427;

										BgL__ortest_1115z00_2427 =
											(BgL_classz00_2410 == BgL_oclassz00_2426);
										if (BgL__ortest_1115z00_2427)
											{	/* BackEnd/cplib.scm 237 */
												BgL_res1865z00_2440 = BgL__ortest_1115z00_2427;
											}
										else
											{	/* BackEnd/cplib.scm 237 */
												long BgL_odepthz00_2428;

												BgL_odepthz00_2428 =
													BGL_CLASS_DEPTH(BgL_oclassz00_2426);
												if ((2L < BgL_odepthz00_2428))
													{	/* BackEnd/cplib.scm 237 */
														obj_t BgL_arg1797z00_2430;

														BgL_arg1797z00_2430 =
															BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2426, 2L);
														BgL_res1865z00_2440 =
															(BgL_arg1797z00_2430 == BgL_classz00_2410);
													}
												else
													{	/* BackEnd/cplib.scm 237 */
														BgL_res1865z00_2440 = ((bool_t) 0);
													}
											}
									}
								}
								BgL_test1982z00_3439 = BgL_res1865z00_2440;
							}
					}
				}
				if (BgL_test1982z00_3439)
					{	/* BackEnd/cplib.scm 237 */
						return ((obj_t) BgL_typez00_25);
					}
				else
					{	/* BackEnd/cplib.scm 239 */
						bool_t BgL_test1986z00_3461;

						{	/* BackEnd/cplib.scm 239 */
							obj_t BgL_classz00_2441;

							BgL_classz00_2441 = BGl_wclassz00zzobject_classz00;
							{	/* BackEnd/cplib.scm 239 */
								BgL_objectz00_bglt BgL_arg1801z00_2443;

								{	/* BackEnd/cplib.scm 239 */
									obj_t BgL_tmpz00_3462;

									BgL_tmpz00_3462 =
										((obj_t) ((BgL_objectz00_bglt) BgL_typez00_25));
									BgL_arg1801z00_2443 = (BgL_objectz00_bglt) (BgL_tmpz00_3462);
								}
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* BackEnd/cplib.scm 239 */
										long BgL_idxz00_2449;

										BgL_idxz00_2449 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2443);
										BgL_test1986z00_3461 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_2449 + 2L)) == BgL_classz00_2441);
									}
								else
									{	/* BackEnd/cplib.scm 239 */
										bool_t BgL_res1866z00_2471;

										{	/* BackEnd/cplib.scm 239 */
											obj_t BgL_oclassz00_2457;

											{	/* BackEnd/cplib.scm 239 */
												long BgL_arg1808z00_2463;

												{	/* BackEnd/cplib.scm 239 */
													long BgL_arg1809z00_2464;

													BgL_arg1809z00_2464 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2443);
													BgL_arg1808z00_2463 =
														(BgL_arg1809z00_2464 - OBJECT_TYPE);
												}
												BgL_oclassz00_2457 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_2463);
											}
											{	/* BackEnd/cplib.scm 239 */
												bool_t BgL__ortest_1115z00_2458;

												BgL__ortest_1115z00_2458 =
													(BgL_classz00_2441 == BgL_oclassz00_2457);
												if (BgL__ortest_1115z00_2458)
													{	/* BackEnd/cplib.scm 239 */
														BgL_res1866z00_2471 = BgL__ortest_1115z00_2458;
													}
												else
													{	/* BackEnd/cplib.scm 239 */
														long BgL_odepthz00_2459;

														BgL_odepthz00_2459 =
															BGL_CLASS_DEPTH(BgL_oclassz00_2457);
														if ((2L < BgL_odepthz00_2459))
															{	/* BackEnd/cplib.scm 239 */
																obj_t BgL_arg1797z00_2461;

																BgL_arg1797z00_2461 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_2457,
																	2L);
																BgL_res1866z00_2471 =
																	(BgL_arg1797z00_2461 == BgL_classz00_2441);
															}
														else
															{	/* BackEnd/cplib.scm 239 */
																BgL_res1866z00_2471 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test1986z00_3461 = BgL_res1866z00_2471;
									}
							}
						}
						if (BgL_test1986z00_3461)
							{
								BgL_wclassz00_bglt BgL_auxz00_3482;

								{
									obj_t BgL_auxz00_3483;

									{	/* BackEnd/cplib.scm 240 */
										BgL_objectz00_bglt BgL_tmpz00_3484;

										BgL_tmpz00_3484 =
											((BgL_objectz00_bglt)
											((BgL_typez00_bglt) BgL_typez00_25));
										BgL_auxz00_3483 = BGL_OBJECT_WIDENING(BgL_tmpz00_3484);
									}
									BgL_auxz00_3482 = ((BgL_wclassz00_bglt) BgL_auxz00_3483);
								}
								return
									(((BgL_wclassz00_bglt) COBJECT(BgL_auxz00_3482))->
									BgL_itszd2classzd2);
							}
						else
							{	/* BackEnd/cplib.scm 239 */
								return
									BGl_internalzd2errorzd2zztools_errorz00(CNST_TABLE_REF(5L),
									BGl_string1886z00zzbackend_cplibz00,
									((obj_t) BgL_typez00_25));
							}
					}
			}
		}

	}



/* get-its-super */
	BGL_EXPORTED_DEF BgL_typez00_bglt
		BGl_getzd2itszd2superz00zzbackend_cplibz00(BgL_typez00_bglt BgL_typez00_26)
	{
		{	/* BackEnd/cplib.scm 247 */
			{	/* BackEnd/cplib.scm 248 */
				obj_t BgL_arg1613z00_2474;

				BgL_arg1613z00_2474 =
					BGl_typezd2ze3classz31zzbackend_cplibz00(BgL_typez00_26);
				{
					obj_t BgL_auxz00_3494;

					{
						BgL_tclassz00_bglt BgL_auxz00_3495;

						{
							obj_t BgL_auxz00_3496;

							{	/* BackEnd/cplib.scm 248 */
								BgL_objectz00_bglt BgL_tmpz00_3497;

								BgL_tmpz00_3497 =
									((BgL_objectz00_bglt)
									((BgL_typez00_bglt) BgL_arg1613z00_2474));
								BgL_auxz00_3496 = BGL_OBJECT_WIDENING(BgL_tmpz00_3497);
							}
							BgL_auxz00_3495 = ((BgL_tclassz00_bglt) BgL_auxz00_3496);
						}
						BgL_auxz00_3494 =
							(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3495))->
							BgL_itszd2superzd2);
					}
					return ((BgL_typez00_bglt) BgL_auxz00_3494);
				}
			}
		}

	}



/* &get-its-super */
	BgL_typez00_bglt BGl_z62getzd2itszd2superz62zzbackend_cplibz00(obj_t
		BgL_envz00_2835, obj_t BgL_typez00_2836)
	{
		{	/* BackEnd/cplib.scm 247 */
			return
				BGl_getzd2itszd2superz00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_typez00_2836));
		}

	}



/* get-declared-fields */
	BGL_EXPORTED_DEF obj_t
		BGl_getzd2declaredzd2fieldsz00zzbackend_cplibz00(BgL_typez00_bglt
		BgL_typez00_27)
	{
		{	/* BackEnd/cplib.scm 253 */
			{	/* BackEnd/cplib.scm 255 */
				obj_t BgL_classz00_1805;

				BgL_classz00_1805 =
					BGl_typezd2ze3classz31zzbackend_cplibz00(BgL_typez00_27);
				{	/* BackEnd/cplib.scm 256 */
					obj_t BgL_hook1257z00_1806;

					BgL_hook1257z00_1806 = MAKE_YOUNG_PAIR(BFALSE, BNIL);
					{	/* BackEnd/cplib.scm 259 */
						obj_t BgL_g1258z00_1807;

						{
							BgL_tclassz00_bglt BgL_auxz00_3508;

							{
								obj_t BgL_auxz00_3509;

								{	/* BackEnd/cplib.scm 259 */
									BgL_objectz00_bglt BgL_tmpz00_3510;

									BgL_tmpz00_3510 =
										((BgL_objectz00_bglt)
										((BgL_typez00_bglt) BgL_classz00_1805));
									BgL_auxz00_3509 = BGL_OBJECT_WIDENING(BgL_tmpz00_3510);
								}
								BgL_auxz00_3508 = ((BgL_tclassz00_bglt) BgL_auxz00_3509);
							}
							BgL_g1258z00_1807 =
								(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3508))->BgL_slotsz00);
						}
						{
							obj_t BgL_l1254z00_1809;
							obj_t BgL_h1255z00_1810;

							BgL_l1254z00_1809 = BgL_g1258z00_1807;
							BgL_h1255z00_1810 = BgL_hook1257z00_1806;
						BgL_zc3z04anonymousza31614ze3z87_1811:
							if (NULLP(BgL_l1254z00_1809))
								{	/* BackEnd/cplib.scm 259 */
									return CDR(BgL_hook1257z00_1806);
								}
							else
								{	/* BackEnd/cplib.scm 259 */
									bool_t BgL_test1991z00_3519;

									{	/* BackEnd/cplib.scm 257 */
										BgL_slotz00_bglt BgL_slotz00_1821;

										BgL_slotz00_1821 =
											((BgL_slotz00_bglt) CAR(((obj_t) BgL_l1254z00_1809)));
										if (BGl_slotzd2virtualzf3z21zzobject_slotsz00
											(BgL_slotz00_1821))
											{	/* BackEnd/cplib.scm 257 */
												BgL_test1991z00_3519 = ((bool_t) 0);
											}
										else
											{	/* BackEnd/cplib.scm 257 */
												BgL_test1991z00_3519 =
													(BgL_classz00_1805 ==
													(((BgL_slotz00_bglt) COBJECT(BgL_slotz00_1821))->
														BgL_classzd2ownerzd2));
											}
									}
									if (BgL_test1991z00_3519)
										{	/* BackEnd/cplib.scm 259 */
											obj_t BgL_nh1256z00_1817;

											{	/* BackEnd/cplib.scm 259 */
												obj_t BgL_arg1621z00_1819;

												BgL_arg1621z00_1819 = CAR(((obj_t) BgL_l1254z00_1809));
												BgL_nh1256z00_1817 =
													MAKE_YOUNG_PAIR(BgL_arg1621z00_1819, BNIL);
											}
											SET_CDR(BgL_h1255z00_1810, BgL_nh1256z00_1817);
											{	/* BackEnd/cplib.scm 259 */
												obj_t BgL_arg1620z00_1818;

												BgL_arg1620z00_1818 = CDR(((obj_t) BgL_l1254z00_1809));
												{
													obj_t BgL_h1255z00_3534;
													obj_t BgL_l1254z00_3533;

													BgL_l1254z00_3533 = BgL_arg1620z00_1818;
													BgL_h1255z00_3534 = BgL_nh1256z00_1817;
													BgL_h1255z00_1810 = BgL_h1255z00_3534;
													BgL_l1254z00_1809 = BgL_l1254z00_3533;
													goto BgL_zc3z04anonymousza31614ze3z87_1811;
												}
											}
										}
									else
										{	/* BackEnd/cplib.scm 259 */
											obj_t BgL_arg1628z00_1820;

											BgL_arg1628z00_1820 = CDR(((obj_t) BgL_l1254z00_1809));
											{
												obj_t BgL_l1254z00_3537;

												BgL_l1254z00_3537 = BgL_arg1628z00_1820;
												BgL_l1254z00_1809 = BgL_l1254z00_3537;
												goto BgL_zc3z04anonymousza31614ze3z87_1811;
											}
										}
								}
						}
					}
				}
			}
		}

	}



/* &get-declared-fields */
	obj_t BGl_z62getzd2declaredzd2fieldsz62zzbackend_cplibz00(obj_t
		BgL_envz00_2837, obj_t BgL_typez00_2838)
	{
		{	/* BackEnd/cplib.scm 253 */
			return
				BGl_getzd2declaredzd2fieldsz00zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_typez00_2838));
		}

	}



/* get-field-type */
	BGL_EXPORTED_DEF obj_t
		BGl_getzd2fieldzd2typez00zzbackend_cplibz00(BgL_slotz00_bglt BgL_slotz00_28)
	{
		{	/* BackEnd/cplib.scm 264 */
			return (((BgL_slotz00_bglt) COBJECT(BgL_slotz00_28))->BgL_typez00);
		}

	}



/* &get-field-type */
	obj_t BGl_z62getzd2fieldzd2typez62zzbackend_cplibz00(obj_t BgL_envz00_2839,
		obj_t BgL_slotz00_2840)
	{
		{	/* BackEnd/cplib.scm 264 */
			return
				BGl_getzd2fieldzd2typez00zzbackend_cplibz00(
				((BgL_slotz00_bglt) BgL_slotz00_2840));
		}

	}



/* wide->chunk */
	BGL_EXPORTED_DEF obj_t
		BGl_widezd2ze3chunkz31zzbackend_cplibz00(BgL_typez00_bglt BgL_cz00_29)
	{
		{	/* BackEnd/cplib.scm 271 */
			{	/* BackEnd/cplib.scm 275 */
				bool_t BgL_test1993z00_3543;

				{	/* BackEnd/cplib.scm 275 */
					BgL_typez00_bglt BgL_arg1661z00_1830;
					obj_t BgL_arg1669z00_1831;

					{	/* BackEnd/cplib.scm 275 */
						obj_t BgL_arg1673z00_1832;

						{	/* BackEnd/cplib.scm 275 */
							obj_t BgL_arg1675z00_1833;

							BgL_arg1675z00_1833 =
								(((BgL_typez00_bglt) COBJECT(
										((BgL_typez00_bglt) BgL_cz00_29)))->BgL_idz00);
							BgL_arg1673z00_1832 =
								BGl_widezd2chunkzd2classzd2idzd2zzobject_classz00
								(BgL_arg1675z00_1833);
						}
						BgL_arg1661z00_1830 =
							BGl_findzd2typezd2zztype_envz00(BgL_arg1673z00_1832);
					}
					{
						BgL_tclassz00_bglt BgL_auxz00_3548;

						{
							obj_t BgL_auxz00_3549;

							{	/* BackEnd/cplib.scm 276 */
								BgL_objectz00_bglt BgL_tmpz00_3550;

								BgL_tmpz00_3550 = ((BgL_objectz00_bglt) BgL_cz00_29);
								BgL_auxz00_3549 = BGL_OBJECT_WIDENING(BgL_tmpz00_3550);
							}
							BgL_auxz00_3548 = ((BgL_tclassz00_bglt) BgL_auxz00_3549);
						}
						BgL_arg1669z00_1831 =
							(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3548))->
							BgL_widezd2typezd2);
					}
					BgL_test1993z00_3543 =
						(((obj_t) BgL_arg1661z00_1830) == BgL_arg1669z00_1831);
				}
				if (BgL_test1993z00_3543)
					{
						BgL_tclassz00_bglt BgL_auxz00_3557;

						{
							obj_t BgL_auxz00_3558;

							{	/* BackEnd/cplib.scm 278 */
								BgL_objectz00_bglt BgL_tmpz00_3559;

								BgL_tmpz00_3559 = ((BgL_objectz00_bglt) BgL_cz00_29);
								BgL_auxz00_3558 = BGL_OBJECT_WIDENING(BgL_tmpz00_3559);
							}
							BgL_auxz00_3557 = ((BgL_tclassz00_bglt) BgL_auxz00_3558);
						}
						return
							(((BgL_tclassz00_bglt) COBJECT(BgL_auxz00_3557))->
							BgL_widezd2typezd2);
					}
				else
					{	/* BackEnd/cplib.scm 275 */
						return
							BGl_errorz00zz__errorz00(BGl_string1887z00zzbackend_cplibz00,
							BGl_string1888z00zzbackend_cplibz00, ((obj_t) BgL_cz00_29));
					}
			}
		}

	}



/* &wide->chunk */
	obj_t BGl_z62widezd2ze3chunkz53zzbackend_cplibz00(obj_t BgL_envz00_2841,
		obj_t BgL_cz00_2842)
	{
		{	/* BackEnd/cplib.scm 271 */
			return
				BGl_widezd2ze3chunkz31zzbackend_cplibz00(
				((BgL_typez00_bglt) BgL_cz00_2842));
		}

	}



/* get-declared-global-variables */
	BGL_EXPORTED_DEF obj_t
		BGl_getzd2declaredzd2globalzd2variableszd2zzbackend_cplibz00(obj_t
		BgL_modulez00_30)
	{
		{	/* BackEnd/cplib.scm 283 */
			{	/* BackEnd/cplib.scm 285 */
				obj_t BgL_rz00_2851;

				BgL_rz00_2851 = MAKE_CELL(BNIL);
				{	/* BackEnd/cplib.scm 287 */
					obj_t BgL_zc3z04anonymousza31680ze3z87_2843;

					BgL_zc3z04anonymousza31680ze3z87_2843 =
						MAKE_FX_PROCEDURE
						(BGl_z62zc3z04anonymousza31680ze3ze5zzbackend_cplibz00, (int) (1L),
						(int) (2L));
					PROCEDURE_SET(BgL_zc3z04anonymousza31680ze3z87_2843, (int) (0L),
						((obj_t) BgL_rz00_2851));
					PROCEDURE_SET(BgL_zc3z04anonymousza31680ze3z87_2843, (int) (1L),
						BgL_modulez00_30);
					BGl_forzd2eachzd2globalz12z12zzast_envz00
						(BgL_zc3z04anonymousza31680ze3z87_2843, BNIL);
				}
				return CELL_REF(BgL_rz00_2851);
			}
		}

	}



/* &get-declared-global-variables */
	obj_t BGl_z62getzd2declaredzd2globalzd2variableszb0zzbackend_cplibz00(obj_t
		BgL_envz00_2844, obj_t BgL_modulez00_2845)
	{
		{	/* BackEnd/cplib.scm 283 */
			return
				BGl_getzd2declaredzd2globalzd2variableszd2zzbackend_cplibz00
				(BgL_modulez00_2845);
		}

	}



/* &<@anonymous:1680> */
	obj_t BGl_z62zc3z04anonymousza31680ze3ze5zzbackend_cplibz00(obj_t
		BgL_envz00_2846, obj_t BgL_vz00_2849)
	{
		{	/* BackEnd/cplib.scm 286 */
			{	/* BackEnd/cplib.scm 287 */
				obj_t BgL_rz00_2847;
				obj_t BgL_modulez00_2848;

				BgL_rz00_2847 = PROCEDURE_REF(BgL_envz00_2846, (int) (0L));
				BgL_modulez00_2848 = PROCEDURE_REF(BgL_envz00_2846, (int) (1L));
				{	/* BackEnd/cplib.scm 287 */
					bool_t BgL_test1994z00_3582;

					if (
						((((BgL_globalz00_bglt) COBJECT(
										((BgL_globalz00_bglt) BgL_vz00_2849)))->BgL_modulez00) ==
							BgL_modulez00_2848))
						{	/* BackEnd/cplib.scm 288 */
							bool_t BgL_test1996z00_3587;

							{	/* BackEnd/cplib.scm 288 */
								BgL_valuez00_bglt BgL_arg1708z00_2875;

								BgL_arg1708z00_2875 =
									(((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt)
												((BgL_globalz00_bglt) BgL_vz00_2849))))->BgL_valuez00);
								{	/* BackEnd/cplib.scm 288 */
									obj_t BgL_classz00_2876;

									BgL_classz00_2876 = BGl_cfunz00zzast_varz00;
									{	/* BackEnd/cplib.scm 288 */
										BgL_objectz00_bglt BgL_arg1801z00_2877;

										{	/* BackEnd/cplib.scm 288 */
											obj_t BgL_tmpz00_3591;

											BgL_tmpz00_3591 =
												((obj_t) ((BgL_objectz00_bglt) BgL_arg1708z00_2875));
											BgL_arg1801z00_2877 =
												(BgL_objectz00_bglt) (BgL_tmpz00_3591);
										}
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* BackEnd/cplib.scm 288 */
												long BgL_idxz00_2878;

												BgL_idxz00_2878 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2877);
												BgL_test1996z00_3587 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_2878 + 3L)) == BgL_classz00_2876);
											}
										else
											{	/* BackEnd/cplib.scm 288 */
												bool_t BgL_res1867z00_2881;

												{	/* BackEnd/cplib.scm 288 */
													obj_t BgL_oclassz00_2882;

													{	/* BackEnd/cplib.scm 288 */
														long BgL_arg1808z00_2883;

														{	/* BackEnd/cplib.scm 288 */
															long BgL_arg1809z00_2884;

															BgL_arg1809z00_2884 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2877);
															BgL_arg1808z00_2883 =
																(BgL_arg1809z00_2884 - OBJECT_TYPE);
														}
														BgL_oclassz00_2882 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_2883);
													}
													{	/* BackEnd/cplib.scm 288 */
														bool_t BgL__ortest_1115z00_2885;

														BgL__ortest_1115z00_2885 =
															(BgL_classz00_2876 == BgL_oclassz00_2882);
														if (BgL__ortest_1115z00_2885)
															{	/* BackEnd/cplib.scm 288 */
																BgL_res1867z00_2881 = BgL__ortest_1115z00_2885;
															}
														else
															{	/* BackEnd/cplib.scm 288 */
																long BgL_odepthz00_2886;

																BgL_odepthz00_2886 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_2882);
																if ((3L < BgL_odepthz00_2886))
																	{	/* BackEnd/cplib.scm 288 */
																		obj_t BgL_arg1797z00_2887;

																		BgL_arg1797z00_2887 =
																			BGL_CLASS_ANCESTORS_REF
																			(BgL_oclassz00_2882, 3L);
																		BgL_res1867z00_2881 =
																			(BgL_arg1797z00_2887 ==
																			BgL_classz00_2876);
																	}
																else
																	{	/* BackEnd/cplib.scm 288 */
																		BgL_res1867z00_2881 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test1996z00_3587 = BgL_res1867z00_2881;
											}
									}
								}
							}
							if (BgL_test1996z00_3587)
								{	/* BackEnd/cplib.scm 288 */
									BgL_test1994z00_3582 = ((bool_t) 0);
								}
							else
								{	/* BackEnd/cplib.scm 289 */
									bool_t BgL_test2000z00_3611;

									{	/* BackEnd/cplib.scm 289 */
										BgL_valuez00_bglt BgL_arg1707z00_2888;

										BgL_arg1707z00_2888 =
											(((BgL_variablez00_bglt) COBJECT(
													((BgL_variablez00_bglt)
														((BgL_globalz00_bglt) BgL_vz00_2849))))->
											BgL_valuez00);
										{	/* BackEnd/cplib.scm 289 */
											obj_t BgL_classz00_2889;

											BgL_classz00_2889 = BGl_sfunz00zzast_varz00;
											{	/* BackEnd/cplib.scm 289 */
												BgL_objectz00_bglt BgL_arg1801z00_2890;

												{	/* BackEnd/cplib.scm 289 */
													obj_t BgL_tmpz00_3615;

													BgL_tmpz00_3615 =
														((obj_t)
														((BgL_objectz00_bglt) BgL_arg1707z00_2888));
													BgL_arg1801z00_2890 =
														(BgL_objectz00_bglt) (BgL_tmpz00_3615);
												}
												if (BGL_CONDEXPAND_ISA_ARCH64())
													{	/* BackEnd/cplib.scm 289 */
														long BgL_idxz00_2891;

														BgL_idxz00_2891 =
															BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2890);
														BgL_test2000z00_3611 =
															(VECTOR_REF
															(BGl_za2inheritancesza2z00zz__objectz00,
																(BgL_idxz00_2891 + 3L)) == BgL_classz00_2889);
													}
												else
													{	/* BackEnd/cplib.scm 289 */
														bool_t BgL_res1868z00_2894;

														{	/* BackEnd/cplib.scm 289 */
															obj_t BgL_oclassz00_2895;

															{	/* BackEnd/cplib.scm 289 */
																long BgL_arg1808z00_2896;

																{	/* BackEnd/cplib.scm 289 */
																	long BgL_arg1809z00_2897;

																	BgL_arg1809z00_2897 =
																		BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2890);
																	BgL_arg1808z00_2896 =
																		(BgL_arg1809z00_2897 - OBJECT_TYPE);
																}
																BgL_oclassz00_2895 =
																	VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
																	BgL_arg1808z00_2896);
															}
															{	/* BackEnd/cplib.scm 289 */
																bool_t BgL__ortest_1115z00_2898;

																BgL__ortest_1115z00_2898 =
																	(BgL_classz00_2889 == BgL_oclassz00_2895);
																if (BgL__ortest_1115z00_2898)
																	{	/* BackEnd/cplib.scm 289 */
																		BgL_res1868z00_2894 =
																			BgL__ortest_1115z00_2898;
																	}
																else
																	{	/* BackEnd/cplib.scm 289 */
																		long BgL_odepthz00_2899;

																		BgL_odepthz00_2899 =
																			BGL_CLASS_DEPTH(BgL_oclassz00_2895);
																		if ((3L < BgL_odepthz00_2899))
																			{	/* BackEnd/cplib.scm 289 */
																				obj_t BgL_arg1797z00_2900;

																				BgL_arg1797z00_2900 =
																					BGL_CLASS_ANCESTORS_REF
																					(BgL_oclassz00_2895, 3L);
																				BgL_res1868z00_2894 =
																					(BgL_arg1797z00_2900 ==
																					BgL_classz00_2889);
																			}
																		else
																			{	/* BackEnd/cplib.scm 289 */
																				BgL_res1868z00_2894 = ((bool_t) 0);
																			}
																	}
															}
														}
														BgL_test2000z00_3611 = BgL_res1868z00_2894;
													}
											}
										}
									}
									if (BgL_test2000z00_3611)
										{	/* BackEnd/cplib.scm 289 */
											BgL_test1994z00_3582 = ((bool_t) 0);
										}
									else
										{	/* BackEnd/cplib.scm 289 */
											if (
												((((BgL_variablez00_bglt) COBJECT(
																((BgL_variablez00_bglt)
																	((BgL_globalz00_bglt) BgL_vz00_2849))))->
														BgL_idz00) == CNST_TABLE_REF(6L)))
												{	/* BackEnd/cplib.scm 290 */
													BgL_test1994z00_3582 = ((bool_t) 0);
												}
											else
												{	/* BackEnd/cplib.scm 290 */
													BgL_test1994z00_3582 = ((bool_t) 1);
												}
										}
								}
						}
					else
						{	/* BackEnd/cplib.scm 287 */
							BgL_test1994z00_3582 = ((bool_t) 0);
						}
					if (BgL_test1994z00_3582)
						{	/* BackEnd/cplib.scm 291 */
							obj_t BgL_auxz00_2901;

							BgL_auxz00_2901 =
								MAKE_YOUNG_PAIR(BgL_vz00_2849, CELL_REF(BgL_rz00_2847));
							return CELL_SET(BgL_rz00_2847, BgL_auxz00_2901);
						}
					else
						{	/* BackEnd/cplib.scm 287 */
							return BFALSE;
						}
				}
			}
		}

	}



/* get-global-variables-to-be-initialized */
	BGL_EXPORTED_DEF obj_t
		BGl_getzd2globalzd2variableszd2tozd2bezd2initializa7edz75zzbackend_cplibz00
		(obj_t BgL_modulez00_31)
	{
		{	/* BackEnd/cplib.scm 297 */
			{	/* BackEnd/cplib.scm 299 */
				obj_t BgL_rz00_2861;

				BgL_rz00_2861 = MAKE_CELL(BNIL);
				{	/* BackEnd/cplib.scm 301 */
					obj_t BgL_zc3z04anonymousza31712ze3z87_2853;

					BgL_zc3z04anonymousza31712ze3z87_2853 =
						MAKE_FX_PROCEDURE
						(BGl_z62zc3z04anonymousza31712ze3ze5zzbackend_cplibz00, (int) (1L),
						(int) (2L));
					PROCEDURE_SET(BgL_zc3z04anonymousza31712ze3z87_2853, (int) (0L),
						((obj_t) BgL_rz00_2861));
					PROCEDURE_SET(BgL_zc3z04anonymousza31712ze3z87_2853, (int) (1L),
						BgL_modulez00_31);
					BGl_forzd2eachzd2globalz12z12zzast_envz00
						(BgL_zc3z04anonymousza31712ze3z87_2853, BNIL);
				}
				return CELL_REF(BgL_rz00_2861);
			}
		}

	}



/* &get-global-variables-to-be-initialized */
	obj_t
		BGl_z62getzd2globalzd2variableszd2tozd2bezd2initializa7edz17zzbackend_cplibz00
		(obj_t BgL_envz00_2854, obj_t BgL_modulez00_2855)
	{
		{	/* BackEnd/cplib.scm 297 */
			return
				BGl_getzd2globalzd2variableszd2tozd2bezd2initializa7edz75zzbackend_cplibz00
				(BgL_modulez00_2855);
		}

	}



/* &<@anonymous:1712> */
	obj_t BGl_z62zc3z04anonymousza31712ze3ze5zzbackend_cplibz00(obj_t
		BgL_envz00_2856, obj_t BgL_globalz00_2859)
	{
		{	/* BackEnd/cplib.scm 300 */
			{	/* BackEnd/cplib.scm 301 */
				obj_t BgL_rz00_2857;
				obj_t BgL_modulez00_2858;

				BgL_rz00_2857 = PROCEDURE_REF(BgL_envz00_2856, (int) (0L));
				BgL_modulez00_2858 = PROCEDURE_REF(BgL_envz00_2856, (int) (1L));
				{	/* BackEnd/cplib.scm 301 */
					bool_t BgL_test2005z00_3656;

					if (
						((((BgL_globalz00_bglt) COBJECT(
										((BgL_globalz00_bglt) BgL_globalz00_2859)))->
								BgL_modulez00) == BgL_modulez00_2858))
						{	/* BackEnd/cplib.scm 301 */
							if (BGl_requirezd2prototypezf3z21zzbackend_c_prototypez00(
									((BgL_globalz00_bglt) BgL_globalz00_2859)))
								{	/* BackEnd/cplib.scm 304 */
									BgL_valuez00_bglt BgL_arg1733z00_2902;

									BgL_arg1733z00_2902 =
										(((BgL_variablez00_bglt) COBJECT(
												((BgL_variablez00_bglt)
													((BgL_globalz00_bglt) BgL_globalz00_2859))))->
										BgL_valuez00);
									{	/* BackEnd/cplib.scm 304 */
										obj_t BgL_classz00_2903;

										BgL_classz00_2903 = BGl_scnstz00zzast_varz00;
										{	/* BackEnd/cplib.scm 304 */
											BgL_objectz00_bglt BgL_arg1801z00_2904;

											{	/* BackEnd/cplib.scm 304 */
												obj_t BgL_tmpz00_3667;

												BgL_tmpz00_3667 =
													((obj_t) ((BgL_objectz00_bglt) BgL_arg1733z00_2902));
												BgL_arg1801z00_2904 =
													(BgL_objectz00_bglt) (BgL_tmpz00_3667);
											}
											if (BGL_CONDEXPAND_ISA_ARCH64())
												{	/* BackEnd/cplib.scm 304 */
													long BgL_idxz00_2905;

													BgL_idxz00_2905 =
														BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_2904);
													BgL_test2005z00_3656 =
														(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
															(BgL_idxz00_2905 + 2L)) == BgL_classz00_2903);
												}
											else
												{	/* BackEnd/cplib.scm 304 */
													bool_t BgL_res1869z00_2908;

													{	/* BackEnd/cplib.scm 304 */
														obj_t BgL_oclassz00_2909;

														{	/* BackEnd/cplib.scm 304 */
															long BgL_arg1808z00_2910;

															{	/* BackEnd/cplib.scm 304 */
																long BgL_arg1809z00_2911;

																BgL_arg1809z00_2911 =
																	BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_2904);
																BgL_arg1808z00_2910 =
																	(BgL_arg1809z00_2911 - OBJECT_TYPE);
															}
															BgL_oclassz00_2909 =
																VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
																BgL_arg1808z00_2910);
														}
														{	/* BackEnd/cplib.scm 304 */
															bool_t BgL__ortest_1115z00_2912;

															BgL__ortest_1115z00_2912 =
																(BgL_classz00_2903 == BgL_oclassz00_2909);
															if (BgL__ortest_1115z00_2912)
																{	/* BackEnd/cplib.scm 304 */
																	BgL_res1869z00_2908 =
																		BgL__ortest_1115z00_2912;
																}
															else
																{	/* BackEnd/cplib.scm 304 */
																	long BgL_odepthz00_2913;

																	BgL_odepthz00_2913 =
																		BGL_CLASS_DEPTH(BgL_oclassz00_2909);
																	if ((2L < BgL_odepthz00_2913))
																		{	/* BackEnd/cplib.scm 304 */
																			obj_t BgL_arg1797z00_2914;

																			BgL_arg1797z00_2914 =
																				BGL_CLASS_ANCESTORS_REF
																				(BgL_oclassz00_2909, 2L);
																			BgL_res1869z00_2908 =
																				(BgL_arg1797z00_2914 ==
																				BgL_classz00_2903);
																		}
																	else
																		{	/* BackEnd/cplib.scm 304 */
																			BgL_res1869z00_2908 = ((bool_t) 0);
																		}
																}
														}
													}
													BgL_test2005z00_3656 = BgL_res1869z00_2908;
												}
										}
									}
								}
							else
								{	/* BackEnd/cplib.scm 303 */
									BgL_test2005z00_3656 = ((bool_t) 0);
								}
						}
					else
						{	/* BackEnd/cplib.scm 301 */
							BgL_test2005z00_3656 = ((bool_t) 0);
						}
					if (BgL_test2005z00_3656)
						{	/* BackEnd/cplib.scm 305 */
							obj_t BgL_auxz00_2915;

							BgL_auxz00_2915 =
								MAKE_YOUNG_PAIR(BgL_globalz00_2859, CELL_REF(BgL_rz00_2857));
							return CELL_SET(BgL_rz00_2857, BgL_auxz00_2915);
						}
					else
						{	/* BackEnd/cplib.scm 301 */
							return BFALSE;
						}
				}
			}
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zzbackend_cplibz00(void)
	{
		{	/* BackEnd/cplib.scm 15 */
			BGl_modulezd2initializa7ationz75zztools_shapez00(365925558L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zztype_typez00(515343395L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zztype_envz00(296457443L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzast_varz00(90839984L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzast_nodez00(469732712L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzast_envz00(146730773L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zztype_cachez00(346491734L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzcnst_nodez00(89013043L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzobject_classz00(502007119L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzobject_slotsz00(151271251L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzread_jvmz00(261574382L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzmodule_javaz00(93941037L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzengine_paramz00(517137079L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			BGl_modulezd2initializa7ationz75zzbackend_c_prototypez00(364917963L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
			return
				BGl_modulezd2initializa7ationz75zztools_errorz00(300504031L,
				BSTRING_TO_STRING(BGl_string1889z00zzbackend_cplibz00));
		}

	}

#ifdef __cplusplus
}
#endif
