/*===========================================================================*/
/*   (Cfa/pair.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 Cfa/pair.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_CFA_PAIR_TYPE_DEFINITIONS
#define BGL_CFA_PAIR_TYPE_DEFINITIONS

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

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

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

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

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

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

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

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

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

	typedef struct BgL_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_approxz00_bgl
	{
		header_t header;
		obj_t widening;
		struct BgL_typez00_bgl *BgL_typez00;
		bool_t BgL_typezd2lockedzf3z21;
		obj_t BgL_allocsz00;
		bool_t BgL_topzf3zf3;
		long BgL_lostzd2stampzd2;
		obj_t BgL_dupz00;
		bool_t BgL_haszd2procedurezf3z21;
	}                *BgL_approxz00_bglt;

	typedef struct BgL_prezd2conszd2appz00_bgl
	{
		struct BgL_variablez00_bgl *BgL_ownerz00;
	}                          *BgL_prezd2conszd2appz00_bglt;

	typedef struct BgL_prezd2conszd2refzd2appzd2_bgl
	{
		obj_t BgL_getz00;
	}                                *BgL_prezd2conszd2refzd2appzd2_bglt;

	typedef struct BgL_prezd2conszd2setz12zd2appzc0_bgl
	{
		obj_t BgL_getz00;
	}                                   *BgL_prezd2conszd2setz12zd2appzc0_bglt;

	typedef struct BgL_conszd2appzd2_bgl
	{
		struct BgL_approxz00_bgl *BgL_approxz00;
		obj_t BgL_approxesz00;
		long BgL_lostzd2stampzd2;
		struct BgL_variablez00_bgl *BgL_ownerz00;
		obj_t BgL_stackzd2stampzd2;
		bool_t BgL_seenzf3zf3;
	}                    *BgL_conszd2appzd2_bglt;

	typedef struct BgL_conszd2refzd2appz00_bgl
	{
		struct BgL_approxz00_bgl *BgL_approxz00;
		obj_t BgL_getz00;
	}                          *BgL_conszd2refzd2appz00_bglt;

	typedef struct BgL_conszd2setz12zd2appz12_bgl
	{
		struct BgL_approxz00_bgl *BgL_approxz00;
		obj_t BgL_getz00;
	}                             *BgL_conszd2setz12zd2appz12_bglt;


#endif													// BGL_CFA_PAIR_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	extern obj_t
		BGl_za2optimzd2cfazd2pairzd2quotezd2maxzd2lengthza2zd2zzengine_paramz00;
	static obj_t BGl_z62unpatchzd2pairzd2setz12z70zzcfa_pairz00(obj_t);
	static obj_t BGl_z62patchzd2pairzd2setz12z70zzcfa_pairz00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31777ze3ze5zzcfa_pairz00(obj_t, obj_t);
	static obj_t BGl_objectzd2initzd2zzcfa_pairz00(void);
	extern obj_t BGl_forzd2eachzd2approxzd2alloczd2zzcfa_approxz00(obj_t,
		BgL_approxz00_bglt);
	BGL_EXPORTED_DECL obj_t
		BGl_pairzd2optimzd2quotezd2maxlenzd2zzcfa_pairz00(void);
	static obj_t BGl_methodzd2initzd2zzcfa_pairz00(void);
	extern BgL_typez00_bglt
		BGl_getzd2bigloozd2typez00zztype_cachez00(BgL_typez00_bglt);
	static BgL_approxz00_bglt
		BGl_z62cfaz12zd2conszd2refzd2app1582za2zzcfa_pairz00(obj_t, obj_t);
	extern obj_t BGl_prezd2conszd2refzd2appzd2zzcfa_info2z00;
	static obj_t BGl_z62nodezd2setupz12zd2prezd2cons1573za2zzcfa_pairz00(obj_t,
		obj_t);
	extern obj_t BGl_za2objza2z00zztype_cachez00;
	static obj_t BGl_z62nodezd2setupz12zd2prezd2cons1576za2zzcfa_pairz00(obj_t,
		obj_t);
	static obj_t BGl_z62loosezd2allocz12zd2conszd2ap1586za2zzcfa_pairz00(obj_t,
		obj_t);
	static obj_t BGl_z62nodezd2setupz12zd2prezd2cons1578za2zzcfa_pairz00(obj_t,
		obj_t);
	extern obj_t BGl_cfunz00zzast_varz00;
	extern BgL_approxz00_bglt
		BGl_unionzd2approxz12zc0zzcfa_approxz00(BgL_approxz00_bglt,
		BgL_approxz00_bglt);
	static obj_t BGl_gczd2rootszd2initz00zzcfa_pairz00(void);
	extern BgL_approxz00_bglt BGl_makezd2emptyzd2approxz00zzcfa_approxz00(void);
	BGL_EXPORTED_DECL obj_t BGl_unpatchzd2pairzd2setz12z12zzcfa_pairz00(void);
	extern obj_t BGl_prezd2conszd2setz12zd2appzc0zzcfa_info2z00;
	static obj_t BGl_z62zc3z04anonymousza31830ze3ze5zzcfa_pairz00(obj_t, obj_t);
	static obj_t BGl_z62pairzd2optimzd2quotezd2maxlenzb0zzcfa_pairz00(obj_t);
	extern obj_t BGl_conszd2setz12zd2appz12zzcfa_info2z00;
	BGL_IMPORT obj_t BGl_genericzd2addzd2methodz12z12zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	extern obj_t BGl_za2cfazd2stampza2zd2zzcfa_iteratez00;
	extern obj_t BGl_approxzd2setzd2topz12z12zzcfa_approxz00(BgL_approxz00_bglt);
	extern obj_t BGl_za2optimzd2cfazd2pairzf3za2zf3zzengine_paramz00;
	extern obj_t BGl_za2optimza2z00zzengine_paramz00;
	extern obj_t BGl_nodezd2setupza2z12z62zzcfa_setupz00(obj_t);
	static obj_t BGl_requirezd2initializa7ationz75zzcfa_pairz00 = BUNSPEC;
	extern obj_t BGl_conszd2appzd2zzcfa_info2z00;
	BGL_IMPORT obj_t BGl_za2classesza2z00zz__objectz00;
	BGL_EXPORTED_DECL bool_t BGl_pairzd2optimzf3z21zzcfa_pairz00(void);
	BGL_EXPORTED_DECL obj_t BGl_patchzd2pairzd2setz12z12zzcfa_pairz00(void);
	static obj_t BGl_toplevelzd2initzd2zzcfa_pairz00(void);
	static obj_t BGl_genericzd2initzd2zzcfa_pairz00(void);
	extern BgL_typez00_bglt BGl_getzd2defaultzd2typez00zztype_cachez00(void);
	extern obj_t BGl_conszd2refzd2appz00zzcfa_info2z00;
	BGL_IMPORT obj_t BGl_za2inheritancesza2z00zz__objectz00;
	extern BgL_approxz00_bglt BGl_loosez12z12zzcfa_loosez00(BgL_approxz00_bglt,
		obj_t);
	static BgL_approxz00_bglt
		BGl_z62cfaz12zd2conszd2app1580z70zzcfa_pairz00(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_z62pairzd2optimzf3z43zzcfa_pairz00(obj_t);
	extern obj_t BGl_findzd2globalzd2zzast_envz00(obj_t, obj_t);
	extern BgL_approxz00_bglt
		BGl_makezd2typezd2alloczd2approxzd2zzcfa_approxz00(BgL_typez00_bglt,
		BgL_nodez00_bglt);
	extern obj_t BGl_za2pairza2z00zztype_cachez00;
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzcfa_pairz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_tvectorz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_approxz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_setupz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_cfaz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_iteratez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_loosez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_info3z00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_info2z00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzcfa_infoz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(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_cachez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zztools_tracez00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(long,
		char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(long,
		char *);
	BGL_IMPORT obj_t
		BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(long, char *);
	BGL_IMPORT obj_t
		BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
	BGL_IMPORT obj_t
		BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
	static obj_t BGl_cnstzd2initzd2zzcfa_pairz00(void);
	static obj_t BGl_libraryzd2moduleszd2initz00zzcfa_pairz00(void);
	static obj_t BGl_importedzd2moduleszd2initz00zzcfa_pairz00(void);
	extern obj_t BGl_findzd2globalzf2modulez20zzast_envz00(obj_t, obj_t);
	extern BgL_approxz00_bglt
		BGl_makezd2typezd2approxz00zzcfa_approxz00(BgL_typez00_bglt);
	extern obj_t BGl_za2unspecza2z00zztype_cachez00;
	extern obj_t BGl_prezd2conszd2appz00zzcfa_info2z00;
	extern BgL_approxz00_bglt BGl_cfaz12z12zzcfa_cfaz00(BgL_nodez00_bglt);
	BGL_IMPORT obj_t BGl_classzd2superzd2zz__objectz00(obj_t);
	extern obj_t BGl_approxzd2setzd2typez12z12zzcfa_approxz00(BgL_approxz00_bglt,
		BgL_typez00_bglt);
	static BgL_approxz00_bglt
		BGl_z62cfaz12zd2conszd2setz12zd2app1584zb0zzcfa_pairz00(obj_t, obj_t);
	extern obj_t BGl_globalz00zzast_varz00;
	static obj_t __cnst[4];


	   
		 
		DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2085z00zzcfa_pairz00,
		BgL_bgl_za762nodeza7d2setupza72098za7,
		BGl_z62nodezd2setupz12zd2prezd2cons1573za2zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2087z00zzcfa_pairz00,
		BgL_bgl_za762nodeza7d2setupza72099za7,
		BGl_z62nodezd2setupz12zd2prezd2cons1576za2zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2088z00zzcfa_pairz00,
		BgL_bgl_za762nodeza7d2setupza72100za7,
		BGl_z62nodezd2setupz12zd2prezd2cons1578za2zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2089z00zzcfa_pairz00,
		BgL_bgl_za762cfaza712za7d2cons2101za7,
		BGl_z62cfaz12zd2conszd2app1580z70zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2091z00zzcfa_pairz00,
		BgL_bgl_za762cfaza712za7d2cons2102za7,
		BGl_z62cfaz12zd2conszd2refzd2app1582za2zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2092z00zzcfa_pairz00,
		BgL_bgl_za762cfaza712za7d2cons2103za7,
		BGl_z62cfaz12zd2conszd2setz12zd2app1584zb0zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2093z00zzcfa_pairz00,
		BgL_bgl_za762looseza7d2alloc2104z00,
		BGl_z62loosezd2allocz12zd2conszd2ap1586za2zzcfa_pairz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_pairzd2optimzf3zd2envzf3zzcfa_pairz00,
		BgL_bgl_za762pairza7d2optimza72105za7,
		BGl_z62pairzd2optimzf3z43zzcfa_pairz00, 0L, BUNSPEC, 0);
	extern obj_t BGl_cfaz12zd2envzc0zzcfa_cfaz00;
	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_unpatchzd2pairzd2setz12zd2envzc0zzcfa_pairz00,
		BgL_bgl_za762unpatchza7d2pai2106z00,
		BGl_z62unpatchzd2pairzd2setz12z70zzcfa_pairz00, 0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_patchzd2pairzd2setz12zd2envzc0zzcfa_pairz00,
		BgL_bgl_za762patchza7d2pairza72107za7,
		BGl_z62patchzd2pairzd2setz12z70zzcfa_pairz00, 0L, BUNSPEC, 0);
	extern obj_t BGl_nodezd2setupz12zd2envz12zzcfa_setupz00;
	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_pairzd2optimzd2quotezd2maxlenzd2envz00zzcfa_pairz00,
		BgL_bgl_za762pairza7d2optimza72108za7,
		BGl_z62pairzd2optimzd2quotezd2maxlenzb0zzcfa_pairz00, 0L, BUNSPEC, 0);
	      DEFINE_STRING(BGl_string2086z00zzcfa_pairz00,
		BgL_bgl_string2086za700za7za7c2109za7, "node-setup!", 11);
	      DEFINE_STRING(BGl_string2090z00zzcfa_pairz00,
		BgL_bgl_string2090za700za7za7c2110za7, "cfa!::approx", 12);
	      DEFINE_STRING(BGl_string2094z00zzcfa_pairz00,
		BgL_bgl_string2094za700za7za7c2111za7, "loose-alloc!", 12);
	      DEFINE_STRING(BGl_string2095z00zzcfa_pairz00,
		BgL_bgl_string2095za700za7za7c2112za7, "cfa_pair", 8);
	      DEFINE_STRING(BGl_string2096z00zzcfa_pairz00,
		BgL_bgl_string2096za700za7za7c2113za7,
		"all pair? $pair? ((@ cons __r4_pairs_and_lists_6_3) (@ set-car! __r4_pairs_and_lists_6_3) (@ set-cdr! __r4_pairs_and_lists_6_3) (@ $cons foreign) (@ $set-car! foreign) (@ $set-cdr! foreign)) ",
		191);
	extern obj_t BGl_loosezd2allocz12zd2envz12zzcfa_loosez00;

/* 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_requirezd2initializa7ationz75zzcfa_pairz00));
#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_modulezd2initializa7ationz75zzcfa_pairz00(long
		BgL_checksumz00_4864, char *BgL_fromz00_4865)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zzcfa_pairz00))
				{
					BGl_requirezd2initializa7ationz75zzcfa_pairz00 = BBOOL(((bool_t) 0));
					BGl_gczd2rootszd2initz00zzcfa_pairz00();
					BGl_libraryzd2moduleszd2initz00zzcfa_pairz00();
					BGl_cnstzd2initzd2zzcfa_pairz00();
					BGl_importedzd2moduleszd2initz00zzcfa_pairz00();
					BGl_methodzd2initzd2zzcfa_pairz00();
					return BGl_toplevelzd2initzd2zzcfa_pairz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* library-modules-init */
	obj_t BGl_libraryzd2moduleszd2initz00zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			BGl_modulezd2initializa7ationz75zz__objectz00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__readerz00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(0L, "cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(0L,
				"cfa_pair");
			BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(0L,
				"cfa_pair");
			return BUNSPEC;
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			{	/* Cfa/pair.scm 17 */
				obj_t BgL_cportz00_4727;

				{	/* Cfa/pair.scm 17 */
					obj_t BgL_stringz00_4734;

					BgL_stringz00_4734 = BGl_string2096z00zzcfa_pairz00;
					{	/* Cfa/pair.scm 17 */
						obj_t BgL_startz00_4735;

						BgL_startz00_4735 = BINT(0L);
						{	/* Cfa/pair.scm 17 */
							obj_t BgL_endz00_4736;

							BgL_endz00_4736 =
								BINT(STRING_LENGTH(((obj_t) BgL_stringz00_4734)));
							{	/* Cfa/pair.scm 17 */

								BgL_cportz00_4727 =
									BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00
									(BgL_stringz00_4734, BgL_startz00_4735, BgL_endz00_4736);
				}}}}
				{
					long BgL_iz00_4728;

					BgL_iz00_4728 = 3L;
				BgL_loopz00_4729:
					if ((BgL_iz00_4728 == -1L))
						{	/* Cfa/pair.scm 17 */
							return BUNSPEC;
						}
					else
						{	/* Cfa/pair.scm 17 */
							{	/* Cfa/pair.scm 17 */
								obj_t BgL_arg2097z00_4730;

								{	/* Cfa/pair.scm 17 */

									{	/* Cfa/pair.scm 17 */
										obj_t BgL_locationz00_4732;

										BgL_locationz00_4732 = BBOOL(((bool_t) 0));
										{	/* Cfa/pair.scm 17 */

											BgL_arg2097z00_4730 =
												BGl_readz00zz__readerz00(BgL_cportz00_4727,
												BgL_locationz00_4732);
										}
									}
								}
								{	/* Cfa/pair.scm 17 */
									int BgL_tmpz00_4892;

									BgL_tmpz00_4892 = (int) (BgL_iz00_4728);
									CNST_TABLE_SET(BgL_tmpz00_4892, BgL_arg2097z00_4730);
							}}
							{	/* Cfa/pair.scm 17 */
								int BgL_auxz00_4733;

								BgL_auxz00_4733 = (int) ((BgL_iz00_4728 - 1L));
								{
									long BgL_iz00_4897;

									BgL_iz00_4897 = (long) (BgL_auxz00_4733);
									BgL_iz00_4728 = BgL_iz00_4897;
									goto BgL_loopz00_4729;
								}
							}
						}
				}
			}
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			return BUNSPEC;
		}

	}



/* pair-optim? */
	BGL_EXPORTED_DEF bool_t BGl_pairzd2optimzf3z21zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 44 */
			if (((long) CINT(BGl_za2optimza2z00zzengine_paramz00) >= 2L))
				{	/* Cfa/pair.scm 45 */
					return CBOOL(BGl_za2optimzd2cfazd2pairzf3za2zf3zzengine_paramz00);
				}
			else
				{	/* Cfa/pair.scm 45 */
					return ((bool_t) 0);
				}
		}

	}



/* &pair-optim? */
	obj_t BGl_z62pairzd2optimzf3z43zzcfa_pairz00(obj_t BgL_envz00_4687)
	{
		{	/* Cfa/pair.scm 44 */
			return BBOOL(BGl_pairzd2optimzf3z21zzcfa_pairz00());
		}

	}



/* pair-optim-quote-maxlen */
	BGL_EXPORTED_DEF obj_t BGl_pairzd2optimzd2quotezd2maxlenzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 50 */
			return
				BGl_za2optimzd2cfazd2pairzd2quotezd2maxzd2lengthza2zd2zzengine_paramz00;
		}

	}



/* &pair-optim-quote-maxlen */
	obj_t BGl_z62pairzd2optimzd2quotezd2maxlenzb0zzcfa_pairz00(obj_t
		BgL_envz00_4688)
	{
		{	/* Cfa/pair.scm 50 */
			return BGl_pairzd2optimzd2quotezd2maxlenzd2zzcfa_pairz00();
		}

	}



/* patch-pair-set! */
	BGL_EXPORTED_DEF obj_t BGl_patchzd2pairzd2setz12z12zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 59 */
			if (BGl_pairzd2optimzf3z21zzcfa_pairz00())
				{	/* Cfa/pair.scm 62 */
					{	/* Cfa/pair.scm 63 */
						obj_t BgL_g1568z00_3421;

						BgL_g1568z00_3421 = CNST_TABLE_REF(0L);
						{
							obj_t BgL_l1566z00_3423;

							BgL_l1566z00_3423 = BgL_g1568z00_3421;
						BgL_zc3z04anonymousza31594ze3z87_3424:
							if (PAIRP(BgL_l1566z00_3423))
								{	/* Cfa/pair.scm 74 */
									{	/* Cfa/pair.scm 64 */
										obj_t BgL_idz00_3426;

										BgL_idz00_3426 = CAR(BgL_l1566z00_3423);
										{	/* Cfa/pair.scm 64 */
											obj_t BgL_gz00_3427;

											{	/* Cfa/pair.scm 64 */
												obj_t BgL_arg1620z00_3440;
												obj_t BgL_arg1621z00_3441;

												{	/* Cfa/pair.scm 64 */
													obj_t BgL_pairz00_4183;

													BgL_pairz00_4183 = CDR(((obj_t) BgL_idz00_3426));
													BgL_arg1620z00_3440 = CAR(BgL_pairz00_4183);
												}
												{	/* Cfa/pair.scm 64 */
													obj_t BgL_pairz00_4189;

													{	/* Cfa/pair.scm 64 */
														obj_t BgL_pairz00_4188;

														BgL_pairz00_4188 = CDR(((obj_t) BgL_idz00_3426));
														BgL_pairz00_4189 = CDR(BgL_pairz00_4188);
													}
													BgL_arg1621z00_3441 = CAR(BgL_pairz00_4189);
												}
												BgL_gz00_3427 =
													BGl_findzd2globalzf2modulez20zzast_envz00
													(BgL_arg1620z00_3440, BgL_arg1621z00_3441);
											}
											{	/* Cfa/pair.scm 64 */
												BgL_valuez00_bglt BgL_funz00_3428;

												BgL_funz00_3428 =
													(((BgL_variablez00_bglt) COBJECT(
															((BgL_variablez00_bglt)
																((BgL_globalz00_bglt) BgL_gz00_3427))))->
													BgL_valuez00);
												{	/* Cfa/pair.scm 65 */

													{	/* Cfa/pair.scm 66 */
														BgL_valuez00_bglt BgL_arg1597z00_3429;

														BgL_arg1597z00_3429 =
															(((BgL_variablez00_bglt) COBJECT(
																	((BgL_variablez00_bglt)
																		((BgL_globalz00_bglt) BgL_gz00_3427))))->
															BgL_valuez00);
														((((BgL_funz00_bglt) COBJECT(((BgL_funz00_bglt)
																			BgL_arg1597z00_3429)))->BgL_topzf3zf3) =
															((bool_t) ((bool_t) 0)), BUNSPEC);
													}
													{	/* Cfa/pair.scm 67 */
														bool_t BgL_test2119z00_4929;

														{	/* Cfa/pair.scm 67 */
															obj_t BgL_classz00_4194;

															BgL_classz00_4194 = BGl_cfunz00zzast_varz00;
															{	/* Cfa/pair.scm 67 */
																BgL_objectz00_bglt BgL_arg1801z00_4196;

																{	/* Cfa/pair.scm 67 */
																	obj_t BgL_tmpz00_4930;

																	BgL_tmpz00_4930 =
																		((obj_t)
																		((BgL_objectz00_bglt) BgL_funz00_3428));
																	BgL_arg1801z00_4196 =
																		(BgL_objectz00_bglt) (BgL_tmpz00_4930);
																}
																if (BGL_CONDEXPAND_ISA_ARCH64())
																	{	/* Cfa/pair.scm 67 */
																		long BgL_idxz00_4202;

																		BgL_idxz00_4202 =
																			BGL_OBJECT_INHERITANCE_NUM
																			(BgL_arg1801z00_4196);
																		BgL_test2119z00_4929 =
																			(VECTOR_REF
																			(BGl_za2inheritancesza2z00zz__objectz00,
																				(BgL_idxz00_4202 + 3L)) ==
																			BgL_classz00_4194);
																	}
																else
																	{	/* Cfa/pair.scm 67 */
																		bool_t BgL_res2072z00_4224;

																		{	/* Cfa/pair.scm 67 */
																			obj_t BgL_oclassz00_4210;

																			{	/* Cfa/pair.scm 67 */
																				long BgL_arg1808z00_4216;

																				{	/* Cfa/pair.scm 67 */
																					long BgL_arg1809z00_4217;

																					BgL_arg1809z00_4217 =
																						BGL_OBJECT_CLASS_NUM
																						(BgL_arg1801z00_4196);
																					BgL_arg1808z00_4216 =
																						(BgL_arg1809z00_4217 - OBJECT_TYPE);
																				}
																				BgL_oclassz00_4210 =
																					VECTOR_REF
																					(BGl_za2classesza2z00zz__objectz00,
																					BgL_arg1808z00_4216);
																			}
																			{	/* Cfa/pair.scm 67 */
																				bool_t BgL__ortest_1115z00_4211;

																				BgL__ortest_1115z00_4211 =
																					(BgL_classz00_4194 ==
																					BgL_oclassz00_4210);
																				if (BgL__ortest_1115z00_4211)
																					{	/* Cfa/pair.scm 67 */
																						BgL_res2072z00_4224 =
																							BgL__ortest_1115z00_4211;
																					}
																				else
																					{	/* Cfa/pair.scm 67 */
																						long BgL_odepthz00_4212;

																						BgL_odepthz00_4212 =
																							BGL_CLASS_DEPTH
																							(BgL_oclassz00_4210);
																						if ((3L < BgL_odepthz00_4212))
																							{	/* Cfa/pair.scm 67 */
																								obj_t BgL_arg1797z00_4214;

																								BgL_arg1797z00_4214 =
																									BGL_CLASS_ANCESTORS_REF
																									(BgL_oclassz00_4210, 3L);
																								BgL_res2072z00_4224 =
																									(BgL_arg1797z00_4214 ==
																									BgL_classz00_4194);
																							}
																						else
																							{	/* Cfa/pair.scm 67 */
																								BgL_res2072z00_4224 =
																									((bool_t) 0);
																							}
																					}
																			}
																		}
																		BgL_test2119z00_4929 = BgL_res2072z00_4224;
																	}
															}
														}
														if (BgL_test2119z00_4929)
															{	/* Cfa/pair.scm 68 */
																obj_t BgL_argsz00_3431;

																BgL_argsz00_3431 =
																	(((BgL_cfunz00_bglt) COBJECT(
																			((BgL_cfunz00_bglt) BgL_funz00_3428)))->
																	BgL_argszd2typezd2);
																{	/* Cfa/pair.scm 69 */
																	BgL_typez00_bglt BgL_arg1606z00_3432;

																	BgL_arg1606z00_3432 =
																		BGl_getzd2defaultzd2typez00zztype_cachez00
																		();
																	{	/* Cfa/pair.scm 69 */
																		obj_t BgL_auxz00_4955;
																		obj_t BgL_tmpz00_4953;

																		BgL_auxz00_4955 =
																			((obj_t) BgL_arg1606z00_3432);
																		BgL_tmpz00_4953 =
																			((obj_t) BgL_argsz00_3431);
																		SET_CAR(BgL_tmpz00_4953, BgL_auxz00_4955);
																	}
																}
																{	/* Cfa/pair.scm 70 */
																	obj_t BgL_arg1608z00_3433;
																	BgL_typez00_bglt BgL_arg1609z00_3434;

																	BgL_arg1608z00_3433 =
																		CDR(((obj_t) BgL_argsz00_3431));
																	BgL_arg1609z00_3434 =
																		BGl_getzd2defaultzd2typez00zztype_cachez00
																		();
																	{	/* Cfa/pair.scm 70 */
																		obj_t BgL_auxz00_4963;
																		obj_t BgL_tmpz00_4961;

																		BgL_auxz00_4963 =
																			((obj_t) BgL_arg1609z00_3434);
																		BgL_tmpz00_4961 =
																			((obj_t) BgL_arg1608z00_3433);
																		SET_CAR(BgL_tmpz00_4961, BgL_auxz00_4963);
																	}
																}
															}
														else
															{	/* Cfa/pair.scm 71 */
																obj_t BgL_argsz00_3435;

																BgL_argsz00_3435 =
																	(((BgL_sfunz00_bglt) COBJECT(
																			((BgL_sfunz00_bglt) BgL_funz00_3428)))->
																	BgL_argsz00);
																{	/* Cfa/pair.scm 72 */
																	obj_t BgL_arg1613z00_3436;
																	BgL_typez00_bglt BgL_arg1614z00_3437;

																	BgL_arg1613z00_3436 =
																		CAR(((obj_t) BgL_argsz00_3435));
																	BgL_arg1614z00_3437 =
																		BGl_getzd2defaultzd2typez00zztype_cachez00
																		();
																	((((BgL_variablez00_bglt)
																				COBJECT(((BgL_variablez00_bglt) (
																							(BgL_localz00_bglt)
																							BgL_arg1613z00_3436))))->
																			BgL_typez00) =
																		((BgL_typez00_bglt) BgL_arg1614z00_3437),
																		BUNSPEC);
																}
																{	/* Cfa/pair.scm 73 */
																	obj_t BgL_arg1615z00_3438;
																	BgL_typez00_bglt BgL_arg1616z00_3439;

																	{	/* Cfa/pair.scm 73 */
																		obj_t BgL_pairz00_4236;

																		BgL_pairz00_4236 =
																			CDR(((obj_t) BgL_argsz00_3435));
																		BgL_arg1615z00_3438 = CAR(BgL_pairz00_4236);
																	}
																	BgL_arg1616z00_3439 =
																		BGl_getzd2defaultzd2typez00zztype_cachez00
																		();
																	((((BgL_variablez00_bglt)
																				COBJECT(((BgL_variablez00_bglt) (
																							(BgL_localz00_bglt)
																							BgL_arg1615z00_3438))))->
																			BgL_typez00) =
																		((BgL_typez00_bglt) BgL_arg1616z00_3439),
																		BUNSPEC);
																}
															}
													}
												}
											}
										}
									}
									{
										obj_t BgL_l1566z00_4981;

										BgL_l1566z00_4981 = CDR(BgL_l1566z00_3423);
										BgL_l1566z00_3423 = BgL_l1566z00_4981;
										goto BgL_zc3z04anonymousza31594ze3z87_3424;
									}
								}
							else
								{	/* Cfa/pair.scm 74 */
									((bool_t) 1);
								}
						}
					}
					{	/* Cfa/pair.scm 80 */
						obj_t BgL_gz00_3444;

						BgL_gz00_3444 =
							BGl_findzd2globalzd2zzast_envz00(CNST_TABLE_REF(1L), BNIL);
						{	/* Cfa/pair.scm 81 */
							bool_t BgL_test2123z00_4985;

							{	/* Cfa/pair.scm 81 */
								obj_t BgL_classz00_4240;

								BgL_classz00_4240 = BGl_globalz00zzast_varz00;
								if (BGL_OBJECTP(BgL_gz00_3444))
									{	/* Cfa/pair.scm 81 */
										BgL_objectz00_bglt BgL_arg1801z00_4242;

										BgL_arg1801z00_4242 = (BgL_objectz00_bglt) (BgL_gz00_3444);
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* Cfa/pair.scm 81 */
												long BgL_idxz00_4248;

												BgL_idxz00_4248 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_4242);
												BgL_test2123z00_4985 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_4248 + 2L)) == BgL_classz00_4240);
											}
										else
											{	/* Cfa/pair.scm 81 */
												bool_t BgL_res2073z00_4270;

												{	/* Cfa/pair.scm 81 */
													obj_t BgL_oclassz00_4256;

													{	/* Cfa/pair.scm 81 */
														long BgL_arg1808z00_4262;

														{	/* Cfa/pair.scm 81 */
															long BgL_arg1809z00_4263;

															BgL_arg1809z00_4263 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_4242);
															BgL_arg1808z00_4262 =
																(BgL_arg1809z00_4263 - OBJECT_TYPE);
														}
														BgL_oclassz00_4256 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_4262);
													}
													{	/* Cfa/pair.scm 81 */
														bool_t BgL__ortest_1115z00_4257;

														BgL__ortest_1115z00_4257 =
															(BgL_classz00_4240 == BgL_oclassz00_4256);
														if (BgL__ortest_1115z00_4257)
															{	/* Cfa/pair.scm 81 */
																BgL_res2073z00_4270 = BgL__ortest_1115z00_4257;
															}
														else
															{	/* Cfa/pair.scm 81 */
																long BgL_odepthz00_4258;

																BgL_odepthz00_4258 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_4256);
																if ((2L < BgL_odepthz00_4258))
																	{	/* Cfa/pair.scm 81 */
																		obj_t BgL_arg1797z00_4260;

																		BgL_arg1797z00_4260 =
																			BGL_CLASS_ANCESTORS_REF
																			(BgL_oclassz00_4256, 2L);
																		BgL_res2073z00_4270 =
																			(BgL_arg1797z00_4260 ==
																			BgL_classz00_4240);
																	}
																else
																	{	/* Cfa/pair.scm 81 */
																		BgL_res2073z00_4270 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test2123z00_4985 = BgL_res2073z00_4270;
											}
									}
								else
									{	/* Cfa/pair.scm 81 */
										BgL_test2123z00_4985 = ((bool_t) 0);
									}
							}
							if (BgL_test2123z00_4985)
								{	/* Cfa/pair.scm 82 */
									BgL_valuez00_bglt BgL_fz00_3446;

									BgL_fz00_3446 =
										(((BgL_variablez00_bglt) COBJECT(
												((BgL_variablez00_bglt)
													((BgL_globalz00_bglt) BgL_gz00_3444))))->
										BgL_valuez00);
									{	/* Cfa/pair.scm 83 */
										obj_t BgL_arg1630z00_3447;
										BgL_typez00_bglt BgL_arg1639z00_3448;

										BgL_arg1630z00_3447 =
											(((BgL_cfunz00_bglt) COBJECT(
													((BgL_cfunz00_bglt) BgL_fz00_3446)))->
											BgL_argszd2typezd2);
										BgL_arg1639z00_3448 =
											BGl_getzd2defaultzd2typez00zztype_cachez00();
										{	/* Cfa/pair.scm 83 */
											obj_t BgL_auxz00_5013;
											obj_t BgL_tmpz00_5011;

											BgL_auxz00_5013 = ((obj_t) BgL_arg1639z00_3448);
											BgL_tmpz00_5011 = ((obj_t) BgL_arg1630z00_3447);
											return SET_CAR(BgL_tmpz00_5011, BgL_auxz00_5013);
										}
									}
								}
							else
								{	/* Cfa/pair.scm 81 */
									return BFALSE;
								}
						}
					}
				}
			else
				{	/* Cfa/pair.scm 62 */
					return BFALSE;
				}
		}

	}



/* &patch-pair-set! */
	obj_t BGl_z62patchzd2pairzd2setz12z70zzcfa_pairz00(obj_t BgL_envz00_4689)
	{
		{	/* Cfa/pair.scm 59 */
			return BGl_patchzd2pairzd2setz12z12zzcfa_pairz00();
		}

	}



/* unpatch-pair-set! */
	BGL_EXPORTED_DEF obj_t BGl_unpatchzd2pairzd2setz12z12zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 88 */
			if (BGl_pairzd2optimzf3z21zzcfa_pairz00())
				{	/* Cfa/pair.scm 89 */
					{	/* Cfa/pair.scm 90 */
						obj_t BgL_g1571z00_3451;

						BgL_g1571z00_3451 = CNST_TABLE_REF(0L);
						{
							obj_t BgL_l1569z00_3453;

							BgL_l1569z00_3453 = BgL_g1571z00_3451;
						BgL_zc3z04anonymousza31642ze3z87_3454:
							if (PAIRP(BgL_l1569z00_3453))
								{	/* Cfa/pair.scm 100 */
									{	/* Cfa/pair.scm 91 */
										obj_t BgL_idz00_3456;

										BgL_idz00_3456 = CAR(BgL_l1569z00_3453);
										{	/* Cfa/pair.scm 91 */
											obj_t BgL_gz00_3457;

											{	/* Cfa/pair.scm 91 */
												obj_t BgL_arg1669z00_3465;
												obj_t BgL_arg1673z00_3466;

												{	/* Cfa/pair.scm 91 */
													obj_t BgL_pairz00_4278;

													BgL_pairz00_4278 = CDR(((obj_t) BgL_idz00_3456));
													BgL_arg1669z00_3465 = CAR(BgL_pairz00_4278);
												}
												{	/* Cfa/pair.scm 91 */
													obj_t BgL_pairz00_4284;

													{	/* Cfa/pair.scm 91 */
														obj_t BgL_pairz00_4283;

														BgL_pairz00_4283 = CDR(((obj_t) BgL_idz00_3456));
														BgL_pairz00_4284 = CDR(BgL_pairz00_4283);
													}
													BgL_arg1673z00_3466 = CAR(BgL_pairz00_4284);
												}
												BgL_gz00_3457 =
													BGl_findzd2globalzf2modulez20zzast_envz00
													(BgL_arg1669z00_3465, BgL_arg1673z00_3466);
											}
											{	/* Cfa/pair.scm 91 */
												BgL_valuez00_bglt BgL_funz00_3458;

												BgL_funz00_3458 =
													(((BgL_variablez00_bglt) COBJECT(
															((BgL_variablez00_bglt)
																((BgL_globalz00_bglt) BgL_gz00_3457))))->
													BgL_valuez00);
												{	/* Cfa/pair.scm 92 */

													{	/* Cfa/pair.scm 93 */
														bool_t BgL_test2130z00_5034;

														{	/* Cfa/pair.scm 93 */
															obj_t BgL_classz00_4286;

															BgL_classz00_4286 = BGl_cfunz00zzast_varz00;
															{	/* Cfa/pair.scm 93 */
																BgL_objectz00_bglt BgL_arg1801z00_4288;

																{	/* Cfa/pair.scm 93 */
																	obj_t BgL_tmpz00_5035;

																	BgL_tmpz00_5035 =
																		((obj_t)
																		((BgL_objectz00_bglt) BgL_funz00_3458));
																	BgL_arg1801z00_4288 =
																		(BgL_objectz00_bglt) (BgL_tmpz00_5035);
																}
																if (BGL_CONDEXPAND_ISA_ARCH64())
																	{	/* Cfa/pair.scm 93 */
																		long BgL_idxz00_4294;

																		BgL_idxz00_4294 =
																			BGL_OBJECT_INHERITANCE_NUM
																			(BgL_arg1801z00_4288);
																		BgL_test2130z00_5034 =
																			(VECTOR_REF
																			(BGl_za2inheritancesza2z00zz__objectz00,
																				(BgL_idxz00_4294 + 3L)) ==
																			BgL_classz00_4286);
																	}
																else
																	{	/* Cfa/pair.scm 93 */
																		bool_t BgL_res2074z00_4316;

																		{	/* Cfa/pair.scm 93 */
																			obj_t BgL_oclassz00_4302;

																			{	/* Cfa/pair.scm 93 */
																				long BgL_arg1808z00_4308;

																				{	/* Cfa/pair.scm 93 */
																					long BgL_arg1809z00_4309;

																					BgL_arg1809z00_4309 =
																						BGL_OBJECT_CLASS_NUM
																						(BgL_arg1801z00_4288);
																					BgL_arg1808z00_4308 =
																						(BgL_arg1809z00_4309 - OBJECT_TYPE);
																				}
																				BgL_oclassz00_4302 =
																					VECTOR_REF
																					(BGl_za2classesza2z00zz__objectz00,
																					BgL_arg1808z00_4308);
																			}
																			{	/* Cfa/pair.scm 93 */
																				bool_t BgL__ortest_1115z00_4303;

																				BgL__ortest_1115z00_4303 =
																					(BgL_classz00_4286 ==
																					BgL_oclassz00_4302);
																				if (BgL__ortest_1115z00_4303)
																					{	/* Cfa/pair.scm 93 */
																						BgL_res2074z00_4316 =
																							BgL__ortest_1115z00_4303;
																					}
																				else
																					{	/* Cfa/pair.scm 93 */
																						long BgL_odepthz00_4304;

																						BgL_odepthz00_4304 =
																							BGL_CLASS_DEPTH
																							(BgL_oclassz00_4302);
																						if ((3L < BgL_odepthz00_4304))
																							{	/* Cfa/pair.scm 93 */
																								obj_t BgL_arg1797z00_4306;

																								BgL_arg1797z00_4306 =
																									BGL_CLASS_ANCESTORS_REF
																									(BgL_oclassz00_4302, 3L);
																								BgL_res2074z00_4316 =
																									(BgL_arg1797z00_4306 ==
																									BgL_classz00_4286);
																							}
																						else
																							{	/* Cfa/pair.scm 93 */
																								BgL_res2074z00_4316 =
																									((bool_t) 0);
																							}
																					}
																			}
																		}
																		BgL_test2130z00_5034 = BgL_res2074z00_4316;
																	}
															}
														}
														if (BgL_test2130z00_5034)
															{	/* Cfa/pair.scm 94 */
																obj_t BgL_argsz00_3460;

																BgL_argsz00_3460 =
																	(((BgL_cfunz00_bglt) COBJECT(
																			((BgL_cfunz00_bglt) BgL_funz00_3458)))->
																	BgL_argszd2typezd2);
																{	/* Cfa/pair.scm 95 */
																	obj_t BgL_objz00_4319;

																	BgL_objz00_4319 =
																		BGl_za2objza2z00zztype_cachez00;
																	{	/* Cfa/pair.scm 95 */
																		obj_t BgL_tmpz00_5057;

																		BgL_tmpz00_5057 =
																			((obj_t) BgL_argsz00_3460);
																		SET_CAR(BgL_tmpz00_5057, BgL_objz00_4319);
																	}
																}
																{	/* Cfa/pair.scm 96 */
																	obj_t BgL_arg1649z00_3461;

																	BgL_arg1649z00_3461 =
																		CDR(((obj_t) BgL_argsz00_3460));
																	{	/* Cfa/pair.scm 96 */
																		obj_t BgL_objz00_4322;

																		BgL_objz00_4322 =
																			BGl_za2objza2z00zztype_cachez00;
																		{	/* Cfa/pair.scm 96 */
																			obj_t BgL_tmpz00_5062;

																			BgL_tmpz00_5062 =
																				((obj_t) BgL_arg1649z00_3461);
																			SET_CAR(BgL_tmpz00_5062, BgL_objz00_4322);
																		}
																	}
																}
															}
														else
															{	/* Cfa/pair.scm 97 */
																obj_t BgL_argsz00_3462;

																BgL_argsz00_3462 =
																	(((BgL_sfunz00_bglt) COBJECT(
																			((BgL_sfunz00_bglt) BgL_funz00_3458)))->
																	BgL_argsz00);
																{	/* Cfa/pair.scm 98 */
																	obj_t BgL_arg1658z00_3463;

																	BgL_arg1658z00_3463 =
																		CAR(((obj_t) BgL_argsz00_3462));
																	{	/* Cfa/pair.scm 98 */
																		BgL_typez00_bglt BgL_vz00_4326;

																		BgL_vz00_4326 =
																			((BgL_typez00_bglt)
																			BGl_za2objza2z00zztype_cachez00);
																		((((BgL_variablez00_bglt)
																					COBJECT(((BgL_variablez00_bglt) (
																								(BgL_localz00_bglt)
																								BgL_arg1658z00_3463))))->
																				BgL_typez00) =
																			((BgL_typez00_bglt) BgL_vz00_4326),
																			BUNSPEC);
																	}
																}
																{	/* Cfa/pair.scm 99 */
																	obj_t BgL_arg1661z00_3464;

																	{	/* Cfa/pair.scm 99 */
																		obj_t BgL_pairz00_4330;

																		BgL_pairz00_4330 =
																			CDR(((obj_t) BgL_argsz00_3462));
																		BgL_arg1661z00_3464 = CAR(BgL_pairz00_4330);
																	}
																	{	/* Cfa/pair.scm 99 */
																		BgL_typez00_bglt BgL_vz00_4332;

																		BgL_vz00_4332 =
																			((BgL_typez00_bglt)
																			BGl_za2objza2z00zztype_cachez00);
																		((((BgL_variablez00_bglt)
																					COBJECT(((BgL_variablez00_bglt) (
																								(BgL_localz00_bglt)
																								BgL_arg1661z00_3464))))->
																				BgL_typez00) =
																			((BgL_typez00_bglt) BgL_vz00_4332),
																			BUNSPEC);
																	}
																}
															}
													}
												}
											}
										}
									}
									{
										obj_t BgL_l1569z00_5080;

										BgL_l1569z00_5080 = CDR(BgL_l1569z00_3453);
										BgL_l1569z00_3453 = BgL_l1569z00_5080;
										goto BgL_zc3z04anonymousza31642ze3z87_3454;
									}
								}
							else
								{	/* Cfa/pair.scm 100 */
									((bool_t) 1);
								}
						}
					}
					{	/* Cfa/pair.scm 106 */
						obj_t BgL_gz00_3469;

						BgL_gz00_3469 =
							BGl_findzd2globalzd2zzast_envz00(CNST_TABLE_REF(1L), BNIL);
						{	/* Cfa/pair.scm 107 */
							bool_t BgL_test2134z00_5084;

							{	/* Cfa/pair.scm 107 */
								obj_t BgL_classz00_4334;

								BgL_classz00_4334 = BGl_globalz00zzast_varz00;
								if (BGL_OBJECTP(BgL_gz00_3469))
									{	/* Cfa/pair.scm 107 */
										BgL_objectz00_bglt BgL_arg1801z00_4336;

										BgL_arg1801z00_4336 = (BgL_objectz00_bglt) (BgL_gz00_3469);
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* Cfa/pair.scm 107 */
												long BgL_idxz00_4342;

												BgL_idxz00_4342 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_4336);
												BgL_test2134z00_5084 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_4342 + 2L)) == BgL_classz00_4334);
											}
										else
											{	/* Cfa/pair.scm 107 */
												bool_t BgL_res2075z00_4364;

												{	/* Cfa/pair.scm 107 */
													obj_t BgL_oclassz00_4350;

													{	/* Cfa/pair.scm 107 */
														long BgL_arg1808z00_4356;

														{	/* Cfa/pair.scm 107 */
															long BgL_arg1809z00_4357;

															BgL_arg1809z00_4357 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_4336);
															BgL_arg1808z00_4356 =
																(BgL_arg1809z00_4357 - OBJECT_TYPE);
														}
														BgL_oclassz00_4350 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_4356);
													}
													{	/* Cfa/pair.scm 107 */
														bool_t BgL__ortest_1115z00_4351;

														BgL__ortest_1115z00_4351 =
															(BgL_classz00_4334 == BgL_oclassz00_4350);
														if (BgL__ortest_1115z00_4351)
															{	/* Cfa/pair.scm 107 */
																BgL_res2075z00_4364 = BgL__ortest_1115z00_4351;
															}
														else
															{	/* Cfa/pair.scm 107 */
																long BgL_odepthz00_4352;

																BgL_odepthz00_4352 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_4350);
																if ((2L < BgL_odepthz00_4352))
																	{	/* Cfa/pair.scm 107 */
																		obj_t BgL_arg1797z00_4354;

																		BgL_arg1797z00_4354 =
																			BGL_CLASS_ANCESTORS_REF
																			(BgL_oclassz00_4350, 2L);
																		BgL_res2075z00_4364 =
																			(BgL_arg1797z00_4354 ==
																			BgL_classz00_4334);
																	}
																else
																	{	/* Cfa/pair.scm 107 */
																		BgL_res2075z00_4364 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test2134z00_5084 = BgL_res2075z00_4364;
											}
									}
								else
									{	/* Cfa/pair.scm 107 */
										BgL_test2134z00_5084 = ((bool_t) 0);
									}
							}
							if (BgL_test2134z00_5084)
								{	/* Cfa/pair.scm 108 */
									BgL_valuez00_bglt BgL_fz00_3471;

									BgL_fz00_3471 =
										(((BgL_variablez00_bglt) COBJECT(
												((BgL_variablez00_bglt)
													((BgL_globalz00_bglt) BgL_gz00_3469))))->
										BgL_valuez00);
									{	/* Cfa/pair.scm 109 */
										obj_t BgL_arg1678z00_3472;

										BgL_arg1678z00_3472 =
											(((BgL_cfunz00_bglt) COBJECT(
													((BgL_cfunz00_bglt) BgL_fz00_3471)))->
											BgL_argszd2typezd2);
										{	/* Cfa/pair.scm 109 */
											obj_t BgL_objz00_4368;

											BgL_objz00_4368 = BGl_za2objza2z00zztype_cachez00;
											{	/* Cfa/pair.scm 109 */
												obj_t BgL_tmpz00_5109;

												BgL_tmpz00_5109 = ((obj_t) BgL_arg1678z00_3472);
												SET_CAR(BgL_tmpz00_5109, BgL_objz00_4368);
											}
										}
									}
								}
							else
								{	/* Cfa/pair.scm 107 */
									BFALSE;
								}
						}
					}
					{	/* Cfa/pair.scm 110 */
						obj_t BgL_gz00_3474;

						BgL_gz00_3474 =
							BGl_findzd2globalzd2zzast_envz00(CNST_TABLE_REF(2L), BNIL);
						{	/* Cfa/pair.scm 111 */
							bool_t BgL_test2139z00_5114;

							{	/* Cfa/pair.scm 111 */
								obj_t BgL_classz00_4369;

								BgL_classz00_4369 = BGl_globalz00zzast_varz00;
								if (BGL_OBJECTP(BgL_gz00_3474))
									{	/* Cfa/pair.scm 111 */
										BgL_objectz00_bglt BgL_arg1801z00_4371;

										BgL_arg1801z00_4371 = (BgL_objectz00_bglt) (BgL_gz00_3474);
										if (BGL_CONDEXPAND_ISA_ARCH64())
											{	/* Cfa/pair.scm 111 */
												long BgL_idxz00_4377;

												BgL_idxz00_4377 =
													BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_4371);
												BgL_test2139z00_5114 =
													(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
														(BgL_idxz00_4377 + 2L)) == BgL_classz00_4369);
											}
										else
											{	/* Cfa/pair.scm 111 */
												bool_t BgL_res2076z00_4399;

												{	/* Cfa/pair.scm 111 */
													obj_t BgL_oclassz00_4385;

													{	/* Cfa/pair.scm 111 */
														long BgL_arg1808z00_4391;

														{	/* Cfa/pair.scm 111 */
															long BgL_arg1809z00_4392;

															BgL_arg1809z00_4392 =
																BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_4371);
															BgL_arg1808z00_4391 =
																(BgL_arg1809z00_4392 - OBJECT_TYPE);
														}
														BgL_oclassz00_4385 =
															VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
															BgL_arg1808z00_4391);
													}
													{	/* Cfa/pair.scm 111 */
														bool_t BgL__ortest_1115z00_4386;

														BgL__ortest_1115z00_4386 =
															(BgL_classz00_4369 == BgL_oclassz00_4385);
														if (BgL__ortest_1115z00_4386)
															{	/* Cfa/pair.scm 111 */
																BgL_res2076z00_4399 = BgL__ortest_1115z00_4386;
															}
														else
															{	/* Cfa/pair.scm 111 */
																long BgL_odepthz00_4387;

																BgL_odepthz00_4387 =
																	BGL_CLASS_DEPTH(BgL_oclassz00_4385);
																if ((2L < BgL_odepthz00_4387))
																	{	/* Cfa/pair.scm 111 */
																		obj_t BgL_arg1797z00_4389;

																		BgL_arg1797z00_4389 =
																			BGL_CLASS_ANCESTORS_REF
																			(BgL_oclassz00_4385, 2L);
																		BgL_res2076z00_4399 =
																			(BgL_arg1797z00_4389 ==
																			BgL_classz00_4369);
																	}
																else
																	{	/* Cfa/pair.scm 111 */
																		BgL_res2076z00_4399 = ((bool_t) 0);
																	}
															}
													}
												}
												BgL_test2139z00_5114 = BgL_res2076z00_4399;
											}
									}
								else
									{	/* Cfa/pair.scm 111 */
										BgL_test2139z00_5114 = ((bool_t) 0);
									}
							}
							if (BgL_test2139z00_5114)
								{	/* Cfa/pair.scm 112 */
									BgL_valuez00_bglt BgL_fz00_3476;

									BgL_fz00_3476 =
										(((BgL_variablez00_bglt) COBJECT(
												((BgL_variablez00_bglt)
													((BgL_globalz00_bglt) BgL_gz00_3474))))->
										BgL_valuez00);
									{	/* Cfa/pair.scm 113 */
										obj_t BgL_arg1684z00_3477;

										{	/* Cfa/pair.scm 113 */
											obj_t BgL_pairz00_4402;

											BgL_pairz00_4402 =
												(((BgL_sfunz00_bglt) COBJECT(
														((BgL_sfunz00_bglt) BgL_fz00_3476)))->BgL_argsz00);
											BgL_arg1684z00_3477 = CAR(BgL_pairz00_4402);
										}
										{	/* Cfa/pair.scm 113 */
											BgL_typez00_bglt BgL_vz00_4404;

											BgL_vz00_4404 =
												((BgL_typez00_bglt) BGl_za2objza2z00zztype_cachez00);
											((((BgL_variablez00_bglt) COBJECT(
															((BgL_variablez00_bglt)
																((BgL_localz00_bglt) BgL_arg1684z00_3477))))->
													BgL_typez00) =
												((BgL_typez00_bglt) BgL_vz00_4404), BUNSPEC);
										}
									}
								}
							else
								{	/* Cfa/pair.scm 111 */
									BFALSE;
								}
						}
					}
				}
			else
				{	/* Cfa/pair.scm 89 */
					BFALSE;
				}
			return BUNSPEC;
		}

	}



/* &unpatch-pair-set! */
	obj_t BGl_z62unpatchzd2pairzd2setz12z70zzcfa_pairz00(obj_t BgL_envz00_4690)
	{
		{	/* Cfa/pair.scm 88 */
			return BGl_unpatchzd2pairzd2setz12z12zzcfa_pairz00();
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_nodezd2setupz12zd2envz12zzcfa_setupz00,
				BGl_prezd2conszd2appz00zzcfa_info2z00, BGl_proc2085z00zzcfa_pairz00,
				BGl_string2086z00zzcfa_pairz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_nodezd2setupz12zd2envz12zzcfa_setupz00,
				BGl_prezd2conszd2refzd2appzd2zzcfa_info2z00,
				BGl_proc2087z00zzcfa_pairz00, BGl_string2086z00zzcfa_pairz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_nodezd2setupz12zd2envz12zzcfa_setupz00,
				BGl_prezd2conszd2setz12zd2appzc0zzcfa_info2z00,
				BGl_proc2088z00zzcfa_pairz00, BGl_string2086z00zzcfa_pairz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_cfaz12zd2envzc0zzcfa_cfaz00, BGl_conszd2appzd2zzcfa_info2z00,
				BGl_proc2089z00zzcfa_pairz00, BGl_string2090z00zzcfa_pairz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_cfaz12zd2envzc0zzcfa_cfaz00, BGl_conszd2refzd2appz00zzcfa_info2z00,
				BGl_proc2091z00zzcfa_pairz00, BGl_string2090z00zzcfa_pairz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_cfaz12zd2envzc0zzcfa_cfaz00,
				BGl_conszd2setz12zd2appz12zzcfa_info2z00, BGl_proc2092z00zzcfa_pairz00,
				BGl_string2090z00zzcfa_pairz00);
			return
				BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_loosezd2allocz12zd2envz12zzcfa_loosez00,
				BGl_conszd2appzd2zzcfa_info2z00, BGl_proc2093z00zzcfa_pairz00,
				BGl_string2094z00zzcfa_pairz00);
		}

	}



/* &loose-alloc!-cons-ap1586 */
	obj_t BGl_z62loosezd2allocz12zd2conszd2ap1586za2zzcfa_pairz00(obj_t
		BgL_envz00_4702, obj_t BgL_allocz00_4703)
	{
		{	/* Cfa/pair.scm 245 */
			{	/* Cfa/pair.scm 247 */
				bool_t BgL_test2144z00_5152;

				{	/* Cfa/pair.scm 247 */
					long BgL_arg1856z00_4739;

					{
						BgL_conszd2appzd2_bglt BgL_auxz00_5153;

						{
							obj_t BgL_auxz00_5154;

							{	/* Cfa/pair.scm 247 */
								BgL_objectz00_bglt BgL_tmpz00_5155;

								BgL_tmpz00_5155 =
									((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_allocz00_4703));
								BgL_auxz00_5154 = BGL_OBJECT_WIDENING(BgL_tmpz00_5155);
							}
							BgL_auxz00_5153 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5154);
						}
						BgL_arg1856z00_4739 =
							(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5153))->
							BgL_lostzd2stampzd2);
					}
					BgL_test2144z00_5152 =
						(BgL_arg1856z00_4739 ==
						(long) CINT(BGl_za2cfazd2stampza2zd2zzcfa_iteratez00));
				}
				if (BgL_test2144z00_5152)
					{	/* Cfa/pair.scm 247 */
						return BFALSE;
					}
				else
					{	/* Cfa/pair.scm 247 */
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5163;

							{
								obj_t BgL_auxz00_5164;

								{	/* Cfa/pair.scm 250 */
									BgL_objectz00_bglt BgL_tmpz00_5165;

									BgL_tmpz00_5165 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) BgL_allocz00_4703));
									BgL_auxz00_5164 = BGL_OBJECT_WIDENING(BgL_tmpz00_5165);
								}
								BgL_auxz00_5163 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5164);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5163))->
									BgL_lostzd2stampzd2) =
								((long) (long) CINT(BGl_za2cfazd2stampza2zd2zzcfa_iteratez00)),
								BUNSPEC);
						}
						{	/* Cfa/pair.scm 251 */
							obj_t BgL_arg1842z00_4740;

							{	/* Cfa/pair.scm 251 */
								obj_t BgL_arg1843z00_4741;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5172;

									{
										obj_t BgL_auxz00_5173;

										{	/* Cfa/pair.scm 251 */
											BgL_objectz00_bglt BgL_tmpz00_5174;

											BgL_tmpz00_5174 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5173 = BGL_OBJECT_WIDENING(BgL_tmpz00_5174);
										}
										BgL_auxz00_5172 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5173);
									}
									BgL_arg1843z00_4741 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5172))->
										BgL_approxesz00);
								}
								BgL_arg1842z00_4740 = CAR(BgL_arg1843z00_4741);
							}
							BGl_forzd2eachzd2approxzd2alloczd2zzcfa_approxz00
								(BGl_loosezd2allocz12zd2envz12zzcfa_loosez00,
								((BgL_approxz00_bglt) BgL_arg1842z00_4740));
						}
						{	/* Cfa/pair.scm 252 */
							obj_t BgL_arg1844z00_4742;

							{	/* Cfa/pair.scm 252 */
								obj_t BgL_arg1845z00_4743;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5183;

									{
										obj_t BgL_auxz00_5184;

										{	/* Cfa/pair.scm 252 */
											BgL_objectz00_bglt BgL_tmpz00_5185;

											BgL_tmpz00_5185 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5184 = BGL_OBJECT_WIDENING(BgL_tmpz00_5185);
										}
										BgL_auxz00_5183 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5184);
									}
									BgL_arg1845z00_4743 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5183))->
										BgL_approxesz00);
								}
								BgL_arg1844z00_4742 = CDR(BgL_arg1845z00_4743);
							}
							BGl_forzd2eachzd2approxzd2alloczd2zzcfa_approxz00
								(BGl_loosezd2allocz12zd2envz12zzcfa_loosez00,
								((BgL_approxz00_bglt) BgL_arg1844z00_4742));
						}
						{	/* Cfa/pair.scm 253 */
							obj_t BgL_arg1846z00_4744;

							{	/* Cfa/pair.scm 253 */
								obj_t BgL_arg1848z00_4745;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5194;

									{
										obj_t BgL_auxz00_5195;

										{	/* Cfa/pair.scm 253 */
											BgL_objectz00_bglt BgL_tmpz00_5196;

											BgL_tmpz00_5196 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5195 = BGL_OBJECT_WIDENING(BgL_tmpz00_5196);
										}
										BgL_auxz00_5194 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5195);
									}
									BgL_arg1848z00_4745 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5194))->
										BgL_approxesz00);
								}
								BgL_arg1846z00_4744 = CAR(BgL_arg1848z00_4745);
							}
							BGl_approxzd2setzd2typez12z12zzcfa_approxz00(
								((BgL_approxz00_bglt) BgL_arg1846z00_4744),
								((BgL_typez00_bglt) BGl_za2objza2z00zztype_cachez00));
						}
						{	/* Cfa/pair.scm 254 */
							obj_t BgL_arg1850z00_4746;

							{	/* Cfa/pair.scm 254 */
								obj_t BgL_arg1851z00_4747;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5206;

									{
										obj_t BgL_auxz00_5207;

										{	/* Cfa/pair.scm 254 */
											BgL_objectz00_bglt BgL_tmpz00_5208;

											BgL_tmpz00_5208 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5207 = BGL_OBJECT_WIDENING(BgL_tmpz00_5208);
										}
										BgL_auxz00_5206 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5207);
									}
									BgL_arg1851z00_4747 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5206))->
										BgL_approxesz00);
								}
								BgL_arg1850z00_4746 = CDR(BgL_arg1851z00_4747);
							}
							BGl_approxzd2setzd2typez12z12zzcfa_approxz00(
								((BgL_approxz00_bglt) BgL_arg1850z00_4746),
								((BgL_typez00_bglt) BGl_za2objza2z00zztype_cachez00));
						}
						{	/* Cfa/pair.scm 255 */
							obj_t BgL_arg1852z00_4748;

							{	/* Cfa/pair.scm 255 */
								obj_t BgL_arg1853z00_4749;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5218;

									{
										obj_t BgL_auxz00_5219;

										{	/* Cfa/pair.scm 255 */
											BgL_objectz00_bglt BgL_tmpz00_5220;

											BgL_tmpz00_5220 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5219 = BGL_OBJECT_WIDENING(BgL_tmpz00_5220);
										}
										BgL_auxz00_5218 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5219);
									}
									BgL_arg1853z00_4749 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5218))->
										BgL_approxesz00);
								}
								BgL_arg1852z00_4748 = CAR(BgL_arg1853z00_4749);
							}
							BGl_approxzd2setzd2topz12z12zzcfa_approxz00(
								((BgL_approxz00_bglt) BgL_arg1852z00_4748));
						}
						{	/* Cfa/pair.scm 256 */
							obj_t BgL_arg1854z00_4750;

							{	/* Cfa/pair.scm 256 */
								obj_t BgL_arg1855z00_4751;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5229;

									{
										obj_t BgL_auxz00_5230;

										{	/* Cfa/pair.scm 256 */
											BgL_objectz00_bglt BgL_tmpz00_5231;

											BgL_tmpz00_5231 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_allocz00_4703));
											BgL_auxz00_5230 = BGL_OBJECT_WIDENING(BgL_tmpz00_5231);
										}
										BgL_auxz00_5229 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5230);
									}
									BgL_arg1855z00_4751 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5229))->
										BgL_approxesz00);
								}
								BgL_arg1854z00_4750 = CDR(BgL_arg1855z00_4751);
							}
							return
								BGl_approxzd2setzd2topz12z12zzcfa_approxz00(
								((BgL_approxz00_bglt) BgL_arg1854z00_4750));
						}
					}
			}
		}

	}



/* &cfa!-cons-set!-app1584 */
	BgL_approxz00_bglt
		BGl_z62cfaz12zd2conszd2setz12zd2app1584zb0zzcfa_pairz00(obj_t
		BgL_envz00_4704, obj_t BgL_nodez00_4705)
	{
		{	/* Cfa/pair.scm 212 */
			{	/* Cfa/pair.scm 214 */
				BgL_approxz00_bglt BgL_conszd2approxzd2_4753;
				BgL_approxz00_bglt BgL_valzd2approxzd2_4754;

				{	/* Cfa/pair.scm 214 */
					obj_t BgL_arg1836z00_4755;

					{	/* Cfa/pair.scm 214 */
						obj_t BgL_pairz00_4756;

						BgL_pairz00_4756 =
							(((BgL_appz00_bglt) COBJECT(
									((BgL_appz00_bglt)
										((BgL_appz00_bglt) BgL_nodez00_4705))))->BgL_argsz00);
						BgL_arg1836z00_4755 = CAR(BgL_pairz00_4756);
					}
					BgL_conszd2approxzd2_4753 =
						BGl_cfaz12z12zzcfa_cfaz00(((BgL_nodez00_bglt) BgL_arg1836z00_4755));
				}
				{	/* Cfa/pair.scm 215 */
					obj_t BgL_arg1838z00_4757;

					{	/* Cfa/pair.scm 215 */
						obj_t BgL_pairz00_4758;

						BgL_pairz00_4758 =
							(((BgL_appz00_bglt) COBJECT(
									((BgL_appz00_bglt)
										((BgL_appz00_bglt) BgL_nodez00_4705))))->BgL_argsz00);
						BgL_arg1838z00_4757 = CAR(CDR(BgL_pairz00_4758));
					}
					BgL_valzd2approxzd2_4754 =
						BGl_cfaz12z12zzcfa_cfaz00(((BgL_nodez00_bglt) BgL_arg1838z00_4757));
				}
				{	/* Cfa/pair.scm 220 */
					bool_t BgL_test2145z00_5253;

					{	/* Cfa/pair.scm 220 */
						BgL_typez00_bglt BgL_arg1827z00_4759;

						BgL_arg1827z00_4759 =
							(((BgL_approxz00_bglt) COBJECT(BgL_conszd2approxzd2_4753))->
							BgL_typez00);
						BgL_test2145z00_5253 =
							(((obj_t) BgL_arg1827z00_4759) ==
							BGl_za2pairza2z00zztype_cachez00);
					}
					if (BgL_test2145z00_5253)
						{	/* Cfa/pair.scm 220 */
							BFALSE;
						}
					else
						{	/* Cfa/pair.scm 220 */
							BGl_approxzd2setzd2typez12z12zzcfa_approxz00
								(BgL_valzd2approxzd2_4754,
								((BgL_typez00_bglt) BGl_za2objza2z00zztype_cachez00));
						}
				}
				if (
					(((BgL_approxz00_bglt) COBJECT(BgL_conszd2approxzd2_4753))->
						BgL_topzf3zf3))
					{	/* Cfa/pair.scm 223 */
						((obj_t)
							BGl_loosez12z12zzcfa_loosez00(BgL_valzd2approxzd2_4754,
								CNST_TABLE_REF(3L)));
					}
				else
					{	/* Cfa/pair.scm 229 */
						obj_t BgL_zc3z04anonymousza31830ze3z87_4760;

						BgL_zc3z04anonymousza31830ze3z87_4760 =
							MAKE_FX_PROCEDURE
							(BGl_z62zc3z04anonymousza31830ze3ze5zzcfa_pairz00, (int) (1L),
							(int) (2L));
						PROCEDURE_SET(BgL_zc3z04anonymousza31830ze3z87_4760, (int) (0L),
							((obj_t) ((BgL_appz00_bglt) BgL_nodez00_4705)));
						PROCEDURE_SET(BgL_zc3z04anonymousza31830ze3z87_4760, (int) (1L),
							((obj_t) BgL_valzd2approxzd2_4754));
						BGl_forzd2eachzd2approxzd2alloczd2zzcfa_approxz00
							(BgL_zc3z04anonymousza31830ze3z87_4760,
							BgL_conszd2approxzd2_4753);
			}}
			{
				BgL_conszd2setz12zd2appz12_bglt BgL_auxz00_5275;

				{
					obj_t BgL_auxz00_5276;

					{	/* Cfa/pair.scm 236 */
						BgL_objectz00_bglt BgL_tmpz00_5277;

						BgL_tmpz00_5277 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4705));
						BgL_auxz00_5276 = BGL_OBJECT_WIDENING(BgL_tmpz00_5277);
					}
					BgL_auxz00_5275 = ((BgL_conszd2setz12zd2appz12_bglt) BgL_auxz00_5276);
				}
				return
					(((BgL_conszd2setz12zd2appz12_bglt) COBJECT(BgL_auxz00_5275))->
					BgL_approxz00);
			}
		}

	}



/* &<@anonymous:1830> */
	obj_t BGl_z62zc3z04anonymousza31830ze3ze5zzcfa_pairz00(obj_t BgL_envz00_4706,
		obj_t BgL_appz00_4709)
	{
		{	/* Cfa/pair.scm 228 */
			{	/* Cfa/pair.scm 229 */
				BgL_appz00_bglt BgL_i1195z00_4707;
				BgL_approxz00_bglt BgL_valzd2approxzd2_4708;

				BgL_i1195z00_4707 =
					((BgL_appz00_bglt) PROCEDURE_REF(BgL_envz00_4706, (int) (0L)));
				BgL_valzd2approxzd2_4708 =
					((BgL_approxz00_bglt) PROCEDURE_REF(BgL_envz00_4706, (int) (1L)));
				{	/* Cfa/pair.scm 229 */
					bool_t BgL_test2147z00_5289;

					{	/* Cfa/pair.scm 229 */
						obj_t BgL_classz00_4761;

						BgL_classz00_4761 = BGl_conszd2appzd2zzcfa_info2z00;
						if (BGL_OBJECTP(BgL_appz00_4709))
							{	/* Cfa/pair.scm 229 */
								BgL_objectz00_bglt BgL_arg1801z00_4762;

								BgL_arg1801z00_4762 = (BgL_objectz00_bglt) (BgL_appz00_4709);
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* Cfa/pair.scm 229 */
										long BgL_idxz00_4763;

										BgL_idxz00_4763 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_4762);
										BgL_test2147z00_5289 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_4763 + 4L)) == BgL_classz00_4761);
									}
								else
									{	/* Cfa/pair.scm 229 */
										bool_t BgL_res2078z00_4766;

										{	/* Cfa/pair.scm 229 */
											obj_t BgL_oclassz00_4767;

											{	/* Cfa/pair.scm 229 */
												long BgL_arg1808z00_4768;

												{	/* Cfa/pair.scm 229 */
													long BgL_arg1809z00_4769;

													BgL_arg1809z00_4769 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_4762);
													BgL_arg1808z00_4768 =
														(BgL_arg1809z00_4769 - OBJECT_TYPE);
												}
												BgL_oclassz00_4767 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_4768);
											}
											{	/* Cfa/pair.scm 229 */
												bool_t BgL__ortest_1115z00_4770;

												BgL__ortest_1115z00_4770 =
													(BgL_classz00_4761 == BgL_oclassz00_4767);
												if (BgL__ortest_1115z00_4770)
													{	/* Cfa/pair.scm 229 */
														BgL_res2078z00_4766 = BgL__ortest_1115z00_4770;
													}
												else
													{	/* Cfa/pair.scm 229 */
														long BgL_odepthz00_4771;

														BgL_odepthz00_4771 =
															BGL_CLASS_DEPTH(BgL_oclassz00_4767);
														if ((4L < BgL_odepthz00_4771))
															{	/* Cfa/pair.scm 229 */
																obj_t BgL_arg1797z00_4772;

																BgL_arg1797z00_4772 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_4767,
																	4L);
																BgL_res2078z00_4766 =
																	(BgL_arg1797z00_4772 == BgL_classz00_4761);
															}
														else
															{	/* Cfa/pair.scm 229 */
																BgL_res2078z00_4766 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test2147z00_5289 = BgL_res2078z00_4766;
									}
							}
						else
							{	/* Cfa/pair.scm 229 */
								BgL_test2147z00_5289 = ((bool_t) 0);
							}
					}
					if (BgL_test2147z00_5289)
						{	/* Cfa/pair.scm 229 */
							{
								BgL_conszd2appzd2_bglt BgL_auxz00_5309;

								{
									obj_t BgL_auxz00_5310;

									{	/* Cfa/pair.scm 231 */
										BgL_objectz00_bglt BgL_tmpz00_5311;

										BgL_tmpz00_5311 =
											((BgL_objectz00_bglt)
											((BgL_appz00_bglt) BgL_appz00_4709));
										BgL_auxz00_5310 = BGL_OBJECT_WIDENING(BgL_tmpz00_5311);
									}
									BgL_auxz00_5309 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5310);
								}
								((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5309))->
										BgL_seenzf3zf3) = ((bool_t) ((bool_t) 1)), BUNSPEC);
							}
							{	/* Cfa/pair.scm 232 */
								obj_t BgL_arg1832z00_4773;

								{	/* Cfa/pair.scm 232 */
									obj_t BgL_fun1835z00_4774;

									{
										BgL_conszd2setz12zd2appz12_bglt BgL_auxz00_5317;

										{
											obj_t BgL_auxz00_5318;

											{	/* Cfa/pair.scm 232 */
												BgL_objectz00_bglt BgL_tmpz00_5319;

												BgL_tmpz00_5319 =
													((BgL_objectz00_bglt) BgL_i1195z00_4707);
												BgL_auxz00_5318 = BGL_OBJECT_WIDENING(BgL_tmpz00_5319);
											}
											BgL_auxz00_5317 =
												((BgL_conszd2setz12zd2appz12_bglt) BgL_auxz00_5318);
										}
										BgL_fun1835z00_4774 =
											(((BgL_conszd2setz12zd2appz12_bglt)
												COBJECT(BgL_auxz00_5317))->BgL_getz00);
									}
									{	/* Cfa/pair.scm 232 */
										obj_t BgL_arg1833z00_4775;

										{
											BgL_conszd2appzd2_bglt BgL_auxz00_5324;

											{
												obj_t BgL_auxz00_5325;

												{	/* Cfa/pair.scm 232 */
													BgL_objectz00_bglt BgL_tmpz00_5326;

													BgL_tmpz00_5326 =
														((BgL_objectz00_bglt)
														((BgL_appz00_bglt) BgL_appz00_4709));
													BgL_auxz00_5325 =
														BGL_OBJECT_WIDENING(BgL_tmpz00_5326);
												}
												BgL_auxz00_5324 =
													((BgL_conszd2appzd2_bglt) BgL_auxz00_5325);
											}
											BgL_arg1833z00_4775 =
												(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5324))->
												BgL_approxesz00);
										}
										BgL_arg1832z00_4773 =
											(VA_PROCEDUREP(BgL_fun1835z00_4774) ? ((obj_t(*)(obj_t,
														...))
												PROCEDURE_ENTRY(BgL_fun1835z00_4774))
											(BgL_fun1835z00_4774, BgL_arg1833z00_4775,
												BEOA) : ((obj_t(*)(obj_t,
														obj_t))
												PROCEDURE_ENTRY(BgL_fun1835z00_4774))
											(BgL_fun1835z00_4774, BgL_arg1833z00_4775));
									}
								}
								return
									((obj_t)
									BGl_unionzd2approxz12zc0zzcfa_approxz00(
										((BgL_approxz00_bglt) BgL_arg1832z00_4773),
										BgL_valzd2approxzd2_4708));
							}
						}
					else
						{	/* Cfa/pair.scm 229 */
							return BFALSE;
						}
				}
			}
		}

	}



/* &cfa!-cons-ref-app1582 */
	BgL_approxz00_bglt BGl_z62cfaz12zd2conszd2refzd2app1582za2zzcfa_pairz00(obj_t
		BgL_envz00_4710, obj_t BgL_nodez00_4711)
	{
		{	/* Cfa/pair.scm 183 */
			{	/* Cfa/pair.scm 185 */
				BgL_approxz00_bglt BgL_conszd2approxzd2_4777;

				{	/* Cfa/pair.scm 185 */
					obj_t BgL_arg1823z00_4778;

					{	/* Cfa/pair.scm 185 */
						obj_t BgL_pairz00_4779;

						BgL_pairz00_4779 =
							(((BgL_appz00_bglt) COBJECT(
									((BgL_appz00_bglt)
										((BgL_appz00_bglt) BgL_nodez00_4711))))->BgL_argsz00);
						BgL_arg1823z00_4778 = CAR(BgL_pairz00_4779);
					}
					BgL_conszd2approxzd2_4777 =
						BGl_cfaz12z12zzcfa_cfaz00(((BgL_nodez00_bglt) BgL_arg1823z00_4778));
				}
				if (
					(((BgL_approxz00_bglt) COBJECT(BgL_conszd2approxzd2_4777))->
						BgL_topzf3zf3))
					{	/* Cfa/pair.scm 191 */
						{	/* Cfa/pair.scm 192 */
							BgL_approxz00_bglt BgL_arg1771z00_4780;

							{
								BgL_conszd2refzd2appz00_bglt BgL_auxz00_5347;

								{
									obj_t BgL_auxz00_5348;

									{	/* Cfa/pair.scm 192 */
										BgL_objectz00_bglt BgL_tmpz00_5349;

										BgL_tmpz00_5349 =
											((BgL_objectz00_bglt)
											((BgL_appz00_bglt) BgL_nodez00_4711));
										BgL_auxz00_5348 = BGL_OBJECT_WIDENING(BgL_tmpz00_5349);
									}
									BgL_auxz00_5347 =
										((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5348);
								}
								BgL_arg1771z00_4780 =
									(((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5347))->
									BgL_approxz00);
							}
							BGl_approxzd2setzd2typez12z12zzcfa_approxz00(BgL_arg1771z00_4780,
								((BgL_typez00_bglt) BGl_za2objza2z00zztype_cachez00));
						}
						{	/* Cfa/pair.scm 193 */
							BgL_approxz00_bglt BgL_arg1773z00_4781;

							{
								BgL_conszd2refzd2appz00_bglt BgL_auxz00_5357;

								{
									obj_t BgL_auxz00_5358;

									{	/* Cfa/pair.scm 193 */
										BgL_objectz00_bglt BgL_tmpz00_5359;

										BgL_tmpz00_5359 =
											((BgL_objectz00_bglt)
											((BgL_appz00_bglt) BgL_nodez00_4711));
										BgL_auxz00_5358 = BGL_OBJECT_WIDENING(BgL_tmpz00_5359);
									}
									BgL_auxz00_5357 =
										((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5358);
								}
								BgL_arg1773z00_4781 =
									(((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5357))->
									BgL_approxz00);
							}
							BGl_approxzd2setzd2topz12z12zzcfa_approxz00(BgL_arg1773z00_4781);
						}
					}
				else
					{	/* Cfa/pair.scm 191 */
						BFALSE;
					}
				{	/* Cfa/pair.scm 197 */
					obj_t BgL_zc3z04anonymousza31777ze3z87_4782;

					BgL_zc3z04anonymousza31777ze3z87_4782 =
						MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31777ze3ze5zzcfa_pairz00,
						(int) (1L), (int) (1L));
					PROCEDURE_SET(BgL_zc3z04anonymousza31777ze3z87_4782,
						(int) (0L), ((obj_t) ((BgL_appz00_bglt) BgL_nodez00_4711)));
					BGl_forzd2eachzd2approxzd2alloczd2zzcfa_approxz00
						(BgL_zc3z04anonymousza31777ze3z87_4782, BgL_conszd2approxzd2_4777);
			}}
			{
				BgL_conszd2refzd2appz00_bglt BgL_auxz00_5374;

				{
					obj_t BgL_auxz00_5375;

					{	/* Cfa/pair.scm 207 */
						BgL_objectz00_bglt BgL_tmpz00_5376;

						BgL_tmpz00_5376 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4711));
						BgL_auxz00_5375 = BGL_OBJECT_WIDENING(BgL_tmpz00_5376);
					}
					BgL_auxz00_5374 = ((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5375);
				}
				return
					(((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5374))->
					BgL_approxz00);
			}
		}

	}



/* &<@anonymous:1777> */
	obj_t BGl_z62zc3z04anonymousza31777ze3ze5zzcfa_pairz00(obj_t BgL_envz00_4712,
		obj_t BgL_appz00_4714)
	{
		{	/* Cfa/pair.scm 196 */
			{	/* Cfa/pair.scm 197 */
				BgL_appz00_bglt BgL_i1193z00_4713;

				BgL_i1193z00_4713 =
					((BgL_appz00_bglt) PROCEDURE_REF(BgL_envz00_4712, (int) (0L)));
				{	/* Cfa/pair.scm 197 */
					bool_t BgL_test2153z00_5385;

					{	/* Cfa/pair.scm 197 */
						obj_t BgL_classz00_4783;

						BgL_classz00_4783 = BGl_conszd2appzd2zzcfa_info2z00;
						if (BGL_OBJECTP(BgL_appz00_4714))
							{	/* Cfa/pair.scm 197 */
								BgL_objectz00_bglt BgL_arg1801z00_4784;

								BgL_arg1801z00_4784 = (BgL_objectz00_bglt) (BgL_appz00_4714);
								if (BGL_CONDEXPAND_ISA_ARCH64())
									{	/* Cfa/pair.scm 197 */
										long BgL_idxz00_4785;

										BgL_idxz00_4785 =
											BGL_OBJECT_INHERITANCE_NUM(BgL_arg1801z00_4784);
										BgL_test2153z00_5385 =
											(VECTOR_REF(BGl_za2inheritancesza2z00zz__objectz00,
												(BgL_idxz00_4785 + 4L)) == BgL_classz00_4783);
									}
								else
									{	/* Cfa/pair.scm 197 */
										bool_t BgL_res2077z00_4788;

										{	/* Cfa/pair.scm 197 */
											obj_t BgL_oclassz00_4789;

											{	/* Cfa/pair.scm 197 */
												long BgL_arg1808z00_4790;

												{	/* Cfa/pair.scm 197 */
													long BgL_arg1809z00_4791;

													BgL_arg1809z00_4791 =
														BGL_OBJECT_CLASS_NUM(BgL_arg1801z00_4784);
													BgL_arg1808z00_4790 =
														(BgL_arg1809z00_4791 - OBJECT_TYPE);
												}
												BgL_oclassz00_4789 =
													VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
													BgL_arg1808z00_4790);
											}
											{	/* Cfa/pair.scm 197 */
												bool_t BgL__ortest_1115z00_4792;

												BgL__ortest_1115z00_4792 =
													(BgL_classz00_4783 == BgL_oclassz00_4789);
												if (BgL__ortest_1115z00_4792)
													{	/* Cfa/pair.scm 197 */
														BgL_res2077z00_4788 = BgL__ortest_1115z00_4792;
													}
												else
													{	/* Cfa/pair.scm 197 */
														long BgL_odepthz00_4793;

														BgL_odepthz00_4793 =
															BGL_CLASS_DEPTH(BgL_oclassz00_4789);
														if ((4L < BgL_odepthz00_4793))
															{	/* Cfa/pair.scm 197 */
																obj_t BgL_arg1797z00_4794;

																BgL_arg1797z00_4794 =
																	BGL_CLASS_ANCESTORS_REF(BgL_oclassz00_4789,
																	4L);
																BgL_res2077z00_4788 =
																	(BgL_arg1797z00_4794 == BgL_classz00_4783);
															}
														else
															{	/* Cfa/pair.scm 197 */
																BgL_res2077z00_4788 = ((bool_t) 0);
															}
													}
											}
										}
										BgL_test2153z00_5385 = BgL_res2077z00_4788;
									}
							}
						else
							{	/* Cfa/pair.scm 197 */
								BgL_test2153z00_5385 = ((bool_t) 0);
							}
					}
					if (BgL_test2153z00_5385)
						{	/* Cfa/pair.scm 197 */
							{
								BgL_conszd2appzd2_bglt BgL_auxz00_5405;

								{
									obj_t BgL_auxz00_5406;

									{	/* Cfa/pair.scm 199 */
										BgL_objectz00_bglt BgL_tmpz00_5407;

										BgL_tmpz00_5407 =
											((BgL_objectz00_bglt)
											((BgL_appz00_bglt) BgL_appz00_4714));
										BgL_auxz00_5406 = BGL_OBJECT_WIDENING(BgL_tmpz00_5407);
									}
									BgL_auxz00_5405 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5406);
								}
								((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5405))->
										BgL_seenzf3zf3) = ((bool_t) ((bool_t) 1)), BUNSPEC);
							}
							{	/* Cfa/pair.scm 202 */
								BgL_approxz00_bglt BgL_arg1793z00_4795;
								obj_t BgL_arg1794z00_4796;

								{
									BgL_conszd2refzd2appz00_bglt BgL_auxz00_5413;

									{
										obj_t BgL_auxz00_5414;

										{	/* Cfa/pair.scm 202 */
											BgL_objectz00_bglt BgL_tmpz00_5415;

											BgL_tmpz00_5415 =
												((BgL_objectz00_bglt) BgL_i1193z00_4713);
											BgL_auxz00_5414 = BGL_OBJECT_WIDENING(BgL_tmpz00_5415);
										}
										BgL_auxz00_5413 =
											((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5414);
									}
									BgL_arg1793z00_4795 =
										(((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5413))->
										BgL_approxz00);
								}
								{	/* Cfa/pair.scm 202 */
									obj_t BgL_fun1799z00_4797;

									{
										BgL_conszd2refzd2appz00_bglt BgL_auxz00_5420;

										{
											obj_t BgL_auxz00_5421;

											{	/* Cfa/pair.scm 202 */
												BgL_objectz00_bglt BgL_tmpz00_5422;

												BgL_tmpz00_5422 =
													((BgL_objectz00_bglt) BgL_i1193z00_4713);
												BgL_auxz00_5421 = BGL_OBJECT_WIDENING(BgL_tmpz00_5422);
											}
											BgL_auxz00_5420 =
												((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5421);
										}
										BgL_fun1799z00_4797 =
											(((BgL_conszd2refzd2appz00_bglt)
												COBJECT(BgL_auxz00_5420))->BgL_getz00);
									}
									{	/* Cfa/pair.scm 202 */
										obj_t BgL_arg1798z00_4798;

										{
											BgL_conszd2appzd2_bglt BgL_auxz00_5427;

											{
												obj_t BgL_auxz00_5428;

												{	/* Cfa/pair.scm 202 */
													BgL_objectz00_bglt BgL_tmpz00_5429;

													BgL_tmpz00_5429 =
														((BgL_objectz00_bglt)
														((BgL_appz00_bglt) BgL_appz00_4714));
													BgL_auxz00_5428 =
														BGL_OBJECT_WIDENING(BgL_tmpz00_5429);
												}
												BgL_auxz00_5427 =
													((BgL_conszd2appzd2_bglt) BgL_auxz00_5428);
											}
											BgL_arg1798z00_4798 =
												(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5427))->
												BgL_approxesz00);
										}
										BgL_arg1794z00_4796 =
											(VA_PROCEDUREP(BgL_fun1799z00_4797) ? ((obj_t(*)(obj_t,
														...))
												PROCEDURE_ENTRY(BgL_fun1799z00_4797))
											(BgL_fun1799z00_4797, BgL_arg1798z00_4798,
												BEOA) : ((obj_t(*)(obj_t,
														obj_t))
												PROCEDURE_ENTRY(BgL_fun1799z00_4797))
											(BgL_fun1799z00_4797, BgL_arg1798z00_4798));
									}
								}
								BGl_unionzd2approxz12zc0zzcfa_approxz00(BgL_arg1793z00_4795,
									((BgL_approxz00_bglt) BgL_arg1794z00_4796));
							}
							{	/* Cfa/pair.scm 203 */
								obj_t BgL_arg1800z00_4799;
								BgL_typez00_bglt BgL_arg1802z00_4800;

								{	/* Cfa/pair.scm 203 */
									obj_t BgL_fun1817z00_4801;

									{
										BgL_conszd2refzd2appz00_bglt BgL_auxz00_5441;

										{
											obj_t BgL_auxz00_5442;

											{	/* Cfa/pair.scm 203 */
												BgL_objectz00_bglt BgL_tmpz00_5443;

												BgL_tmpz00_5443 =
													((BgL_objectz00_bglt) BgL_i1193z00_4713);
												BgL_auxz00_5442 = BGL_OBJECT_WIDENING(BgL_tmpz00_5443);
											}
											BgL_auxz00_5441 =
												((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5442);
										}
										BgL_fun1817z00_4801 =
											(((BgL_conszd2refzd2appz00_bglt)
												COBJECT(BgL_auxz00_5441))->BgL_getz00);
									}
									{	/* Cfa/pair.scm 203 */
										obj_t BgL_arg1816z00_4802;

										{
											BgL_conszd2appzd2_bglt BgL_auxz00_5448;

											{
												obj_t BgL_auxz00_5449;

												{	/* Cfa/pair.scm 203 */
													BgL_objectz00_bglt BgL_tmpz00_5450;

													BgL_tmpz00_5450 =
														((BgL_objectz00_bglt)
														((BgL_appz00_bglt) BgL_appz00_4714));
													BgL_auxz00_5449 =
														BGL_OBJECT_WIDENING(BgL_tmpz00_5450);
												}
												BgL_auxz00_5448 =
													((BgL_conszd2appzd2_bglt) BgL_auxz00_5449);
											}
											BgL_arg1816z00_4802 =
												(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5448))->
												BgL_approxesz00);
										}
										BgL_arg1800z00_4799 =
											(VA_PROCEDUREP(BgL_fun1817z00_4801) ? ((obj_t(*)(obj_t,
														...))
												PROCEDURE_ENTRY(BgL_fun1817z00_4801))
											(BgL_fun1817z00_4801, BgL_arg1816z00_4802,
												BEOA) : ((obj_t(*)(obj_t,
														obj_t))
												PROCEDURE_ENTRY(BgL_fun1817z00_4801))
											(BgL_fun1817z00_4801, BgL_arg1816z00_4802));
									}
								}
								{	/* Cfa/pair.scm 203 */
									BgL_approxz00_bglt BgL_arg1822z00_4803;

									{
										BgL_conszd2refzd2appz00_bglt BgL_auxz00_5460;

										{
											obj_t BgL_auxz00_5461;

											{	/* Cfa/pair.scm 203 */
												BgL_objectz00_bglt BgL_tmpz00_5462;

												BgL_tmpz00_5462 =
													((BgL_objectz00_bglt) BgL_i1193z00_4713);
												BgL_auxz00_5461 = BGL_OBJECT_WIDENING(BgL_tmpz00_5462);
											}
											BgL_auxz00_5460 =
												((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5461);
										}
										BgL_arg1822z00_4803 =
											(((BgL_conszd2refzd2appz00_bglt)
												COBJECT(BgL_auxz00_5460))->BgL_approxz00);
									}
									BgL_arg1802z00_4800 =
										(((BgL_approxz00_bglt) COBJECT(BgL_arg1822z00_4803))->
										BgL_typez00);
								}
								return
									BGl_approxzd2setzd2typez12z12zzcfa_approxz00(
									((BgL_approxz00_bglt) BgL_arg1800z00_4799),
									BgL_arg1802z00_4800);
							}
						}
					else
						{	/* Cfa/pair.scm 197 */
							return BFALSE;
						}
				}
			}
		}

	}



/* &cfa!-cons-app1580 */
	BgL_approxz00_bglt BGl_z62cfaz12zd2conszd2app1580z70zzcfa_pairz00(obj_t
		BgL_envz00_4715, obj_t BgL_nodez00_4716)
	{
		{	/* Cfa/pair.scm 159 */
			{	/* Cfa/pair.scm 162 */
				BgL_approxz00_bglt BgL_caraz00_4805;
				BgL_approxz00_bglt BgL_cdraz00_4806;

				{	/* Cfa/pair.scm 162 */
					obj_t BgL_arg1759z00_4807;

					{	/* Cfa/pair.scm 162 */
						obj_t BgL_pairz00_4808;

						BgL_pairz00_4808 =
							(((BgL_appz00_bglt) COBJECT(
									((BgL_appz00_bglt)
										((BgL_appz00_bglt) BgL_nodez00_4716))))->BgL_argsz00);
						BgL_arg1759z00_4807 = CAR(BgL_pairz00_4808);
					}
					BgL_caraz00_4805 =
						BGl_cfaz12z12zzcfa_cfaz00(((BgL_nodez00_bglt) BgL_arg1759z00_4807));
				}
				{	/* Cfa/pair.scm 163 */
					obj_t BgL_arg1763z00_4809;

					{	/* Cfa/pair.scm 163 */
						obj_t BgL_pairz00_4810;

						BgL_pairz00_4810 =
							(((BgL_appz00_bglt) COBJECT(
									((BgL_appz00_bglt)
										((BgL_appz00_bglt) BgL_nodez00_4716))))->BgL_argsz00);
						BgL_arg1763z00_4809 = CAR(CDR(BgL_pairz00_4810));
					}
					BgL_cdraz00_4806 =
						BGl_cfaz12z12zzcfa_cfaz00(((BgL_nodez00_bglt) BgL_arg1763z00_4809));
				}
				{	/* Cfa/pair.scm 164 */
					obj_t BgL_arg1732z00_4811;

					{	/* Cfa/pair.scm 164 */
						obj_t BgL_arg1733z00_4812;

						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5483;

							{
								obj_t BgL_auxz00_5484;

								{	/* Cfa/pair.scm 164 */
									BgL_objectz00_bglt BgL_tmpz00_5485;

									BgL_tmpz00_5485 =
										((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4716));
									BgL_auxz00_5484 = BGL_OBJECT_WIDENING(BgL_tmpz00_5485);
								}
								BgL_auxz00_5483 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5484);
							}
							BgL_arg1733z00_4812 =
								(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5483))->
								BgL_approxesz00);
						}
						BgL_arg1732z00_4811 = CAR(BgL_arg1733z00_4812);
					}
					BGl_unionzd2approxz12zc0zzcfa_approxz00(
						((BgL_approxz00_bglt) BgL_arg1732z00_4811), BgL_caraz00_4805);
				}
				{	/* Cfa/pair.scm 165 */
					obj_t BgL_arg1734z00_4813;

					{	/* Cfa/pair.scm 165 */
						obj_t BgL_arg1735z00_4814;

						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5494;

							{
								obj_t BgL_auxz00_5495;

								{	/* Cfa/pair.scm 165 */
									BgL_objectz00_bglt BgL_tmpz00_5496;

									BgL_tmpz00_5496 =
										((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4716));
									BgL_auxz00_5495 = BGL_OBJECT_WIDENING(BgL_tmpz00_5496);
								}
								BgL_auxz00_5494 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5495);
							}
							BgL_arg1735z00_4814 =
								(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5494))->
								BgL_approxesz00);
						}
						BgL_arg1734z00_4813 = CDR(BgL_arg1735z00_4814);
					}
					BGl_unionzd2approxz12zc0zzcfa_approxz00(
						((BgL_approxz00_bglt) BgL_arg1734z00_4813), BgL_cdraz00_4806);
				}
				{	/* Cfa/pair.scm 172 */
					obj_t BgL_arg1736z00_4815;
					BgL_typez00_bglt BgL_arg1739z00_4816;

					{	/* Cfa/pair.scm 172 */
						obj_t BgL_arg1741z00_4817;

						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5505;

							{
								obj_t BgL_auxz00_5506;

								{	/* Cfa/pair.scm 172 */
									BgL_objectz00_bglt BgL_tmpz00_5507;

									BgL_tmpz00_5507 =
										((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4716));
									BgL_auxz00_5506 = BGL_OBJECT_WIDENING(BgL_tmpz00_5507);
								}
								BgL_auxz00_5505 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5506);
							}
							BgL_arg1741z00_4817 =
								(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5505))->
								BgL_approxesz00);
						}
						BgL_arg1736z00_4815 = CAR(BgL_arg1741z00_4817);
					}
					{	/* Cfa/pair.scm 173 */
						BgL_typez00_bglt BgL_arg1745z00_4818;

						{	/* Cfa/pair.scm 173 */
							obj_t BgL_arg1746z00_4819;

							{	/* Cfa/pair.scm 173 */
								obj_t BgL_arg1747z00_4820;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5514;

									{
										obj_t BgL_auxz00_5515;

										{	/* Cfa/pair.scm 173 */
											BgL_objectz00_bglt BgL_tmpz00_5516;

											BgL_tmpz00_5516 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_nodez00_4716));
											BgL_auxz00_5515 = BGL_OBJECT_WIDENING(BgL_tmpz00_5516);
										}
										BgL_auxz00_5514 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5515);
									}
									BgL_arg1747z00_4820 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5514))->
										BgL_approxesz00);
								}
								BgL_arg1746z00_4819 = CAR(BgL_arg1747z00_4820);
							}
							BgL_arg1745z00_4818 =
								(((BgL_approxz00_bglt) COBJECT(
										((BgL_approxz00_bglt) BgL_arg1746z00_4819)))->BgL_typez00);
						}
						BgL_arg1739z00_4816 =
							BGl_getzd2bigloozd2typez00zztype_cachez00(BgL_arg1745z00_4818);
					}
					BGl_approxzd2setzd2typez12z12zzcfa_approxz00(
						((BgL_approxz00_bglt) BgL_arg1736z00_4815), BgL_arg1739z00_4816);
				}
				{	/* Cfa/pair.scm 174 */
					obj_t BgL_arg1748z00_4821;
					BgL_typez00_bglt BgL_arg1749z00_4822;

					{	/* Cfa/pair.scm 174 */
						obj_t BgL_arg1750z00_4823;

						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5528;

							{
								obj_t BgL_auxz00_5529;

								{	/* Cfa/pair.scm 174 */
									BgL_objectz00_bglt BgL_tmpz00_5530;

									BgL_tmpz00_5530 =
										((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4716));
									BgL_auxz00_5529 = BGL_OBJECT_WIDENING(BgL_tmpz00_5530);
								}
								BgL_auxz00_5528 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5529);
							}
							BgL_arg1750z00_4823 =
								(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5528))->
								BgL_approxesz00);
						}
						BgL_arg1748z00_4821 = CDR(BgL_arg1750z00_4823);
					}
					{	/* Cfa/pair.scm 175 */
						BgL_typez00_bglt BgL_arg1751z00_4824;

						{	/* Cfa/pair.scm 175 */
							obj_t BgL_arg1752z00_4825;

							{	/* Cfa/pair.scm 175 */
								obj_t BgL_arg1753z00_4826;

								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5537;

									{
										obj_t BgL_auxz00_5538;

										{	/* Cfa/pair.scm 175 */
											BgL_objectz00_bglt BgL_tmpz00_5539;

											BgL_tmpz00_5539 =
												((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_nodez00_4716));
											BgL_auxz00_5538 = BGL_OBJECT_WIDENING(BgL_tmpz00_5539);
										}
										BgL_auxz00_5537 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5538);
									}
									BgL_arg1753z00_4826 =
										(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5537))->
										BgL_approxesz00);
								}
								BgL_arg1752z00_4825 = CDR(BgL_arg1753z00_4826);
							}
							BgL_arg1751z00_4824 =
								(((BgL_approxz00_bglt) COBJECT(
										((BgL_approxz00_bglt) BgL_arg1752z00_4825)))->BgL_typez00);
						}
						BgL_arg1749z00_4822 =
							BGl_getzd2bigloozd2typez00zztype_cachez00(BgL_arg1751z00_4824);
					}
					BGl_approxzd2setzd2typez12z12zzcfa_approxz00(
						((BgL_approxz00_bglt) BgL_arg1748z00_4821), BgL_arg1749z00_4822);
				}
				{
					BgL_conszd2appzd2_bglt BgL_auxz00_5551;

					{
						obj_t BgL_auxz00_5552;

						{	/* Cfa/pair.scm 178 */
							BgL_objectz00_bglt BgL_tmpz00_5553;

							BgL_tmpz00_5553 =
								((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4716));
							BgL_auxz00_5552 = BGL_OBJECT_WIDENING(BgL_tmpz00_5553);
						}
						BgL_auxz00_5551 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5552);
					}
					return
						(((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5551))->
						BgL_approxz00);
				}
			}
		}

	}



/* &node-setup!-pre-cons1578 */
	obj_t BGl_z62nodezd2setupz12zd2prezd2cons1578za2zzcfa_pairz00(obj_t
		BgL_envz00_4717, obj_t BgL_nodez00_4718)
	{
		{	/* Cfa/pair.scm 147 */
			{	/* Cfa/pair.scm 149 */
				obj_t BgL_arg1717z00_4828;

				BgL_arg1717z00_4828 =
					(((BgL_appz00_bglt) COBJECT(
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4718))))->BgL_argsz00);
				BGl_nodezd2setupza2z12z62zzcfa_setupz00(BgL_arg1717z00_4828);
			}
			{	/* Cfa/pair.scm 150 */
				obj_t BgL_cgetz00_4829;

				{
					BgL_prezd2conszd2setz12zd2appzc0_bglt BgL_auxz00_5563;

					{
						obj_t BgL_auxz00_5564;

						{	/* Cfa/pair.scm 150 */
							BgL_objectz00_bglt BgL_tmpz00_5565;

							BgL_tmpz00_5565 =
								((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4718));
							BgL_auxz00_5564 = BGL_OBJECT_WIDENING(BgL_tmpz00_5565);
						}
						BgL_auxz00_5563 =
							((BgL_prezd2conszd2setz12zd2appzc0_bglt) BgL_auxz00_5564);
					}
					BgL_cgetz00_4829 =
						(((BgL_prezd2conszd2setz12zd2appzc0_bglt)
							COBJECT(BgL_auxz00_5563))->BgL_getz00);
				}
				{	/* Cfa/pair.scm 150 */
					BgL_appz00_bglt BgL_nodez00_4830;

					{	/* Cfa/pair.scm 151 */
						long BgL_arg1729z00_4831;

						{	/* Cfa/pair.scm 151 */
							obj_t BgL_arg1730z00_4832;

							{	/* Cfa/pair.scm 151 */
								obj_t BgL_arg1731z00_4833;

								{	/* Cfa/pair.scm 151 */
									long BgL_arg1808z00_4834;

									{	/* Cfa/pair.scm 151 */
										long BgL_arg1809z00_4835;

										BgL_arg1809z00_4835 =
											BGL_OBJECT_CLASS_NUM(
											((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_nodez00_4718)));
										BgL_arg1808z00_4834 = (BgL_arg1809z00_4835 - OBJECT_TYPE);
									}
									BgL_arg1731z00_4833 =
										VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
										BgL_arg1808z00_4834);
								}
								BgL_arg1730z00_4832 =
									BGl_classzd2superzd2zz__objectz00(BgL_arg1731z00_4833);
							}
							{	/* Cfa/pair.scm 151 */
								obj_t BgL_tmpz00_5577;

								BgL_tmpz00_5577 = ((obj_t) BgL_arg1730z00_4832);
								BgL_arg1729z00_4831 = BGL_CLASS_NUM(BgL_tmpz00_5577);
						}}
						BGL_OBJECT_CLASS_NUM_SET(
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4718)), BgL_arg1729z00_4831);
					}
					{	/* Cfa/pair.scm 151 */
						BgL_objectz00_bglt BgL_tmpz00_5583;

						BgL_tmpz00_5583 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4718));
						BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5583, BFALSE);
					}
					((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4718));
					BgL_nodez00_4830 = ((BgL_appz00_bglt) BgL_nodez00_4718);
					{	/* Cfa/pair.scm 151 */

						{	/* Cfa/pair.scm 152 */
							BgL_conszd2setz12zd2appz12_bglt BgL_wide1190z00_4836;

							BgL_wide1190z00_4836 =
								((BgL_conszd2setz12zd2appz12_bglt)
								BOBJECT(GC_MALLOC(sizeof(struct
											BgL_conszd2setz12zd2appz12_bgl))));
							{	/* Cfa/pair.scm 152 */
								obj_t BgL_auxz00_5595;
								BgL_objectz00_bglt BgL_tmpz00_5591;

								BgL_auxz00_5595 = ((obj_t) BgL_wide1190z00_4836);
								BgL_tmpz00_5591 =
									((BgL_objectz00_bglt)
									((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
								BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5591, BgL_auxz00_5595);
							}
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
							{	/* Cfa/pair.scm 152 */
								long BgL_arg1718z00_4837;

								BgL_arg1718z00_4837 =
									BGL_CLASS_NUM(BGl_conszd2setz12zd2appz12zzcfa_info2z00);
								BGL_OBJECT_CLASS_NUM_SET(
									((BgL_objectz00_bglt)
										((BgL_appz00_bglt)
											((BgL_appz00_bglt) BgL_nodez00_4830))),
									BgL_arg1718z00_4837);
							}
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
						}
						{
							BgL_conszd2setz12zd2appz12_bglt BgL_auxz00_5609;

							{
								obj_t BgL_auxz00_5610;

								{	/* Cfa/pair.scm 154 */
									BgL_objectz00_bglt BgL_tmpz00_5611;

									BgL_tmpz00_5611 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
									BgL_auxz00_5610 = BGL_OBJECT_WIDENING(BgL_tmpz00_5611);
								}
								BgL_auxz00_5609 =
									((BgL_conszd2setz12zd2appz12_bglt) BgL_auxz00_5610);
							}
							((((BgL_conszd2setz12zd2appz12_bglt) COBJECT(BgL_auxz00_5609))->
									BgL_approxz00) =
								((BgL_approxz00_bglt)
									BGl_makezd2typezd2approxz00zzcfa_approxz00(((BgL_typez00_bglt)
											BGl_za2unspecza2z00zztype_cachez00))), BUNSPEC);
						}
						{
							BgL_conszd2setz12zd2appz12_bglt BgL_auxz00_5620;

							{
								obj_t BgL_auxz00_5621;

								{	/* Cfa/pair.scm 153 */
									BgL_objectz00_bglt BgL_tmpz00_5622;

									BgL_tmpz00_5622 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
									BgL_auxz00_5621 = BGL_OBJECT_WIDENING(BgL_tmpz00_5622);
								}
								BgL_auxz00_5620 =
									((BgL_conszd2setz12zd2appz12_bglt) BgL_auxz00_5621);
							}
							((((BgL_conszd2setz12zd2appz12_bglt) COBJECT(BgL_auxz00_5620))->
									BgL_getz00) = ((obj_t) BgL_cgetz00_4829), BUNSPEC);
						}
						return
							((obj_t)
							((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4830)));
					}
				}
			}
		}

	}



/* &node-setup!-pre-cons1576 */
	obj_t BGl_z62nodezd2setupz12zd2prezd2cons1576za2zzcfa_pairz00(obj_t
		BgL_envz00_4719, obj_t BgL_nodez00_4720)
	{
		{	/* Cfa/pair.scm 134 */
			{	/* Tools/trace.sch 53 */
				obj_t BgL_arg1709z00_4839;

				BgL_arg1709z00_4839 =
					(((BgL_appz00_bglt) COBJECT(
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4720))))->BgL_argsz00);
				BGl_nodezd2setupza2z12z62zzcfa_setupz00(BgL_arg1709z00_4839);
			}
			{	/* Tools/trace.sch 53 */
				obj_t BgL_cgetz00_4840;

				{
					BgL_prezd2conszd2refzd2appzd2_bglt BgL_auxz00_5636;

					{
						obj_t BgL_auxz00_5637;

						{	/* Tools/trace.sch 53 */
							BgL_objectz00_bglt BgL_tmpz00_5638;

							BgL_tmpz00_5638 =
								((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4720));
							BgL_auxz00_5637 = BGL_OBJECT_WIDENING(BgL_tmpz00_5638);
						}
						BgL_auxz00_5636 =
							((BgL_prezd2conszd2refzd2appzd2_bglt) BgL_auxz00_5637);
					}
					BgL_cgetz00_4840 =
						(((BgL_prezd2conszd2refzd2appzd2_bglt) COBJECT(BgL_auxz00_5636))->
						BgL_getz00);
				}
				{	/* Tools/trace.sch 53 */
					BgL_appz00_bglt BgL_nodez00_4841;

					{	/* Tools/trace.sch 53 */
						long BgL_arg1712z00_4842;

						{	/* Tools/trace.sch 53 */
							obj_t BgL_arg1714z00_4843;

							{	/* Tools/trace.sch 53 */
								obj_t BgL_arg1715z00_4844;

								{	/* Tools/trace.sch 53 */
									long BgL_arg1808z00_4845;

									{	/* Tools/trace.sch 53 */
										long BgL_arg1809z00_4846;

										BgL_arg1809z00_4846 =
											BGL_OBJECT_CLASS_NUM(
											((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_nodez00_4720)));
										BgL_arg1808z00_4845 = (BgL_arg1809z00_4846 - OBJECT_TYPE);
									}
									BgL_arg1715z00_4844 =
										VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
										BgL_arg1808z00_4845);
								}
								BgL_arg1714z00_4843 =
									BGl_classzd2superzd2zz__objectz00(BgL_arg1715z00_4844);
							}
							{	/* Tools/trace.sch 53 */
								obj_t BgL_tmpz00_5650;

								BgL_tmpz00_5650 = ((obj_t) BgL_arg1714z00_4843);
								BgL_arg1712z00_4842 = BGL_CLASS_NUM(BgL_tmpz00_5650);
						}}
						BGL_OBJECT_CLASS_NUM_SET(
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4720)), BgL_arg1712z00_4842);
					}
					{	/* Tools/trace.sch 53 */
						BgL_objectz00_bglt BgL_tmpz00_5656;

						BgL_tmpz00_5656 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4720));
						BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5656, BFALSE);
					}
					((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4720));
					BgL_nodez00_4841 = ((BgL_appz00_bglt) BgL_nodez00_4720);
					{	/* Tools/trace.sch 53 */

						{	/* Tools/trace.sch 53 */
							BgL_conszd2refzd2appz00_bglt BgL_wide1184z00_4847;

							BgL_wide1184z00_4847 =
								((BgL_conszd2refzd2appz00_bglt) BOBJECT(GC_MALLOC(sizeof(struct
											BgL_conszd2refzd2appz00_bgl))));
							{	/* Tools/trace.sch 53 */
								obj_t BgL_auxz00_5668;
								BgL_objectz00_bglt BgL_tmpz00_5664;

								BgL_auxz00_5668 = ((obj_t) BgL_wide1184z00_4847);
								BgL_tmpz00_5664 =
									((BgL_objectz00_bglt)
									((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
								BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5664, BgL_auxz00_5668);
							}
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
							{	/* Tools/trace.sch 53 */
								long BgL_arg1710z00_4848;

								BgL_arg1710z00_4848 =
									BGL_CLASS_NUM(BGl_conszd2refzd2appz00zzcfa_info2z00);
								BGL_OBJECT_CLASS_NUM_SET(
									((BgL_objectz00_bglt)
										((BgL_appz00_bglt)
											((BgL_appz00_bglt) BgL_nodez00_4841))),
									BgL_arg1710z00_4848);
							}
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
						}
						{
							BgL_conszd2refzd2appz00_bglt BgL_auxz00_5682;

							{
								obj_t BgL_auxz00_5683;

								{	/* Tools/trace.sch 53 */
									BgL_objectz00_bglt BgL_tmpz00_5684;

									BgL_tmpz00_5684 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
									BgL_auxz00_5683 = BGL_OBJECT_WIDENING(BgL_tmpz00_5684);
								}
								BgL_auxz00_5682 =
									((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5683);
							}
							((((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5682))->
									BgL_approxz00) =
								((BgL_approxz00_bglt)
									BGl_makezd2emptyzd2approxz00zzcfa_approxz00()), BUNSPEC);
						}
						{
							BgL_conszd2refzd2appz00_bglt BgL_auxz00_5692;

							{
								obj_t BgL_auxz00_5693;

								{	/* Tools/trace.sch 53 */
									BgL_objectz00_bglt BgL_tmpz00_5694;

									BgL_tmpz00_5694 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
									BgL_auxz00_5693 = BGL_OBJECT_WIDENING(BgL_tmpz00_5694);
								}
								BgL_auxz00_5692 =
									((BgL_conszd2refzd2appz00_bglt) BgL_auxz00_5693);
							}
							((((BgL_conszd2refzd2appz00_bglt) COBJECT(BgL_auxz00_5692))->
									BgL_getz00) = ((obj_t) BgL_cgetz00_4840), BUNSPEC);
						}
						return
							((obj_t)
							((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4841)));
					}
				}
			}
		}

	}



/* &node-setup!-pre-cons1573 */
	obj_t BGl_z62nodezd2setupz12zd2prezd2cons1573za2zzcfa_pairz00(obj_t
		BgL_envz00_4721, obj_t BgL_nodez00_4722)
	{
		{	/* Cfa/pair.scm 119 */
			{	/* Cfa/pair.scm 121 */
				obj_t BgL_arg1690z00_4850;

				BgL_arg1690z00_4850 =
					(((BgL_appz00_bglt) COBJECT(
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4722))))->BgL_argsz00);
				BGl_nodezd2setupza2z12z62zzcfa_setupz00(BgL_arg1690z00_4850);
			}
			{	/* Cfa/pair.scm 122 */
				BgL_variablez00_bglt BgL_ownerz00_4851;

				{
					BgL_prezd2conszd2appz00_bglt BgL_auxz00_5708;

					{
						obj_t BgL_auxz00_5709;

						{	/* Cfa/pair.scm 122 */
							BgL_objectz00_bglt BgL_tmpz00_5710;

							BgL_tmpz00_5710 =
								((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4722));
							BgL_auxz00_5709 = BGL_OBJECT_WIDENING(BgL_tmpz00_5710);
						}
						BgL_auxz00_5708 = ((BgL_prezd2conszd2appz00_bglt) BgL_auxz00_5709);
					}
					BgL_ownerz00_4851 =
						(((BgL_prezd2conszd2appz00_bglt) COBJECT(BgL_auxz00_5708))->
						BgL_ownerz00);
				}
				{	/* Cfa/pair.scm 122 */
					BgL_appz00_bglt BgL_nodez00_4852;

					{	/* Cfa/pair.scm 123 */
						long BgL_arg1706z00_4853;

						{	/* Cfa/pair.scm 123 */
							obj_t BgL_arg1707z00_4854;

							{	/* Cfa/pair.scm 123 */
								obj_t BgL_arg1708z00_4855;

								{	/* Cfa/pair.scm 123 */
									long BgL_arg1808z00_4856;

									{	/* Cfa/pair.scm 123 */
										long BgL_arg1809z00_4857;

										BgL_arg1809z00_4857 =
											BGL_OBJECT_CLASS_NUM(
											((BgL_objectz00_bglt)
												((BgL_appz00_bglt) BgL_nodez00_4722)));
										BgL_arg1808z00_4856 = (BgL_arg1809z00_4857 - OBJECT_TYPE);
									}
									BgL_arg1708z00_4855 =
										VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
										BgL_arg1808z00_4856);
								}
								BgL_arg1707z00_4854 =
									BGl_classzd2superzd2zz__objectz00(BgL_arg1708z00_4855);
							}
							{	/* Cfa/pair.scm 123 */
								obj_t BgL_tmpz00_5722;

								BgL_tmpz00_5722 = ((obj_t) BgL_arg1707z00_4854);
								BgL_arg1706z00_4853 = BGL_CLASS_NUM(BgL_tmpz00_5722);
						}}
						BGL_OBJECT_CLASS_NUM_SET(
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) BgL_nodez00_4722)), BgL_arg1706z00_4853);
					}
					{	/* Cfa/pair.scm 123 */
						BgL_objectz00_bglt BgL_tmpz00_5728;

						BgL_tmpz00_5728 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4722));
						BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5728, BFALSE);
					}
					((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4722));
					BgL_nodez00_4852 = ((BgL_appz00_bglt) BgL_nodez00_4722);
					{	/* Cfa/pair.scm 123 */
						BgL_appz00_bglt BgL_wnodez00_4858;

						{	/* Cfa/pair.scm 124 */
							BgL_conszd2appzd2_bglt BgL_wide1177z00_4859;

							BgL_wide1177z00_4859 =
								((BgL_conszd2appzd2_bglt) BOBJECT(GC_MALLOC(sizeof(struct
											BgL_conszd2appzd2_bgl))));
							{	/* Cfa/pair.scm 124 */
								obj_t BgL_auxz00_5740;
								BgL_objectz00_bglt BgL_tmpz00_5736;

								BgL_auxz00_5740 = ((obj_t) BgL_wide1177z00_4859);
								BgL_tmpz00_5736 =
									((BgL_objectz00_bglt)
									((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
								BGL_OBJECT_WIDENING_SET(BgL_tmpz00_5736, BgL_auxz00_5740);
							}
							((BgL_objectz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
							{	/* Cfa/pair.scm 124 */
								long BgL_arg1695z00_4860;

								BgL_arg1695z00_4860 =
									BGL_CLASS_NUM(BGl_conszd2appzd2zzcfa_info2z00);
								BGL_OBJECT_CLASS_NUM_SET(
									((BgL_objectz00_bglt)
										((BgL_appz00_bglt)
											((BgL_appz00_bglt) BgL_nodez00_4852))),
									BgL_arg1695z00_4860);
							}
							((BgL_appz00_bglt)
								((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
						}
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5754;

							{
								obj_t BgL_auxz00_5755;

								{	/* Cfa/pair.scm 127 */
									BgL_objectz00_bglt BgL_tmpz00_5756;

									BgL_tmpz00_5756 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5755 = BGL_OBJECT_WIDENING(BgL_tmpz00_5756);
								}
								BgL_auxz00_5754 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5755);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5754))->
									BgL_approxz00) =
								((BgL_approxz00_bglt)
									BGl_makezd2emptyzd2approxz00zzcfa_approxz00()), BUNSPEC);
						}
						{
							obj_t BgL_auxz00_5772;
							BgL_conszd2appzd2_bglt BgL_auxz00_5764;

							{	/* Cfa/pair.scm 126 */
								BgL_approxz00_bglt BgL_arg1696z00_4861;
								BgL_approxz00_bglt BgL_arg1698z00_4862;

								BgL_arg1696z00_4861 =
									BGl_makezd2emptyzd2approxz00zzcfa_approxz00();
								BgL_arg1698z00_4862 =
									BGl_makezd2emptyzd2approxz00zzcfa_approxz00();
								BgL_auxz00_5772 =
									MAKE_YOUNG_PAIR(
									((obj_t) BgL_arg1696z00_4861), ((obj_t) BgL_arg1698z00_4862));
							}
							{
								obj_t BgL_auxz00_5765;

								{	/* Cfa/pair.scm 126 */
									BgL_objectz00_bglt BgL_tmpz00_5766;

									BgL_tmpz00_5766 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5765 = BGL_OBJECT_WIDENING(BgL_tmpz00_5766);
								}
								BgL_auxz00_5764 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5765);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5764))->
									BgL_approxesz00) = ((obj_t) BgL_auxz00_5772), BUNSPEC);
						}
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5779;

							{
								obj_t BgL_auxz00_5780;

								{	/* Cfa/pair.scm 122 */
									BgL_objectz00_bglt BgL_tmpz00_5781;

									BgL_tmpz00_5781 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5780 = BGL_OBJECT_WIDENING(BgL_tmpz00_5781);
								}
								BgL_auxz00_5779 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5780);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5779))->
									BgL_lostzd2stampzd2) = ((long) -1L), BUNSPEC);
						}
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5788;

							{
								obj_t BgL_auxz00_5789;

								{	/* Cfa/pair.scm 125 */
									BgL_objectz00_bglt BgL_tmpz00_5790;

									BgL_tmpz00_5790 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5789 = BGL_OBJECT_WIDENING(BgL_tmpz00_5790);
								}
								BgL_auxz00_5788 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5789);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5788))->
									BgL_ownerz00) =
								((BgL_variablez00_bglt) BgL_ownerz00_4851), BUNSPEC);
						}
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5797;

							{
								obj_t BgL_auxz00_5798;

								{	/* Cfa/pair.scm 122 */
									BgL_objectz00_bglt BgL_tmpz00_5799;

									BgL_tmpz00_5799 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5798 = BGL_OBJECT_WIDENING(BgL_tmpz00_5799);
								}
								BgL_auxz00_5797 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5798);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5797))->
									BgL_stackzd2stampzd2) = ((obj_t) BNIL), BUNSPEC);
						}
						{
							BgL_conszd2appzd2_bglt BgL_auxz00_5806;

							{
								obj_t BgL_auxz00_5807;

								{	/* Cfa/pair.scm 122 */
									BgL_objectz00_bglt BgL_tmpz00_5808;

									BgL_tmpz00_5808 =
										((BgL_objectz00_bglt)
										((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852)));
									BgL_auxz00_5807 = BGL_OBJECT_WIDENING(BgL_tmpz00_5808);
								}
								BgL_auxz00_5806 = ((BgL_conszd2appzd2_bglt) BgL_auxz00_5807);
							}
							((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5806))->
									BgL_seenzf3zf3) = ((bool_t) ((bool_t) 0)), BUNSPEC);
						}
						BgL_wnodez00_4858 =
							((BgL_appz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_4852));
						{	/* Cfa/pair.scm 124 */

							{	/* Cfa/pair.scm 129 */
								BgL_approxz00_bglt BgL_arg1693z00_4863;

								BgL_arg1693z00_4863 =
									BGl_makezd2typezd2alloczd2approxzd2zzcfa_approxz00(
									((BgL_typez00_bglt) BGl_za2pairza2z00zztype_cachez00),
									((BgL_nodez00_bglt) BgL_nodez00_4852));
								{
									BgL_conszd2appzd2_bglt BgL_auxz00_5820;

									{
										obj_t BgL_auxz00_5821;

										{	/* Cfa/pair.scm 129 */
											BgL_objectz00_bglt BgL_tmpz00_5822;

											BgL_tmpz00_5822 =
												((BgL_objectz00_bglt) BgL_wnodez00_4858);
											BgL_auxz00_5821 = BGL_OBJECT_WIDENING(BgL_tmpz00_5822);
										}
										BgL_auxz00_5820 =
											((BgL_conszd2appzd2_bglt) BgL_auxz00_5821);
									}
									return
										((((BgL_conszd2appzd2_bglt) COBJECT(BgL_auxz00_5820))->
											BgL_approxz00) =
										((BgL_approxz00_bglt) BgL_arg1693z00_4863), BUNSPEC);
								}
							}
						}
					}
				}
			}
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zzcfa_pairz00(void)
	{
		{	/* Cfa/pair.scm 17 */
			BGl_modulezd2initializa7ationz75zztools_tracez00(54713316L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zztools_errorz00(300504031L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zztools_shapez00(365925558L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zztype_typez00(515343395L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zztype_cachez00(346491734L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzast_varz00(90839984L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzast_nodez00(469732712L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzast_envz00(146730773L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzengine_paramz00(517137079L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_infoz00(3788352L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_info2z00(0L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_info3z00(0L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_loosez00(471177480L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_iteratez00(131412063L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_cfaz00(400853817L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_setupz00(168272122L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			BGl_modulezd2initializa7ationz75zzcfa_approxz00(54924680L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
			return
				BGl_modulezd2initializa7ationz75zzcfa_tvectorz00(324810626L,
				BSTRING_TO_STRING(BGl_string2095z00zzcfa_pairz00));
		}

	}

#ifdef __cplusplus
}
#endif
