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

/* unsafe mode */
#define BIGLOO_UNSAFE 1

/* traces mode */
#define BIGLOO_TRACE 0

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

#ifdef __cplusplus
extern "C"
{
#endif
#ifndef BGL_MODULE_TYPE_DEFINITIONS
#define BGL_MODULE_TYPE_DEFINITIONS
#ifndef BGL_AST_SHRINKIFY_TYPE_DEFINITIONS
#define BGL_AST_SHRINKIFY_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_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_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_sequencez00_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;
		obj_t BgL_nodesz00;
		bool_t BgL_unsafez00;
		obj_t BgL_metaz00;
	}                  *BgL_sequencez00_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_appzd2lyzd2_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_funz00;
		struct BgL_nodez00_bgl *BgL_argz00;
	}                  *BgL_appzd2lyzd2_bglt;

	typedef struct BgL_funcallz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_funz00;
		obj_t BgL_argsz00;
		obj_t BgL_strengthz00;
		obj_t BgL_functionsz00;
	}                 *BgL_funcallz00_bglt;

	typedef struct BgL_externz00_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;
		obj_t BgL_exprza2za2;
		obj_t BgL_effectz00;
	}                *BgL_externz00_bglt;

	typedef struct BgL_castz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_argz00;
	}              *BgL_castz00_bglt;

	typedef struct BgL_setqz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_varz00_bgl *BgL_varz00;
		struct BgL_nodez00_bgl *BgL_valuez00;
	}              *BgL_setqz00_bglt;

	typedef struct BgL_conditionalz00_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_nodez00_bgl *BgL_testz00;
		struct BgL_nodez00_bgl *BgL_truez00;
		struct BgL_nodez00_bgl *BgL_falsez00;
	}                     *BgL_conditionalz00_bglt;

	typedef struct BgL_failz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_procz00;
		struct BgL_nodez00_bgl *BgL_msgz00;
		struct BgL_nodez00_bgl *BgL_objz00;
	}              *BgL_failz00_bglt;

	typedef struct BgL_switchz00_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_nodez00_bgl *BgL_testz00;
		obj_t BgL_clausesz00;
		struct BgL_typez00_bgl *BgL_itemzd2typezd2;
	}                *BgL_switchz00_bglt;

	typedef struct BgL_letzd2funzd2_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;
		obj_t BgL_localsz00;
		struct BgL_nodez00_bgl *BgL_bodyz00;
	}                   *BgL_letzd2funzd2_bglt;

	typedef struct BgL_letzd2varzd2_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;
		obj_t BgL_bindingsz00;
		struct BgL_nodez00_bgl *BgL_bodyz00;
		bool_t BgL_removablezf3zf3;
	}                   *BgL_letzd2varzd2_bglt;

	typedef struct BgL_setzd2exzd2itz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_varz00_bgl *BgL_varz00;
		struct BgL_nodez00_bgl *BgL_bodyz00;
		struct BgL_nodez00_bgl *BgL_onexitz00;
	}                       *BgL_setzd2exzd2itz00_bglt;

	typedef struct BgL_jumpzd2exzd2itz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_exitz00;
		struct BgL_nodez00_bgl *BgL_valuez00;
	}                        *BgL_jumpzd2exzd2itz00_bglt;

	typedef struct BgL_makezd2boxzd2_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_nodez00_bgl *BgL_valuez00;
		struct BgL_typez00_bgl *BgL_vtypez00;
		obj_t BgL_stackablez00;
	}                    *BgL_makezd2boxzd2_bglt;

	typedef struct BgL_boxzd2refzd2_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_varz00;
		struct BgL_typez00_bgl *BgL_vtypez00;
	}                   *BgL_boxzd2refzd2_bglt;

	typedef struct BgL_boxzd2setz12zc0_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_varz00_bgl *BgL_varz00;
		struct BgL_nodez00_bgl *BgL_valuez00;
		struct BgL_typez00_bgl *BgL_vtypez00;
	}                      *BgL_boxzd2setz12zc0_bglt;

	typedef struct BgL_syncz00_bgl
	{
		header_t header;
		obj_t widening;
		obj_t BgL_locz00;
		struct BgL_typez00_bgl *BgL_typez00;
		struct BgL_nodez00_bgl *BgL_mutexz00;
		struct BgL_nodez00_bgl *BgL_prelockz00;
		struct BgL_nodez00_bgl *BgL_bodyz00;
	}              *BgL_syncz00_bglt;


#endif													// BGL_AST_SHRINKIFY_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t
		BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(BgL_variablez00_bglt);
	extern obj_t BGl_setqz00zzast_nodez00;
	static obj_t BGl_requirezd2initializa7ationz75zzast_shrinkifyz00 = BUNSPEC;
	static obj_t
		BGl_z62shrinkzd2nodez12zd2letzd2fun1291za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2nodez121253za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t
		BGl_z62shrinkzd2nodez12zd2appzd2ly1268za2zzast_shrinkifyz00(obj_t, obj_t);
	extern obj_t BGl_syncz00zzast_nodez00;
	extern obj_t BGl_setzd2exzd2itz00zzast_nodez00;
	BGL_IMPORT obj_t BGl_za2classesza2z00zz__objectz00;
	BGL_IMPORT obj_t BGl_registerzd2genericz12zc0zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	extern obj_t BGl_atomz00zzast_nodez00;
	static obj_t BGl_toplevelzd2initzd2zzast_shrinkifyz00(void);
	extern obj_t BGl_sequencez00zzast_nodez00;
	extern obj_t BGl_forzd2eachzd2globalz12z12zzast_envz00(obj_t, obj_t);
	extern obj_t BGl_letzd2varzd2zzast_nodez00;
	extern obj_t BGl_failz00zzast_nodez00;
	static obj_t BGl_genericzd2initzd2zzast_shrinkifyz00(void);
	static obj_t BGl_z62shrinkzd2variablez12za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_objectzd2initzd2zzast_shrinkifyz00(void);
	extern obj_t BGl_castz00zzast_nodez00;
	extern obj_t BGl_boxzd2refzd2zzast_nodez00;
	static obj_t BGl_z62shrinkzd2nodez12zd2extern1272z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2switch1283z70zzast_shrinkifyz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t, obj_t);
	static obj_t BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(BgL_nodez00_bglt);
	static obj_t BGl_z62shrinkzd2nodez12zd2kwote1260z70zzast_shrinkifyz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00(obj_t,
		obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_shrinkifyz12z12zzast_shrinkifyz00(obj_t);
	static obj_t BGl_methodzd2initzd2zzast_shrinkifyz00(void);
	static obj_t
		BGl_z62shrinkzd2nodez12zd2setzd2exzd21295z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2cast1275z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2conditi1279z70zzast_shrinkifyz00(obj_t,
		obj_t);
	extern obj_t BGl_externz00zzast_nodez00;
	static obj_t BGl_z62shrinkzd2nodez12zd2funcall1270z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkifyz12z70zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2setq1277z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t
		BGl_z62shrinkzd2nodez12zd2boxzd2set1289za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2sync1264z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t
		BGl_z62shrinkzd2nodez12zd2letzd2var1293za2zzast_shrinkifyz00(obj_t, obj_t);
	extern obj_t BGl_varz00zzast_nodez00;
	extern obj_t BGl_makezd2boxzd2zzast_nodez00;
	static obj_t
		BGl_z62shrinkzd2nodez12zd2boxzd2ref1287za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2fail1281z70zzast_shrinkifyz00(obj_t,
		obj_t);
	BGL_IMPORT obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2variablez121251za2zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2sequenc1262z70zzast_shrinkifyz00(obj_t,
		obj_t);
	extern obj_t BGl_boxzd2setz12zc0zzast_nodez00;
	static obj_t BGl_z62shrinkzd2nodez12zd2var1258z70zzast_shrinkifyz00(obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_modulezd2initializa7ationz75zzast_shrinkifyz00(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_typez00(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__readerz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__bitz00(long, char *);
	BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	extern obj_t BGl_appz00zzast_nodez00;
	extern obj_t BGl_appzd2lyzd2zzast_nodez00;
	static obj_t
		BGl_z62shrinkzd2nodez12zd2makezd2bo1285za2zzast_shrinkifyz00(obj_t, obj_t);
	extern obj_t BGl_nodez00zzast_nodez00;
	extern obj_t BGl_kwotez00zzast_nodez00;
	extern obj_t BGl_jumpzd2exzd2itz00zzast_nodez00;
	static obj_t BGl_cnstzd2initzd2zzast_shrinkifyz00(void);
	static obj_t BGl_libraryzd2moduleszd2initz00zzast_shrinkifyz00(void);
	static obj_t BGl_importedzd2moduleszd2initz00zzast_shrinkifyz00(void);
	static obj_t BGl_gczd2rootszd2initz00zzast_shrinkifyz00(void);
	static obj_t BGl_z62shrinkzd2nodez12zd2app1266z70zzast_shrinkifyz00(obj_t,
		obj_t);
	static obj_t BGl_z62shrinkzd2nodez12za2zzast_shrinkifyz00(obj_t, obj_t);
	extern obj_t BGl_letzd2funzd2zzast_nodez00;
	BGL_IMPORT obj_t BGl_genericzd2addzd2methodz12z12zz__objectz00(obj_t, obj_t,
		obj_t, obj_t);
	extern obj_t BGl_variablez00zzast_varz00;
	extern obj_t BGl_switchz00zzast_nodez00;
	static bool_t BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(obj_t);
	BGL_IMPORT obj_t BGl_classzd2superzd2zz__objectz00(obj_t);
	extern obj_t BGl_conditionalz00zzast_nodez00;
	static obj_t
		BGl_z62shrinkzd2nodez12zd2jumpzd2ex1297za2zzast_shrinkifyz00(obj_t, obj_t);
	static obj_t BGl_z62shrinkzd2nodez12zd2atom1256z70zzast_shrinkifyz00(obj_t,
		obj_t);
	extern obj_t BGl_funcallz00zzast_nodez00;
	static obj_t __cnst[1];


	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_shrinkifyz12zd2envzc0zzast_shrinkifyz00,
		BgL_bgl_za762shrinkifyza712za71865za7,
		BGl_z62shrinkifyz12z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	     
		DEFINE_STATIC_BGL_GENERIC
		(BGl_shrinkzd2variablez12zd2envz12zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2vari1866z00,
		BGl_z62shrinkzd2variablez12za2zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STRING(BGl_string1835z00zzast_shrinkifyz00,
		BgL_bgl_string1835za700za7za7a1867za7, "shrink-variable!1251", 20);
	      DEFINE_STRING(BGl_string1837z00zzast_shrinkifyz00,
		BgL_bgl_string1837za700za7za7a1868za7, "shrink-node!1253", 16);
	      DEFINE_STRING(BGl_string1838z00zzast_shrinkifyz00,
		BgL_bgl_string1838za700za7za7a1869za7, "No method for this object", 25);
	      DEFINE_STRING(BGl_string1840z00zzast_shrinkifyz00,
		BgL_bgl_string1840za700za7za7a1870za7, "shrink-node!", 12);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1834z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2vari1871z00,
		BGl_z62shrinkzd2variablez121251za2zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1836z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1872z00,
		BGl_z62shrinkzd2nodez121253za2zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1839z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1873z00,
		BGl_z62shrinkzd2nodez12zd2atom1256z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1841z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1874z00,
		BGl_z62shrinkzd2nodez12zd2var1258z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1842z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1875z00,
		BGl_z62shrinkzd2nodez12zd2kwote1260z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1843z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1876z00,
		BGl_z62shrinkzd2nodez12zd2sequenc1262z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1844z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1877z00,
		BGl_z62shrinkzd2nodez12zd2sync1264z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1845z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1878z00,
		BGl_z62shrinkzd2nodez12zd2app1266z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1846z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1879z00,
		BGl_z62shrinkzd2nodez12zd2appzd2ly1268za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1847z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1880z00,
		BGl_z62shrinkzd2nodez12zd2funcall1270z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1848z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1881z00,
		BGl_z62shrinkzd2nodez12zd2extern1272z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1849z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1882z00,
		BGl_z62shrinkzd2nodez12zd2cast1275z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1850z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1883z00,
		BGl_z62shrinkzd2nodez12zd2setq1277z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1851z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1884z00,
		BGl_z62shrinkzd2nodez12zd2conditi1279z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1852z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1885z00,
		BGl_z62shrinkzd2nodez12zd2fail1281z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1853z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1886z00,
		BGl_z62shrinkzd2nodez12zd2switch1283z70zzast_shrinkifyz00, 0L, BUNSPEC, 1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1854z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1887z00,
		BGl_z62shrinkzd2nodez12zd2makezd2bo1285za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STRING(BGl_string1861z00zzast_shrinkifyz00,
		BgL_bgl_string1861za700za7za7a1888za7, "ast_shrinkify", 13);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1855z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1889z00,
		BGl_z62shrinkzd2nodez12zd2boxzd2ref1287za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STRING(BGl_string1862z00zzast_shrinkifyz00,
		BgL_bgl_string1862za700za7za7a1890za7, "shrink-node!1253 ", 17);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1856z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1891z00,
		BGl_z62shrinkzd2nodez12zd2boxzd2set1289za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1857z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1892z00,
		BGl_z62shrinkzd2nodez12zd2letzd2fun1291za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1858z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1893z00,
		BGl_z62shrinkzd2nodez12zd2letzd2var1293za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1859z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1894z00,
		BGl_z62shrinkzd2nodez12zd2setzd2exzd21295z70zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	      DEFINE_STATIC_BGL_PROCEDURE(BGl_proc1860z00zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1895z00,
		BGl_z62shrinkzd2nodez12zd2jumpzd2ex1297za2zzast_shrinkifyz00, 0L, BUNSPEC,
		1);
	     
		DEFINE_STATIC_BGL_GENERIC(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
		BgL_bgl_za762shrinkza7d2node1896z00,
		BGl_z62shrinkzd2nodez12za2zzast_shrinkifyz00, 0L, BUNSPEC, 1);

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



/* module-initialization */
	BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzast_shrinkifyz00(long
		BgL_checksumz00_2208, char *BgL_fromz00_2209)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zzast_shrinkifyz00))
				{
					BGl_requirezd2initializa7ationz75zzast_shrinkifyz00 =
						BBOOL(((bool_t) 0));
					BGl_gczd2rootszd2initz00zzast_shrinkifyz00();
					BGl_libraryzd2moduleszd2initz00zzast_shrinkifyz00();
					BGl_cnstzd2initzd2zzast_shrinkifyz00();
					BGl_importedzd2moduleszd2initz00zzast_shrinkifyz00();
					BGl_genericzd2initzd2zzast_shrinkifyz00();
					BGl_methodzd2initzd2zzast_shrinkifyz00();
					return BGl_toplevelzd2initzd2zzast_shrinkifyz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* library-modules-init */
	obj_t BGl_libraryzd2moduleszd2initz00zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			BGl_modulezd2initializa7ationz75zz__objectz00(0L, "ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__readerz00(0L, "ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(0L,
				"ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__errorz00(0L, "ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(0L,
				"ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__bitz00(0L, "ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(0L,
				"ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(0L,
				"ast_shrinkify");
			BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(0L,
				"ast_shrinkify");
			return BUNSPEC;
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			{	/* Ast/shrinkify.scm 15 */
				obj_t BgL_cportz00_2103;

				{	/* Ast/shrinkify.scm 15 */
					obj_t BgL_stringz00_2110;

					BgL_stringz00_2110 = BGl_string1862z00zzast_shrinkifyz00;
					{	/* Ast/shrinkify.scm 15 */
						obj_t BgL_startz00_2111;

						BgL_startz00_2111 = BINT(0L);
						{	/* Ast/shrinkify.scm 15 */
							obj_t BgL_endz00_2112;

							BgL_endz00_2112 =
								BINT(STRING_LENGTH(((obj_t) BgL_stringz00_2110)));
							{	/* Ast/shrinkify.scm 15 */

								BgL_cportz00_2103 =
									BGl_openzd2inputzd2stringz12z12zz__r4_ports_6_10_1z00
									(BgL_stringz00_2110, BgL_startz00_2111, BgL_endz00_2112);
				}}}}
				{
					long BgL_iz00_2104;

					BgL_iz00_2104 = 0L;
				BgL_loopz00_2105:
					if ((BgL_iz00_2104 == -1L))
						{	/* Ast/shrinkify.scm 15 */
							return BUNSPEC;
						}
					else
						{	/* Ast/shrinkify.scm 15 */
							{	/* Ast/shrinkify.scm 15 */
								obj_t BgL_arg1864z00_2106;

								{	/* Ast/shrinkify.scm 15 */

									{	/* Ast/shrinkify.scm 15 */
										obj_t BgL_locationz00_2108;

										BgL_locationz00_2108 = BBOOL(((bool_t) 0));
										{	/* Ast/shrinkify.scm 15 */

											BgL_arg1864z00_2106 =
												BGl_readz00zz__readerz00(BgL_cportz00_2103,
												BgL_locationz00_2108);
										}
									}
								}
								{	/* Ast/shrinkify.scm 15 */
									int BgL_tmpz00_2238;

									BgL_tmpz00_2238 = (int) (BgL_iz00_2104);
									CNST_TABLE_SET(BgL_tmpz00_2238, BgL_arg1864z00_2106);
							}}
							{	/* Ast/shrinkify.scm 15 */
								int BgL_auxz00_2109;

								BgL_auxz00_2109 = (int) ((BgL_iz00_2104 - 1L));
								{
									long BgL_iz00_2243;

									BgL_iz00_2243 = (long) (BgL_auxz00_2109);
									BgL_iz00_2104 = BgL_iz00_2243;
									goto BgL_loopz00_2105;
								}
							}
						}
				}
			}
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			return BUNSPEC;
		}

	}



/* shrinkify! */
	BGL_EXPORTED_DEF obj_t BGl_shrinkifyz12z12zzast_shrinkifyz00(obj_t
		BgL_globalsz00_3)
	{
		{	/* Ast/shrinkify.scm 25 */
			BGl_forzd2eachzd2globalz12z12zzast_envz00
				(BGl_shrinkzd2variablez12zd2envz12zzast_shrinkifyz00, BNIL);
			{
				obj_t BgL_l1235z00_1379;

				BgL_l1235z00_1379 = BgL_globalsz00_3;
			BgL_zc3z04anonymousza31325ze3z87_1380:
				if (PAIRP(BgL_l1235z00_1379))
					{	/* Ast/shrinkify.scm 27 */
						{	/* Ast/shrinkify.scm 28 */
							obj_t BgL_globalz00_1382;

							BgL_globalz00_1382 = CAR(BgL_l1235z00_1379);
							{	/* Ast/shrinkify.scm 28 */
								BgL_valuez00_bglt BgL_sfunz00_1383;

								BgL_sfunz00_1383 =
									(((BgL_variablez00_bglt) COBJECT(
											((BgL_variablez00_bglt)
												((BgL_globalz00_bglt) BgL_globalz00_1382))))->
									BgL_valuez00);
								{	/* Ast/shrinkify.scm 29 */
									obj_t BgL_g1234z00_1384;

									BgL_g1234z00_1384 =
										(((BgL_sfunz00_bglt) COBJECT(
												((BgL_sfunz00_bglt) BgL_sfunz00_1383)))->BgL_argsz00);
									{
										obj_t BgL_l1232z00_1386;

										BgL_l1232z00_1386 = BgL_g1234z00_1384;
									BgL_zc3z04anonymousza31328ze3z87_1387:
										if (PAIRP(BgL_l1232z00_1386))
											{	/* Ast/shrinkify.scm 29 */
												{	/* Ast/shrinkify.scm 29 */
													obj_t BgL_arg1330z00_1389;

													BgL_arg1330z00_1389 = CAR(BgL_l1232z00_1386);
													BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(
														((BgL_variablez00_bglt) BgL_arg1330z00_1389));
												}
												{
													obj_t BgL_l1232z00_2260;

													BgL_l1232z00_2260 = CDR(BgL_l1232z00_1386);
													BgL_l1232z00_1386 = BgL_l1232z00_2260;
													goto BgL_zc3z04anonymousza31328ze3z87_1387;
												}
											}
										else
											{	/* Ast/shrinkify.scm 29 */
												((bool_t) 1);
											}
									}
								}
								{	/* Ast/shrinkify.scm 30 */
									obj_t BgL_arg1332z00_1392;

									BgL_arg1332z00_1392 =
										(((BgL_sfunz00_bglt) COBJECT(
												((BgL_sfunz00_bglt)
													(((BgL_variablez00_bglt) COBJECT(
																((BgL_variablez00_bglt)
																	((BgL_globalz00_bglt) BgL_globalz00_1382))))->
														BgL_valuez00))))->BgL_bodyz00);
									BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(((BgL_nodez00_bglt)
											BgL_arg1332z00_1392));
								}
							}
						}
						{
							obj_t BgL_l1235z00_2269;

							BgL_l1235z00_2269 = CDR(BgL_l1235z00_1379);
							BgL_l1235z00_1379 = BgL_l1235z00_2269;
							goto BgL_zc3z04anonymousza31325ze3z87_1380;
						}
					}
				else
					{	/* Ast/shrinkify.scm 27 */
						((bool_t) 1);
					}
			}
			return BgL_globalsz00_3;
		}

	}



/* &shrinkify! */
	obj_t BGl_z62shrinkifyz12z70zzast_shrinkifyz00(obj_t BgL_envz00_2027,
		obj_t BgL_globalsz00_2028)
	{
		{	/* Ast/shrinkify.scm 25 */
			return BGl_shrinkifyz12z12zzast_shrinkifyz00(BgL_globalsz00_2028);
		}

	}



/* shrink-node*! */
	bool_t BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(obj_t BgL_nodeza2za2_27)
	{
		{	/* Ast/shrinkify.scm 231 */
			{
				obj_t BgL_l1249z00_1397;

				BgL_l1249z00_1397 = BgL_nodeza2za2_27;
			BgL_zc3z04anonymousza31339ze3z87_1398:
				if (PAIRP(BgL_l1249z00_1397))
					{	/* Ast/shrinkify.scm 232 */
						{	/* Ast/shrinkify.scm 232 */
							obj_t BgL_arg1341z00_1400;

							BgL_arg1341z00_1400 = CAR(BgL_l1249z00_1397);
							BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
								((BgL_nodez00_bglt) BgL_arg1341z00_1400));
						}
						{
							obj_t BgL_l1249z00_2277;

							BgL_l1249z00_2277 = CDR(BgL_l1249z00_1397);
							BgL_l1249z00_1397 = BgL_l1249z00_2277;
							goto BgL_zc3z04anonymousza31339ze3z87_1398;
						}
					}
				else
					{	/* Ast/shrinkify.scm 232 */
						return ((bool_t) 1);
					}
			}
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			BGl_registerzd2genericz12zc0zz__objectz00
				(BGl_shrinkzd2variablez12zd2envz12zzast_shrinkifyz00,
				BGl_proc1834z00zzast_shrinkifyz00, BGl_variablez00zzast_varz00,
				BGl_string1835z00zzast_shrinkifyz00);
			return
				BGl_registerzd2genericz12zc0zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_proc1836z00zzast_shrinkifyz00, BGl_nodez00zzast_nodez00,
				BGl_string1837z00zzast_shrinkifyz00);
		}

	}



/* &shrink-node!1253 */
	obj_t BGl_z62shrinkzd2nodez121253za2zzast_shrinkifyz00(obj_t BgL_envz00_2033,
		obj_t BgL_nodez00_2034)
	{
		{	/* Ast/shrinkify.scm 46 */
			return
				BGl_errorz00zz__errorz00(CNST_TABLE_REF(0L),
				BGl_string1838z00zzast_shrinkifyz00,
				((obj_t) ((BgL_nodez00_bglt) BgL_nodez00_2034)));
		}

	}



/* &shrink-variable!1251 */
	obj_t BGl_z62shrinkzd2variablez121251za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2035, obj_t BgL_variablez00_2036)
	{
		{	/* Ast/shrinkify.scm 37 */
			{	/* Ast/shrinkify.scm 38 */
				bool_t BgL_test1902z00_2285;

				{	/* Ast/shrinkify.scm 38 */
					obj_t BgL_tmpz00_2286;

					{	/* Ast/shrinkify.scm 38 */
						BgL_objectz00_bglt BgL_tmpz00_2287;

						BgL_tmpz00_2287 =
							((BgL_objectz00_bglt)
							((BgL_variablez00_bglt) BgL_variablez00_2036));
						BgL_tmpz00_2286 = BGL_OBJECT_WIDENING(BgL_tmpz00_2287);
					}
					BgL_test1902z00_2285 = CBOOL(BgL_tmpz00_2286);
				}
				if (BgL_test1902z00_2285)
					{	/* Ast/shrinkify.scm 38 */
						{	/* Ast/shrinkify.scm 39 */
							long BgL_arg1346z00_2116;

							{	/* Ast/shrinkify.scm 39 */
								obj_t BgL_arg1347z00_2117;

								{	/* Ast/shrinkify.scm 39 */
									obj_t BgL_arg1348z00_2118;

									{	/* Ast/shrinkify.scm 39 */
										long BgL_arg1808z00_2119;

										{	/* Ast/shrinkify.scm 39 */
											long BgL_arg1809z00_2120;

											BgL_arg1809z00_2120 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_variablez00_bglt) BgL_variablez00_2036)));
											BgL_arg1808z00_2119 = (BgL_arg1809z00_2120 - OBJECT_TYPE);
										}
										BgL_arg1348z00_2118 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2119);
									}
									BgL_arg1347z00_2117 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1348z00_2118);
								}
								{	/* Ast/shrinkify.scm 39 */
									obj_t BgL_tmpz00_2298;

									BgL_tmpz00_2298 = ((obj_t) BgL_arg1347z00_2117);
									BgL_arg1346z00_2116 = BGL_CLASS_NUM(BgL_tmpz00_2298);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_variablez00_bglt) BgL_variablez00_2036)),
								BgL_arg1346z00_2116);
						}
						{	/* Ast/shrinkify.scm 39 */
							BgL_objectz00_bglt BgL_tmpz00_2304;

							BgL_tmpz00_2304 =
								((BgL_objectz00_bglt)
								((BgL_variablez00_bglt) BgL_variablez00_2036));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2304, BFALSE);
						}
						((BgL_objectz00_bglt)
							((BgL_variablez00_bglt) BgL_variablez00_2036));
						((obj_t) ((BgL_variablez00_bglt) BgL_variablez00_2036));
					}
				else
					{	/* Ast/shrinkify.scm 38 */
						BFALSE;
					}
			}
			{	/* Ast/shrinkify.scm 40 */
				bool_t BgL_test1903z00_2312;

				{	/* Ast/shrinkify.scm 40 */
					obj_t BgL_tmpz00_2313;

					{	/* Ast/shrinkify.scm 40 */
						BgL_objectz00_bglt BgL_tmpz00_2314;

						BgL_tmpz00_2314 =
							((BgL_objectz00_bglt)
							(((BgL_variablez00_bglt) COBJECT(
										((BgL_variablez00_bglt) BgL_variablez00_2036)))->
								BgL_valuez00));
						BgL_tmpz00_2313 = BGL_OBJECT_WIDENING(BgL_tmpz00_2314);
					}
					BgL_test1903z00_2312 = CBOOL(BgL_tmpz00_2313);
				}
				if (BgL_test1903z00_2312)
					{	/* Ast/shrinkify.scm 41 */
						BgL_valuez00_bglt BgL_o1103z00_2121;

						BgL_o1103z00_2121 =
							(((BgL_variablez00_bglt) COBJECT(
									((BgL_variablez00_bglt) BgL_variablez00_2036)))->
							BgL_valuez00);
						{	/* Ast/shrinkify.scm 41 */
							long BgL_arg1354z00_2122;

							{	/* Ast/shrinkify.scm 41 */
								obj_t BgL_arg1361z00_2123;

								{	/* Ast/shrinkify.scm 41 */
									obj_t BgL_arg1363z00_2124;

									{	/* Ast/shrinkify.scm 41 */
										long BgL_arg1808z00_2125;

										{	/* Ast/shrinkify.scm 41 */
											long BgL_arg1809z00_2126;

											BgL_arg1809z00_2126 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt) BgL_o1103z00_2121));
											BgL_arg1808z00_2125 = (BgL_arg1809z00_2126 - OBJECT_TYPE);
										}
										BgL_arg1363z00_2124 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2125);
									}
									BgL_arg1361z00_2123 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1363z00_2124);
								}
								{	/* Ast/shrinkify.scm 41 */
									obj_t BgL_tmpz00_2327;

									BgL_tmpz00_2327 = ((obj_t) BgL_arg1361z00_2123);
									BgL_arg1354z00_2122 = BGL_CLASS_NUM(BgL_tmpz00_2327);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt) BgL_o1103z00_2121), BgL_arg1354z00_2122);
						}
						{	/* Ast/shrinkify.scm 41 */
							BgL_objectz00_bglt BgL_tmpz00_2332;

							BgL_tmpz00_2332 = ((BgL_objectz00_bglt) BgL_o1103z00_2121);
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2332, BFALSE);
						}
						((BgL_objectz00_bglt) BgL_o1103z00_2121);
						return ((obj_t) BgL_o1103z00_2121);
					}
				else
					{	/* Ast/shrinkify.scm 40 */
						return BFALSE;
					}
			}
		}

	}



/* shrink-variable! */
	obj_t BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(BgL_variablez00_bglt
		BgL_variablez00_4)
	{
		{	/* Ast/shrinkify.scm 37 */
			{	/* Ast/shrinkify.scm 37 */
				obj_t BgL_method1252z00_1423;

				{	/* Ast/shrinkify.scm 37 */
					obj_t BgL_res1828z00_1846;

					{	/* Ast/shrinkify.scm 37 */
						long BgL_objzd2classzd2numz00_1817;

						BgL_objzd2classzd2numz00_1817 =
							BGL_OBJECT_CLASS_NUM(((BgL_objectz00_bglt) BgL_variablez00_4));
						{	/* Ast/shrinkify.scm 37 */
							obj_t BgL_arg1805z00_1818;

							BgL_arg1805z00_1818 =
								PROCEDURE_REF
								(BGl_shrinkzd2variablez12zd2envz12zzast_shrinkifyz00,
								(int) (1L));
							{	/* Ast/shrinkify.scm 37 */
								int BgL_offsetz00_1821;

								BgL_offsetz00_1821 = (int) (BgL_objzd2classzd2numz00_1817);
								{	/* Ast/shrinkify.scm 37 */
									long BgL_offsetz00_1822;

									BgL_offsetz00_1822 =
										((long) (BgL_offsetz00_1821) - OBJECT_TYPE);
									{	/* Ast/shrinkify.scm 37 */
										long BgL_modz00_1823;

										BgL_modz00_1823 =
											(BgL_offsetz00_1822 >> (int) ((long) ((int) (4L))));
										{	/* Ast/shrinkify.scm 37 */
											long BgL_restz00_1825;

											BgL_restz00_1825 =
												(BgL_offsetz00_1822 &
												(long) (
													(int) (
														((long) (
																(int) (
																	(1L <<
																		(int) ((long) ((int) (4L)))))) - 1L))));
											{	/* Ast/shrinkify.scm 37 */

												{	/* Ast/shrinkify.scm 37 */
													obj_t BgL_bucketz00_1827;

													BgL_bucketz00_1827 =
														VECTOR_REF(
														((obj_t) BgL_arg1805z00_1818), BgL_modz00_1823);
													BgL_res1828z00_1846 =
														VECTOR_REF(
														((obj_t) BgL_bucketz00_1827), BgL_restz00_1825);
					}}}}}}}}
					BgL_method1252z00_1423 = BgL_res1828z00_1846;
				}
				return
					(VA_PROCEDUREP(BgL_method1252z00_1423) ? ((obj_t(*)(obj_t,
								...))
						PROCEDURE_ENTRY(BgL_method1252z00_1423)) (BgL_method1252z00_1423,
						((obj_t) BgL_variablez00_4), BEOA) : ((obj_t(*)(obj_t,
								obj_t))
						PROCEDURE_ENTRY(BgL_method1252z00_1423)) (BgL_method1252z00_1423,
						((obj_t) BgL_variablez00_4)));
			}
		}

	}



/* &shrink-variable! */
	obj_t BGl_z62shrinkzd2variablez12za2zzast_shrinkifyz00(obj_t BgL_envz00_2029,
		obj_t BgL_variablez00_2030)
	{
		{	/* Ast/shrinkify.scm 37 */
			return
				BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(
				((BgL_variablez00_bglt) BgL_variablez00_2030));
		}

	}



/* shrink-node! */
	obj_t BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(BgL_nodez00_bglt
		BgL_nodez00_5)
	{
		{	/* Ast/shrinkify.scm 46 */
			{	/* Ast/shrinkify.scm 46 */
				obj_t BgL_method1254z00_1424;

				{	/* Ast/shrinkify.scm 46 */
					obj_t BgL_res1833z00_1877;

					{	/* Ast/shrinkify.scm 46 */
						long BgL_objzd2classzd2numz00_1848;

						BgL_objzd2classzd2numz00_1848 =
							BGL_OBJECT_CLASS_NUM(((BgL_objectz00_bglt) BgL_nodez00_5));
						{	/* Ast/shrinkify.scm 46 */
							obj_t BgL_arg1805z00_1849;

							BgL_arg1805z00_1849 =
								PROCEDURE_REF(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
								(int) (1L));
							{	/* Ast/shrinkify.scm 46 */
								int BgL_offsetz00_1852;

								BgL_offsetz00_1852 = (int) (BgL_objzd2classzd2numz00_1848);
								{	/* Ast/shrinkify.scm 46 */
									long BgL_offsetz00_1853;

									BgL_offsetz00_1853 =
										((long) (BgL_offsetz00_1852) - OBJECT_TYPE);
									{	/* Ast/shrinkify.scm 46 */
										long BgL_modz00_1854;

										BgL_modz00_1854 =
											(BgL_offsetz00_1853 >> (int) ((long) ((int) (4L))));
										{	/* Ast/shrinkify.scm 46 */
											long BgL_restz00_1856;

											BgL_restz00_1856 =
												(BgL_offsetz00_1853 &
												(long) (
													(int) (
														((long) (
																(int) (
																	(1L <<
																		(int) ((long) ((int) (4L)))))) - 1L))));
											{	/* Ast/shrinkify.scm 46 */

												{	/* Ast/shrinkify.scm 46 */
													obj_t BgL_bucketz00_1858;

													BgL_bucketz00_1858 =
														VECTOR_REF(
														((obj_t) BgL_arg1805z00_1849), BgL_modz00_1854);
													BgL_res1833z00_1877 =
														VECTOR_REF(
														((obj_t) BgL_bucketz00_1858), BgL_restz00_1856);
					}}}}}}}}
					BgL_method1254z00_1424 = BgL_res1833z00_1877;
				}
				{	/* Ast/shrinkify.scm 46 */
					obj_t BgL_xz00_2102;

					BgL_xz00_2102 =
						(VA_PROCEDUREP(BgL_method1254z00_1424) ? ((obj_t(*)(obj_t,
									...))
							PROCEDURE_ENTRY(BgL_method1254z00_1424)) (BgL_method1254z00_1424,
							((obj_t) BgL_nodez00_5), BEOA) : ((obj_t(*)(obj_t,
									obj_t))
							PROCEDURE_ENTRY(BgL_method1254z00_1424)) (BgL_method1254z00_1424,
							((obj_t) BgL_nodez00_5)));
					return BUNSPEC;
				}
			}
		}

	}



/* &shrink-node! */
	obj_t BGl_z62shrinkzd2nodez12za2zzast_shrinkifyz00(obj_t BgL_envz00_2037,
		obj_t BgL_nodez00_2038)
	{
		{	/* Ast/shrinkify.scm 46 */
			return
				BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				((BgL_nodez00_bglt) BgL_nodez00_2038));
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_atomz00zzast_nodez00, BGl_proc1839z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_varz00zzast_nodez00, BGl_proc1841z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_kwotez00zzast_nodez00, BGl_proc1842z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_sequencez00zzast_nodez00, BGl_proc1843z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_syncz00zzast_nodez00, BGl_proc1844z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_appz00zzast_nodez00, BGl_proc1845z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_appzd2lyzd2zzast_nodez00, BGl_proc1846z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_funcallz00zzast_nodez00, BGl_proc1847z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_externz00zzast_nodez00, BGl_proc1848z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_castz00zzast_nodez00, BGl_proc1849z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_setqz00zzast_nodez00, BGl_proc1850z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_conditionalz00zzast_nodez00, BGl_proc1851z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_failz00zzast_nodez00, BGl_proc1852z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_switchz00zzast_nodez00, BGl_proc1853z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_makezd2boxzd2zzast_nodez00, BGl_proc1854z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_boxzd2refzd2zzast_nodez00, BGl_proc1855z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_boxzd2setz12zc0zzast_nodez00, BGl_proc1856z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_letzd2funzd2zzast_nodez00, BGl_proc1857z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_letzd2varzd2zzast_nodez00, BGl_proc1858z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_setzd2exzd2itz00zzast_nodez00, BGl_proc1859z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
			return
				BGl_genericzd2addzd2methodz12z12zz__objectz00
				(BGl_shrinkzd2nodez12zd2envz12zzast_shrinkifyz00,
				BGl_jumpzd2exzd2itz00zzast_nodez00, BGl_proc1860z00zzast_shrinkifyz00,
				BGl_string1840z00zzast_shrinkifyz00);
		}

	}



/* &shrink-node!-jump-ex1297 */
	obj_t BGl_z62shrinkzd2nodez12zd2jumpzd2ex1297za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2060, obj_t BgL_nodez00_2061)
	{
		{	/* Ast/shrinkify.scm 223 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_jumpzd2exzd2itz00_bglt) COBJECT(
							((BgL_jumpzd2exzd2itz00_bglt) BgL_nodez00_2061)))->BgL_exitz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_jumpzd2exzd2itz00_bglt) COBJECT(
							((BgL_jumpzd2exzd2itz00_bglt) BgL_nodez00_2061)))->BgL_valuez00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-set-ex-1295 */
	obj_t BGl_z62shrinkzd2nodez12zd2setzd2exzd21295z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2062, obj_t BgL_nodez00_2063)
	{
		{	/* Ast/shrinkify.scm 213 */
			{	/* Ast/shrinkify.scm 215 */
				BgL_varz00_bglt BgL_arg1661z00_2129;

				BgL_arg1661z00_2129 =
					(((BgL_setzd2exzd2itz00_bglt) COBJECT(
							((BgL_setzd2exzd2itz00_bglt) BgL_nodez00_2063)))->BgL_varz00);
				BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
					((BgL_nodez00_bglt) BgL_arg1661z00_2129));
			}
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_setzd2exzd2itz00_bglt) COBJECT(
							((BgL_setzd2exzd2itz00_bglt) BgL_nodez00_2063)))->BgL_bodyz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_setzd2exzd2itz00_bglt) COBJECT(
							((BgL_setzd2exzd2itz00_bglt) BgL_nodez00_2063)))->BgL_onexitz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-let-var1293 */
	obj_t BGl_z62shrinkzd2nodez12zd2letzd2var1293za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2064, obj_t BgL_nodez00_2065)
	{
		{	/* Ast/shrinkify.scm 201 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_letzd2varzd2_bglt) COBJECT(
							((BgL_letzd2varzd2_bglt) BgL_nodez00_2065)))->BgL_bodyz00));
			{	/* Ast/shrinkify.scm 204 */
				obj_t BgL_g1248z00_2131;

				BgL_g1248z00_2131 =
					(((BgL_letzd2varzd2_bglt) COBJECT(
							((BgL_letzd2varzd2_bglt) BgL_nodez00_2065)))->BgL_bindingsz00);
				{
					obj_t BgL_l1246z00_2133;

					BgL_l1246z00_2133 = BgL_g1248z00_2131;
				BgL_zc3z04anonymousza31631ze3z87_2132:
					if (PAIRP(BgL_l1246z00_2133))
						{	/* Ast/shrinkify.scm 204 */
							{	/* Ast/shrinkify.scm 205 */
								obj_t BgL_bindingz00_2134;

								BgL_bindingz00_2134 = CAR(BgL_l1246z00_2133);
								{	/* Ast/shrinkify.scm 205 */
									obj_t BgL_arg1639z00_2135;

									BgL_arg1639z00_2135 = CAR(((obj_t) BgL_bindingz00_2134));
									BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(
										((BgL_variablez00_bglt) BgL_arg1639z00_2135));
								}
								{	/* Ast/shrinkify.scm 206 */
									obj_t BgL_arg1649z00_2136;

									BgL_arg1649z00_2136 = CDR(((obj_t) BgL_bindingz00_2134));
									BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
										((BgL_nodez00_bglt) BgL_arg1649z00_2136));
								}
							}
							{
								obj_t BgL_l1246z00_2454;

								BgL_l1246z00_2454 = CDR(BgL_l1246z00_2133);
								BgL_l1246z00_2133 = BgL_l1246z00_2454;
								goto BgL_zc3z04anonymousza31631ze3z87_2132;
							}
						}
					else
						{	/* Ast/shrinkify.scm 204 */
							((bool_t) 1);
						}
				}
			}
			return BUNSPEC;
		}

	}



/* &shrink-node!-let-fun1291 */
	obj_t BGl_z62shrinkzd2nodez12zd2letzd2fun1291za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2066, obj_t BgL_nodez00_2067)
	{
		{	/* Ast/shrinkify.scm 187 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_letzd2funzd2_bglt) COBJECT(
							((BgL_letzd2funzd2_bglt) BgL_nodez00_2067)))->BgL_bodyz00));
			{	/* Ast/shrinkify.scm 190 */
				obj_t BgL_g1245z00_2138;

				BgL_g1245z00_2138 =
					(((BgL_letzd2funzd2_bglt) COBJECT(
							((BgL_letzd2funzd2_bglt) BgL_nodez00_2067)))->BgL_localsz00);
				{
					obj_t BgL_l1243z00_2140;

					BgL_l1243z00_2140 = BgL_g1245z00_2138;
				BgL_zc3z04anonymousza31616ze3z87_2139:
					if (PAIRP(BgL_l1243z00_2140))
						{	/* Ast/shrinkify.scm 190 */
							{	/* Ast/shrinkify.scm 191 */
								obj_t BgL_localz00_2141;

								BgL_localz00_2141 = CAR(BgL_l1243z00_2140);
								{	/* Ast/shrinkify.scm 191 */
									BgL_valuez00_bglt BgL_sfunz00_2142;

									BgL_sfunz00_2142 =
										(((BgL_variablez00_bglt) COBJECT(
												((BgL_variablez00_bglt)
													((BgL_localz00_bglt) BgL_localz00_2141))))->
										BgL_valuez00);
									BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00((
											(BgL_variablez00_bglt) BgL_localz00_2141));
									{	/* Ast/shrinkify.scm 193 */
										obj_t BgL_g1242z00_2143;

										BgL_g1242z00_2143 =
											(((BgL_sfunz00_bglt) COBJECT(
													((BgL_sfunz00_bglt) BgL_sfunz00_2142)))->BgL_argsz00);
										{
											obj_t BgL_l1240z00_2145;

											BgL_l1240z00_2145 = BgL_g1242z00_2143;
										BgL_zc3z04anonymousza31618ze3z87_2144:
											if (PAIRP(BgL_l1240z00_2145))
												{	/* Ast/shrinkify.scm 193 */
													{	/* Ast/shrinkify.scm 193 */
														obj_t BgL_arg1620z00_2146;

														BgL_arg1620z00_2146 = CAR(BgL_l1240z00_2145);
														BGl_shrinkzd2variablez12zc0zzast_shrinkifyz00(
															((BgL_variablez00_bglt) BgL_arg1620z00_2146));
													}
													{
														obj_t BgL_l1240z00_2476;

														BgL_l1240z00_2476 = CDR(BgL_l1240z00_2145);
														BgL_l1240z00_2145 = BgL_l1240z00_2476;
														goto BgL_zc3z04anonymousza31618ze3z87_2144;
													}
												}
											else
												{	/* Ast/shrinkify.scm 193 */
													((bool_t) 1);
												}
										}
									}
									{	/* Ast/shrinkify.scm 194 */
										obj_t BgL_arg1628z00_2147;

										BgL_arg1628z00_2147 =
											(((BgL_sfunz00_bglt) COBJECT(
													((BgL_sfunz00_bglt) BgL_sfunz00_2142)))->BgL_bodyz00);
										BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
											((BgL_nodez00_bglt) BgL_arg1628z00_2147));
									}
								}
							}
							{
								obj_t BgL_l1243z00_2482;

								BgL_l1243z00_2482 = CDR(BgL_l1243z00_2140);
								BgL_l1243z00_2140 = BgL_l1243z00_2482;
								goto BgL_zc3z04anonymousza31616ze3z87_2139;
							}
						}
					else
						{	/* Ast/shrinkify.scm 190 */
							((bool_t) 1);
						}
				}
			}
			return BUNSPEC;
		}

	}



/* &shrink-node!-box-set1289 */
	obj_t BGl_z62shrinkzd2nodez12zd2boxzd2set1289za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2068, obj_t BgL_nodez00_2069)
	{
		{	/* Ast/shrinkify.scm 178 */
			{	/* Ast/shrinkify.scm 179 */
				bool_t BgL_test1907z00_2484;

				{	/* Ast/shrinkify.scm 179 */
					obj_t BgL_tmpz00_2485;

					{	/* Ast/shrinkify.scm 179 */
						BgL_objectz00_bglt BgL_tmpz00_2486;

						BgL_tmpz00_2486 =
							((BgL_objectz00_bglt)
							((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069));
						BgL_tmpz00_2485 = BGL_OBJECT_WIDENING(BgL_tmpz00_2486);
					}
					BgL_test1907z00_2484 = CBOOL(BgL_tmpz00_2485);
				}
				if (BgL_test1907z00_2484)
					{	/* Ast/shrinkify.scm 179 */
						{	/* Ast/shrinkify.scm 179 */
							long BgL_arg1606z00_2149;

							{	/* Ast/shrinkify.scm 179 */
								obj_t BgL_arg1608z00_2150;

								{	/* Ast/shrinkify.scm 179 */
									obj_t BgL_arg1609z00_2151;

									{	/* Ast/shrinkify.scm 179 */
										long BgL_arg1808z00_2152;

										{	/* Ast/shrinkify.scm 179 */
											long BgL_arg1809z00_2153;

											BgL_arg1809z00_2153 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069)));
											BgL_arg1808z00_2152 = (BgL_arg1809z00_2153 - OBJECT_TYPE);
										}
										BgL_arg1609z00_2151 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2152);
									}
									BgL_arg1608z00_2150 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1609z00_2151);
								}
								{	/* Ast/shrinkify.scm 179 */
									obj_t BgL_tmpz00_2497;

									BgL_tmpz00_2497 = ((obj_t) BgL_arg1608z00_2150);
									BgL_arg1606z00_2149 = BGL_CLASS_NUM(BgL_tmpz00_2497);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069)),
								BgL_arg1606z00_2149);
						}
						{	/* Ast/shrinkify.scm 179 */
							BgL_objectz00_bglt BgL_tmpz00_2503;

							BgL_tmpz00_2503 =
								((BgL_objectz00_bglt)
								((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2503, BFALSE);
						}
						((BgL_objectz00_bglt)
							((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069));
						((obj_t) ((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069));
					}
				else
					{	/* Ast/shrinkify.scm 179 */
						BFALSE;
					}
			}
			{	/* Ast/shrinkify.scm 180 */
				BgL_varz00_bglt BgL_arg1613z00_2154;

				BgL_arg1613z00_2154 =
					(((BgL_boxzd2setz12zc0_bglt) COBJECT(
							((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069)))->BgL_varz00);
				BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
					((BgL_nodez00_bglt) BgL_arg1613z00_2154));
			}
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_boxzd2setz12zc0_bglt) COBJECT(
							((BgL_boxzd2setz12zc0_bglt) BgL_nodez00_2069)))->BgL_valuez00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-box-ref1287 */
	obj_t BGl_z62shrinkzd2nodez12zd2boxzd2ref1287za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2070, obj_t BgL_nodez00_2071)
	{
		{	/* Ast/shrinkify.scm 170 */
			{	/* Ast/shrinkify.scm 171 */
				bool_t BgL_test1908z00_2518;

				{	/* Ast/shrinkify.scm 171 */
					obj_t BgL_tmpz00_2519;

					{	/* Ast/shrinkify.scm 171 */
						BgL_objectz00_bglt BgL_tmpz00_2520;

						BgL_tmpz00_2520 =
							((BgL_objectz00_bglt) ((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071));
						BgL_tmpz00_2519 = BGL_OBJECT_WIDENING(BgL_tmpz00_2520);
					}
					BgL_test1908z00_2518 = CBOOL(BgL_tmpz00_2519);
				}
				if (BgL_test1908z00_2518)
					{	/* Ast/shrinkify.scm 171 */
						{	/* Ast/shrinkify.scm 171 */
							long BgL_arg1590z00_2156;

							{	/* Ast/shrinkify.scm 171 */
								obj_t BgL_arg1592z00_2157;

								{	/* Ast/shrinkify.scm 171 */
									obj_t BgL_arg1595z00_2158;

									{	/* Ast/shrinkify.scm 171 */
										long BgL_arg1808z00_2159;

										{	/* Ast/shrinkify.scm 171 */
											long BgL_arg1809z00_2160;

											BgL_arg1809z00_2160 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071)));
											BgL_arg1808z00_2159 = (BgL_arg1809z00_2160 - OBJECT_TYPE);
										}
										BgL_arg1595z00_2158 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2159);
									}
									BgL_arg1592z00_2157 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1595z00_2158);
								}
								{	/* Ast/shrinkify.scm 171 */
									obj_t BgL_tmpz00_2531;

									BgL_tmpz00_2531 = ((obj_t) BgL_arg1592z00_2157);
									BgL_arg1590z00_2156 = BGL_CLASS_NUM(BgL_tmpz00_2531);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071)),
								BgL_arg1590z00_2156);
						}
						{	/* Ast/shrinkify.scm 171 */
							BgL_objectz00_bglt BgL_tmpz00_2537;

							BgL_tmpz00_2537 =
								((BgL_objectz00_bglt)
								((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2537, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071));
						((obj_t) ((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071));
					}
				else
					{	/* Ast/shrinkify.scm 171 */
						BFALSE;
					}
			}
			{	/* Ast/shrinkify.scm 172 */
				BgL_varz00_bglt BgL_arg1597z00_2161;

				BgL_arg1597z00_2161 =
					(((BgL_boxzd2refzd2_bglt) COBJECT(
							((BgL_boxzd2refzd2_bglt) BgL_nodez00_2071)))->BgL_varz00);
				BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
					((BgL_nodez00_bglt) BgL_arg1597z00_2161));
			}
			return BUNSPEC;
		}

	}



/* &shrink-node!-make-bo1285 */
	obj_t BGl_z62shrinkzd2nodez12zd2makezd2bo1285za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2072, obj_t BgL_nodez00_2073)
	{
		{	/* Ast/shrinkify.scm 162 */
			{	/* Ast/shrinkify.scm 163 */
				bool_t BgL_test1909z00_2549;

				{	/* Ast/shrinkify.scm 163 */
					obj_t BgL_tmpz00_2550;

					{	/* Ast/shrinkify.scm 163 */
						BgL_objectz00_bglt BgL_tmpz00_2551;

						BgL_tmpz00_2551 =
							((BgL_objectz00_bglt)
							((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073));
						BgL_tmpz00_2550 = BGL_OBJECT_WIDENING(BgL_tmpz00_2551);
					}
					BgL_test1909z00_2549 = CBOOL(BgL_tmpz00_2550);
				}
				if (BgL_test1909z00_2549)
					{	/* Ast/shrinkify.scm 163 */
						{	/* Ast/shrinkify.scm 163 */
							long BgL_arg1578z00_2163;

							{	/* Ast/shrinkify.scm 163 */
								obj_t BgL_arg1579z00_2164;

								{	/* Ast/shrinkify.scm 163 */
									obj_t BgL_arg1581z00_2165;

									{	/* Ast/shrinkify.scm 163 */
										long BgL_arg1808z00_2166;

										{	/* Ast/shrinkify.scm 163 */
											long BgL_arg1809z00_2167;

											BgL_arg1809z00_2167 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073)));
											BgL_arg1808z00_2166 = (BgL_arg1809z00_2167 - OBJECT_TYPE);
										}
										BgL_arg1581z00_2165 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2166);
									}
									BgL_arg1579z00_2164 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1581z00_2165);
								}
								{	/* Ast/shrinkify.scm 163 */
									obj_t BgL_tmpz00_2562;

									BgL_tmpz00_2562 = ((obj_t) BgL_arg1579z00_2164);
									BgL_arg1578z00_2163 = BGL_CLASS_NUM(BgL_tmpz00_2562);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073)),
								BgL_arg1578z00_2163);
						}
						{	/* Ast/shrinkify.scm 163 */
							BgL_objectz00_bglt BgL_tmpz00_2568;

							BgL_tmpz00_2568 =
								((BgL_objectz00_bglt)
								((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2568, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073));
						((obj_t) ((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073));
					}
				else
					{	/* Ast/shrinkify.scm 163 */
						BFALSE;
					}
			}
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_makezd2boxzd2_bglt) COBJECT(
							((BgL_makezd2boxzd2_bglt) BgL_nodez00_2073)))->BgL_valuez00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-switch1283 */
	obj_t BGl_z62shrinkzd2nodez12zd2switch1283z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2074, obj_t BgL_nodez00_2075)
	{
		{	/* Ast/shrinkify.scm 152 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_switchz00_bglt) COBJECT(
							((BgL_switchz00_bglt) BgL_nodez00_2075)))->BgL_testz00));
			{	/* Ast/shrinkify.scm 154 */
				obj_t BgL_g1239z00_2169;

				BgL_g1239z00_2169 =
					(((BgL_switchz00_bglt) COBJECT(
							((BgL_switchz00_bglt) BgL_nodez00_2075)))->BgL_clausesz00);
				{
					obj_t BgL_l1237z00_2171;

					BgL_l1237z00_2171 = BgL_g1239z00_2169;
				BgL_zc3z04anonymousza31564ze3z87_2170:
					if (PAIRP(BgL_l1237z00_2171))
						{	/* Ast/shrinkify.scm 156 */
							{	/* Ast/shrinkify.scm 155 */
								obj_t BgL_clausez00_2172;

								BgL_clausez00_2172 = CAR(BgL_l1237z00_2171);
								{	/* Ast/shrinkify.scm 155 */
									obj_t BgL_arg1575z00_2173;

									BgL_arg1575z00_2173 = CDR(((obj_t) BgL_clausez00_2172));
									BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
										((BgL_nodez00_bglt) BgL_arg1575z00_2173));
								}
							}
							{
								obj_t BgL_l1237z00_2591;

								BgL_l1237z00_2591 = CDR(BgL_l1237z00_2171);
								BgL_l1237z00_2171 = BgL_l1237z00_2591;
								goto BgL_zc3z04anonymousza31564ze3z87_2170;
							}
						}
					else
						{	/* Ast/shrinkify.scm 156 */
							((bool_t) 1);
						}
				}
			}
			return BUNSPEC;
		}

	}



/* &shrink-node!-fail1281 */
	obj_t BGl_z62shrinkzd2nodez12zd2fail1281z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2076, obj_t BgL_nodez00_2077)
	{
		{	/* Ast/shrinkify.scm 143 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_failz00_bglt) COBJECT(
							((BgL_failz00_bglt) BgL_nodez00_2077)))->BgL_procz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_failz00_bglt) COBJECT(
							((BgL_failz00_bglt) BgL_nodez00_2077)))->BgL_msgz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_failz00_bglt) COBJECT(
							((BgL_failz00_bglt) BgL_nodez00_2077)))->BgL_objz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-conditi1279 */
	obj_t BGl_z62shrinkzd2nodez12zd2conditi1279z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2078, obj_t BgL_nodez00_2079)
	{
		{	/* Ast/shrinkify.scm 134 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_conditionalz00_bglt) COBJECT(
							((BgL_conditionalz00_bglt) BgL_nodez00_2079)))->BgL_testz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_conditionalz00_bglt) COBJECT(
							((BgL_conditionalz00_bglt) BgL_nodez00_2079)))->BgL_truez00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_conditionalz00_bglt) COBJECT(
							((BgL_conditionalz00_bglt) BgL_nodez00_2079)))->BgL_falsez00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-setq1277 */
	obj_t BGl_z62shrinkzd2nodez12zd2setq1277z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2080, obj_t BgL_nodez00_2081)
	{
		{	/* Ast/shrinkify.scm 127 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_setqz00_bglt) COBJECT(
							((BgL_setqz00_bglt) BgL_nodez00_2081)))->BgL_valuez00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-cast1275 */
	obj_t BGl_z62shrinkzd2nodez12zd2cast1275z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2082, obj_t BgL_nodez00_2083)
	{
		{	/* Ast/shrinkify.scm 120 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_castz00_bglt) COBJECT(
							((BgL_castz00_bglt) BgL_nodez00_2083)))->BgL_argz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-extern1272 */
	obj_t BGl_z62shrinkzd2nodez12zd2extern1272z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2084, obj_t BgL_nodez00_2085)
	{
		{	/* Ast/shrinkify.scm 112 */
			{	/* Ast/shrinkify.scm 113 */
				bool_t BgL_test1911z00_2617;

				{	/* Ast/shrinkify.scm 113 */
					obj_t BgL_tmpz00_2618;

					{	/* Ast/shrinkify.scm 113 */
						BgL_objectz00_bglt BgL_tmpz00_2619;

						BgL_tmpz00_2619 =
							((BgL_objectz00_bglt) ((BgL_externz00_bglt) BgL_nodez00_2085));
						BgL_tmpz00_2618 = BGL_OBJECT_WIDENING(BgL_tmpz00_2619);
					}
					BgL_test1911z00_2617 = CBOOL(BgL_tmpz00_2618);
				}
				if (BgL_test1911z00_2617)
					{	/* Ast/shrinkify.scm 113 */
						{	/* Ast/shrinkify.scm 113 */
							long BgL_arg1519z00_2179;

							{	/* Ast/shrinkify.scm 113 */
								obj_t BgL_arg1528z00_2180;

								{	/* Ast/shrinkify.scm 113 */
									obj_t BgL_arg1532z00_2181;

									{	/* Ast/shrinkify.scm 113 */
										long BgL_arg1808z00_2182;

										{	/* Ast/shrinkify.scm 113 */
											long BgL_arg1809z00_2183;

											BgL_arg1809z00_2183 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_externz00_bglt) BgL_nodez00_2085)));
											BgL_arg1808z00_2182 = (BgL_arg1809z00_2183 - OBJECT_TYPE);
										}
										BgL_arg1532z00_2181 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2182);
									}
									BgL_arg1528z00_2180 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1532z00_2181);
								}
								{	/* Ast/shrinkify.scm 113 */
									obj_t BgL_tmpz00_2630;

									BgL_tmpz00_2630 = ((obj_t) BgL_arg1528z00_2180);
									BgL_arg1519z00_2179 = BGL_CLASS_NUM(BgL_tmpz00_2630);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_externz00_bglt) BgL_nodez00_2085)),
								BgL_arg1519z00_2179);
						}
						{	/* Ast/shrinkify.scm 113 */
							BgL_objectz00_bglt BgL_tmpz00_2636;

							BgL_tmpz00_2636 =
								((BgL_objectz00_bglt) ((BgL_externz00_bglt) BgL_nodez00_2085));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2636, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_externz00_bglt) BgL_nodez00_2085));
						((obj_t) ((BgL_externz00_bglt) BgL_nodez00_2085));
					}
				else
					{	/* Ast/shrinkify.scm 113 */
						BFALSE;
					}
			}
			BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(
				(((BgL_externz00_bglt) COBJECT(
							((BgL_externz00_bglt) BgL_nodez00_2085)))->BgL_exprza2za2));
			return BUNSPEC;
		}

	}



/* &shrink-node!-funcall1270 */
	obj_t BGl_z62shrinkzd2nodez12zd2funcall1270z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2086, obj_t BgL_nodez00_2087)
	{
		{	/* Ast/shrinkify.scm 103 */
			{	/* Ast/shrinkify.scm 104 */
				bool_t BgL_test1912z00_2647;

				{	/* Ast/shrinkify.scm 104 */
					obj_t BgL_tmpz00_2648;

					{	/* Ast/shrinkify.scm 104 */
						BgL_objectz00_bglt BgL_tmpz00_2649;

						BgL_tmpz00_2649 =
							((BgL_objectz00_bglt) ((BgL_funcallz00_bglt) BgL_nodez00_2087));
						BgL_tmpz00_2648 = BGL_OBJECT_WIDENING(BgL_tmpz00_2649);
					}
					BgL_test1912z00_2647 = CBOOL(BgL_tmpz00_2648);
				}
				if (BgL_test1912z00_2647)
					{	/* Ast/shrinkify.scm 104 */
						{	/* Ast/shrinkify.scm 104 */
							long BgL_arg1479z00_2185;

							{	/* Ast/shrinkify.scm 104 */
								obj_t BgL_arg1491z00_2186;

								{	/* Ast/shrinkify.scm 104 */
									obj_t BgL_arg1492z00_2187;

									{	/* Ast/shrinkify.scm 104 */
										long BgL_arg1808z00_2188;

										{	/* Ast/shrinkify.scm 104 */
											long BgL_arg1809z00_2189;

											BgL_arg1809z00_2189 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_funcallz00_bglt) BgL_nodez00_2087)));
											BgL_arg1808z00_2188 = (BgL_arg1809z00_2189 - OBJECT_TYPE);
										}
										BgL_arg1492z00_2187 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2188);
									}
									BgL_arg1491z00_2186 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1492z00_2187);
								}
								{	/* Ast/shrinkify.scm 104 */
									obj_t BgL_tmpz00_2660;

									BgL_tmpz00_2660 = ((obj_t) BgL_arg1491z00_2186);
									BgL_arg1479z00_2185 = BGL_CLASS_NUM(BgL_tmpz00_2660);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_funcallz00_bglt) BgL_nodez00_2087)),
								BgL_arg1479z00_2185);
						}
						{	/* Ast/shrinkify.scm 104 */
							BgL_objectz00_bglt BgL_tmpz00_2666;

							BgL_tmpz00_2666 =
								((BgL_objectz00_bglt) ((BgL_funcallz00_bglt) BgL_nodez00_2087));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2666, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_funcallz00_bglt) BgL_nodez00_2087));
						((obj_t) ((BgL_funcallz00_bglt) BgL_nodez00_2087));
					}
				else
					{	/* Ast/shrinkify.scm 104 */
						BFALSE;
					}
			}
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_funcallz00_bglt) COBJECT(
							((BgL_funcallz00_bglt) BgL_nodez00_2087)))->BgL_funz00));
			BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(
				(((BgL_funcallz00_bglt) COBJECT(
							((BgL_funcallz00_bglt) BgL_nodez00_2087)))->BgL_argsz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-app-ly1268 */
	obj_t BGl_z62shrinkzd2nodez12zd2appzd2ly1268za2zzast_shrinkifyz00(obj_t
		BgL_envz00_2088, obj_t BgL_nodez00_2089)
	{
		{	/* Ast/shrinkify.scm 94 */
			{	/* Ast/shrinkify.scm 95 */
				bool_t BgL_test1913z00_2680;

				{	/* Ast/shrinkify.scm 95 */
					obj_t BgL_tmpz00_2681;

					{	/* Ast/shrinkify.scm 95 */
						BgL_objectz00_bglt BgL_tmpz00_2682;

						BgL_tmpz00_2682 =
							((BgL_objectz00_bglt) ((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089));
						BgL_tmpz00_2681 = BGL_OBJECT_WIDENING(BgL_tmpz00_2682);
					}
					BgL_test1913z00_2680 = CBOOL(BgL_tmpz00_2681);
				}
				if (BgL_test1913z00_2680)
					{	/* Ast/shrinkify.scm 95 */
						{	/* Ast/shrinkify.scm 95 */
							long BgL_arg1436z00_2191;

							{	/* Ast/shrinkify.scm 95 */
								obj_t BgL_arg1437z00_2192;

								{	/* Ast/shrinkify.scm 95 */
									obj_t BgL_arg1450z00_2193;

									{	/* Ast/shrinkify.scm 95 */
										long BgL_arg1808z00_2194;

										{	/* Ast/shrinkify.scm 95 */
											long BgL_arg1809z00_2195;

											BgL_arg1809z00_2195 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089)));
											BgL_arg1808z00_2194 = (BgL_arg1809z00_2195 - OBJECT_TYPE);
										}
										BgL_arg1450z00_2193 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2194);
									}
									BgL_arg1437z00_2192 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1450z00_2193);
								}
								{	/* Ast/shrinkify.scm 95 */
									obj_t BgL_tmpz00_2693;

									BgL_tmpz00_2693 = ((obj_t) BgL_arg1437z00_2192);
									BgL_arg1436z00_2191 = BGL_CLASS_NUM(BgL_tmpz00_2693);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089)),
								BgL_arg1436z00_2191);
						}
						{	/* Ast/shrinkify.scm 95 */
							BgL_objectz00_bglt BgL_tmpz00_2699;

							BgL_tmpz00_2699 =
								((BgL_objectz00_bglt)
								((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2699, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089));
						((obj_t) ((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089));
					}
				else
					{	/* Ast/shrinkify.scm 95 */
						BFALSE;
					}
			}
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_appzd2lyzd2_bglt) COBJECT(
							((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089)))->BgL_funz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_appzd2lyzd2_bglt) COBJECT(
							((BgL_appzd2lyzd2_bglt) BgL_nodez00_2089)))->BgL_argz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-app1266 */
	obj_t BGl_z62shrinkzd2nodez12zd2app1266z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2090, obj_t BgL_nodez00_2091)
	{
		{	/* Ast/shrinkify.scm 85 */
			{	/* Ast/shrinkify.scm 86 */
				bool_t BgL_test1914z00_2713;

				{	/* Ast/shrinkify.scm 86 */
					obj_t BgL_tmpz00_2714;

					{	/* Ast/shrinkify.scm 86 */
						BgL_objectz00_bglt BgL_tmpz00_2715;

						BgL_tmpz00_2715 =
							((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_2091));
						BgL_tmpz00_2714 = BGL_OBJECT_WIDENING(BgL_tmpz00_2715);
					}
					BgL_test1914z00_2713 = CBOOL(BgL_tmpz00_2714);
				}
				if (BgL_test1914z00_2713)
					{	/* Ast/shrinkify.scm 86 */
						{	/* Ast/shrinkify.scm 86 */
							long BgL_arg1397z00_2197;

							{	/* Ast/shrinkify.scm 86 */
								obj_t BgL_arg1407z00_2198;

								{	/* Ast/shrinkify.scm 86 */
									obj_t BgL_arg1408z00_2199;

									{	/* Ast/shrinkify.scm 86 */
										long BgL_arg1808z00_2200;

										{	/* Ast/shrinkify.scm 86 */
											long BgL_arg1809z00_2201;

											BgL_arg1809z00_2201 =
												BGL_OBJECT_CLASS_NUM(
												((BgL_objectz00_bglt)
													((BgL_appz00_bglt) BgL_nodez00_2091)));
											BgL_arg1808z00_2200 = (BgL_arg1809z00_2201 - OBJECT_TYPE);
										}
										BgL_arg1408z00_2199 =
											VECTOR_REF(BGl_za2classesza2z00zz__objectz00,
											BgL_arg1808z00_2200);
									}
									BgL_arg1407z00_2198 =
										BGl_classzd2superzd2zz__objectz00(BgL_arg1408z00_2199);
								}
								{	/* Ast/shrinkify.scm 86 */
									obj_t BgL_tmpz00_2726;

									BgL_tmpz00_2726 = ((obj_t) BgL_arg1407z00_2198);
									BgL_arg1397z00_2197 = BGL_CLASS_NUM(BgL_tmpz00_2726);
							}}
							BGL_OBJECT_CLASS_NUM_SET(
								((BgL_objectz00_bglt)
									((BgL_appz00_bglt) BgL_nodez00_2091)), BgL_arg1397z00_2197);
						}
						{	/* Ast/shrinkify.scm 86 */
							BgL_objectz00_bglt BgL_tmpz00_2732;

							BgL_tmpz00_2732 =
								((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_2091));
							BGL_OBJECT_WIDENING_SET(BgL_tmpz00_2732, BFALSE);
						}
						((BgL_objectz00_bglt) ((BgL_appz00_bglt) BgL_nodez00_2091));
						((obj_t) ((BgL_appz00_bglt) BgL_nodez00_2091));
					}
				else
					{	/* Ast/shrinkify.scm 86 */
						BFALSE;
					}
			}
			{	/* Ast/shrinkify.scm 87 */
				BgL_varz00_bglt BgL_arg1420z00_2202;

				BgL_arg1420z00_2202 =
					(((BgL_appz00_bglt) COBJECT(
							((BgL_appz00_bglt) BgL_nodez00_2091)))->BgL_funz00);
				BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
					((BgL_nodez00_bglt) BgL_arg1420z00_2202));
			}
			BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(
				(((BgL_appz00_bglt) COBJECT(
							((BgL_appz00_bglt) BgL_nodez00_2091)))->BgL_argsz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-sync1264 */
	obj_t BGl_z62shrinkzd2nodez12zd2sync1264z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2092, obj_t BgL_nodez00_2093)
	{
		{	/* Ast/shrinkify.scm 76 */
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_syncz00_bglt) COBJECT(
							((BgL_syncz00_bglt) BgL_nodez00_2093)))->BgL_mutexz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_syncz00_bglt) COBJECT(
							((BgL_syncz00_bglt) BgL_nodez00_2093)))->BgL_prelockz00));
			BGl_shrinkzd2nodez12zc0zzast_shrinkifyz00(
				(((BgL_syncz00_bglt) COBJECT(
							((BgL_syncz00_bglt) BgL_nodez00_2093)))->BgL_bodyz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-sequenc1262 */
	obj_t BGl_z62shrinkzd2nodez12zd2sequenc1262z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2094, obj_t BgL_nodez00_2095)
	{
		{	/* Ast/shrinkify.scm 69 */
			BGl_shrinkzd2nodeza2z12z62zzast_shrinkifyz00(
				(((BgL_sequencez00_bglt) COBJECT(
							((BgL_sequencez00_bglt) BgL_nodez00_2095)))->BgL_nodesz00));
			return BUNSPEC;
		}

	}



/* &shrink-node!-kwote1260 */
	obj_t BGl_z62shrinkzd2nodez12zd2kwote1260z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2096, obj_t BgL_nodez00_2097)
	{
		{	/* Ast/shrinkify.scm 63 */
			return BUNSPEC;
		}

	}



/* &shrink-node!-var1258 */
	obj_t BGl_z62shrinkzd2nodez12zd2var1258z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2098, obj_t BgL_nodez00_2099)
	{
		{	/* Ast/shrinkify.scm 57 */
			return BUNSPEC;
		}

	}



/* &shrink-node!-atom1256 */
	obj_t BGl_z62shrinkzd2nodez12zd2atom1256z70zzast_shrinkifyz00(obj_t
		BgL_envz00_2100, obj_t BgL_nodez00_2101)
	{
		{	/* Ast/shrinkify.scm 51 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zzast_shrinkifyz00(void)
	{
		{	/* Ast/shrinkify.scm 15 */
			BGl_modulezd2initializa7ationz75zztype_typez00(515343395L,
				BSTRING_TO_STRING(BGl_string1861z00zzast_shrinkifyz00));
			BGl_modulezd2initializa7ationz75zzast_varz00(90839984L,
				BSTRING_TO_STRING(BGl_string1861z00zzast_shrinkifyz00));
			BGl_modulezd2initializa7ationz75zzast_nodez00(469732712L,
				BSTRING_TO_STRING(BGl_string1861z00zzast_shrinkifyz00));
			return
				BGl_modulezd2initializa7ationz75zzast_envz00(146730773L,
				BSTRING_TO_STRING(BGl_string1861z00zzast_shrinkifyz00));
		}

	}

#ifdef __cplusplus
}
#endif
