/*===========================================================================*/
/*   (Llib/bigloo.scm)                                                       */
/*   Bigloo (4.7a)                                                           */
/*   Inria -- Sophia Antipolis (c)       Thu Feb 19 09:11:58 AM CET 2026     */
/*===========================================================================*/
/* COMPILATION: (/home/serrano/prgm/project/bigloo/4.7a/bin/bigloo -srfi bigloo-unsafe -O3 -fcfa-arithmetic -q -lib-dir /home/serrano/prgm/project/bigloo/4.7a/lib/bigloo/4.7a +rm -mklib -cc gcc -fsharing -q -no-hello -unsafe -safee -O4 -stdc -c Llib/bigloo.scm -indent -o objs/obj_u/Llib/bigloo.c) */
/* 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___BIGLOO_TYPE_DEFINITIONS
#define BGL___BIGLOO_TYPE_DEFINITIONS
#endif													// BGL___BIGLOO_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_z62bigloozd2classzd2demanglez62zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t BGl_cnstzf3zf3zz__biglooz00(obj_t);
	static obj_t BGl_z62bigloozd2classzd2mangledzf3z91zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t BGl_opaquezf3zf3zz__biglooz00(obj_t);
	extern obj_t bstring_to_keyword(obj_t);
	static obj_t BGl_z62opaquezf3z91zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_requirezd2initializa7ationz75zz__biglooz00 = BUNSPEC;
	extern obj_t bgl_remq_bang(obj_t, obj_t);
	static obj_t BGl_z62bigloozd2modulezd2demanglez62zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62unregisterzd2exitzd2functionz12z70zz__biglooz00(obj_t,
		obj_t);
	static obj_t BGl_za2levelza2z00zz__biglooz00 = BUNSPEC;
	static obj_t BGl_z62timez62zz__biglooz00(obj_t, obj_t);
	extern obj_t BGl_typezd2errorzd2zz__errorz00(obj_t, obj_t, obj_t, obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__biglooz00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__bexitz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__threadz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__paramz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__configurez00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	static long BGl_getzd28bitszd2integerze70ze7zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62bigloozd2needzd2manglingzf3z91zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62cellzf3z91zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t bigloo_demangle(obj_t);
	static obj_t BGl_symbol1863z00zz__biglooz00 = BUNSPEC;
	static long BGl_charzd2ze3digitze70zd6zz__biglooz00(unsigned char);
	static obj_t BGl_z62bigloozd2demanglezb0zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62bigloozd2modulezd2manglez62zz__biglooz00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62bigloozd2exitzd2applyz62zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL bool_t bigloo_mangledp(obj_t);
	static obj_t BGl_z62bigloozd2mangledzf3z43zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_symbol1871z00zz__biglooz00 = BUNSPEC;
	static obj_t BGl_z62bigloozd2exitzd2mutexz62zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_gczd2finaliza7ez75zz__biglooz00(void);
	static obj_t BGl_z62nullzd2orzd2unspecifiedzf3z91zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_procedurezd2attrzd2setz12z12zz__biglooz00(obj_t,
		obj_t);
	static obj_t BGl_toplevelzd2initzd2zz__biglooz00(void);
	static obj_t BGl_za2exitzd2mutexza2zd2zz__biglooz00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t BGl_timez00zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_checkzd2versionz12zc0zz__biglooz00(obj_t, char *,
		obj_t);
	static obj_t BGl_bigloozd2demanglezd2atze70ze7zz__biglooz00(obj_t, long,
		obj_t);
	static obj_t BGl_z62cnstzf3z91zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62cellzd2setz12za2zz__biglooz00(obj_t, obj_t, obj_t);
	static obj_t BGl__gcz00zz__biglooz00(obj_t, obj_t);
	extern bool_t BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_unspecifiedz00zz__biglooz00(void);
	BGL_EXPORTED_DECL obj_t bigloo_module_mangle(obj_t, obj_t);
	static obj_t BGl_cnstzd2initzd2zz__biglooz00(void);
	static obj_t BGl_genericzd2initzd2zz__biglooz00(void);
	extern obj_t BGl_stringzd2copyzd2zz__r4_strings_6_7z00(obj_t);
	BGL_EXPORTED_DECL obj_t
		BGl_unregisterzd2exitzd2functionz12z12zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL bool_t
		BGl_nullzd2orzd2unspecifiedzf3zf3zz__biglooz00(obj_t);
	static obj_t BGl_importedzd2moduleszd2initz00zz__biglooz00(void);
	static obj_t BGl_gczd2rootszd2initz00zz__biglooz00(void);
	static obj_t BGl_list1868z00zz__biglooz00 = BUNSPEC;
	static obj_t BGl_z62bmemzd2resetz12za2zz__biglooz00(obj_t);
	static obj_t BGl_objectzd2initzd2zz__biglooz00(void);
	BGL_EXPORTED_DECL obj_t BGl_opaquezd2nilzd2zz__biglooz00(void);
	BGL_EXPORTED_DECL obj_t bigloo_mangle(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_cellzd2refzd2zz__biglooz00(obj_t);
	extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t bigloo_exit_apply(obj_t);
	BGL_EXPORTED_DECL int BGl_procedurezd2lengthzd2zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t bigloo_module_demangle(obj_t);
	static obj_t BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00 = BUNSPEC;
	extern obj_t string_append_3(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t bgl_exit_mutex(void);
	extern void bgl_gc_verbose_set(bool_t);
	static obj_t BGl_za2releaseza2z00zz__biglooz00 = BUNSPEC;
	static obj_t BGl_z62procedurezd2attrzb0zz__biglooz00(obj_t, obj_t);
	extern obj_t bgl_bmem_reset(void);
	BGL_EXPORTED_DECL obj_t BGl_cellzd2setz12zc0zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62opaquezd2nilzb0zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_gczd2verbosezd2setz12z12zz__biglooz00(bool_t);
	static obj_t BGl_z62gczd2verbosezd2setz12z70zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62makezd2cellzb0zz__biglooz00(obj_t, obj_t);
	extern obj_t bstring_to_symbol(obj_t);
	extern obj_t c_substring(obj_t, long, long);
	BGL_EXPORTED_DECL obj_t
		BGl_registerzd2exitzd2functionz12z12zz__biglooz00(obj_t);
	static obj_t BGl_methodzd2initzd2zz__biglooz00(void);
	static obj_t BGl_z62bigloozd2manglezb0zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62registerzd2exitzd2functionz12z70zz__biglooz00(obj_t,
		obj_t);
	extern obj_t blit_string(obj_t, long, obj_t, long, long);
	BGL_EXPORTED_DECL obj_t bigloo_class_demangle(obj_t);
	static obj_t BGl_z62gczd2finaliza7ez17zz__biglooz00(obj_t);
	static obj_t BGl_z62procedurezd2attrzd2setz12z70zz__biglooz00(obj_t, obj_t,
		obj_t);
	static long BGl_manglezd2atz12zc0zz__biglooz00(obj_t, obj_t, long, long);
	BGL_EXPORTED_DECL bool_t bigloo_class_mangledp(obj_t);
	extern obj_t make_string(long, unsigned char);
	BGL_EXPORTED_DECL obj_t BGl_makezd2cellzd2zz__biglooz00(obj_t);
	static obj_t BGl_za2modulesza2z00zz__biglooz00 = BUNSPEC;
	static obj_t BGl_z62cellzd2refzb0zz__biglooz00(obj_t, obj_t);
	static obj_t BGl_z62unspecifiedz62zz__biglooz00(obj_t);
	static obj_t BGl_z62procedurezd2lengthzb0zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL int BGl_procedurezd2arityzd2zz__biglooz00(obj_t);
	extern obj_t string_append(obj_t, obj_t);
	static obj_t BGl_z62procedurezd2arityzb0zz__biglooz00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_procedurezd2attrzd2zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_bmemzd2resetz12zc0zz__biglooz00(void);
	static obj_t BGl_z62checkzd2versionz12za2zz__biglooz00(obj_t, obj_t, obj_t,
		obj_t);
	static obj_t BGl_keyword1869z00zz__biglooz00 = BUNSPEC;
	BGL_EXPORTED_DECL bool_t
		BGl_bigloozd2needzd2manglingzf3zf3zz__biglooz00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_cellzf3zf3zz__biglooz00(obj_t);
	extern bool_t bigloo_strncmp(obj_t, obj_t, long);
	static obj_t BGl_symbol1829z00zz__biglooz00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t BGl_gcz00zz__biglooz00(obj_t);
	extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	static obj_t *__cnst;


	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_unspecifiedzd2envzd2zz__biglooz00,
		BgL_bgl_za762unspecifiedza761877z00, BGl_z62unspecifiedz62zz__biglooz00, 0L,
		BUNSPEC, 0);
	      BGL_DEFINE_STRING(BGl_string1870z00zz__biglooz00,
		BgL_bgl_string1870za700za7za7_1878za7, "finalize", 8);
	      BGL_DEFINE_STRING(BGl_string1872z00zz__biglooz00,
		BgL_bgl_string1872za700za7za7_1879za7, "gc", 2);
	      BGL_DEFINE_STRING(BGl_string1873z00zz__biglooz00,
		BgL_bgl_string1873za700za7za7_1880za7, "Illegal keyword argument", 24);
	      BGL_DEFINE_STRING(BGl_string1874z00zz__biglooz00,
		BgL_bgl_string1874za700za7za7_1881za7,
		"wrong number of arguments: [0..1] expected, provided", 52);
	      BGL_DEFINE_STRING(BGl_string1875z00zz__biglooz00,
		BgL_bgl_string1875za700za7za7_1882za7, "bint", 4);
	      BGL_DEFINE_STRING(BGl_string1876z00zz__biglooz00,
		BgL_bgl_string1876za700za7za7_1883za7, "__bigloo", 8);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_unregisterzd2exitzd2functionz12zd2envzc0zz__biglooz00,
		BgL_bgl_za762unregisterza7d21884z00,
		BGl_z62unregisterzd2exitzd2functionz12z70zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_procedurezd2attrzd2envz00zz__biglooz00,
		BgL_bgl_za762procedureza7d2a1885z00,
		BGl_z62procedurezd2attrzb0zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_opaquezd2nilzd2envz00zz__biglooz00,
		BgL_bgl_za762opaqueza7d2nilza71886za7, BGl_z62opaquezd2nilzb0zz__biglooz00,
		0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2mangledzf3zd2envzf3zz__biglooz00,
		BgL_bgl_za762biglooza7d2mang1887z00,
		BGl_z62bigloozd2mangledzf3z43zz__biglooz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2exitzd2mutexzd2envzd2zz__biglooz00,
		BgL_bgl_za762biglooza7d2exit1888z00,
		BGl_z62bigloozd2exitzd2mutexz62zz__biglooz00, 0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_gczd2verbosezd2setz12zd2envzc0zz__biglooz00,
		BgL_bgl_za762gcza7d2verboseza71889za7,
		BGl_z62gczd2verbosezd2setz12z70zz__biglooz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_bigloozd2modulezd2manglezd2envzd2zz__biglooz00,
		BgL_bgl_za762biglooza7d2modu1890z00,
		BGl_z62bigloozd2modulezd2manglez62zz__biglooz00, 0L, BUNSPEC, 2);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_nullzd2orzd2unspecifiedzf3zd2envz21zz__biglooz00,
		BgL_bgl_za762nullza7d2orza7d2u1891za7,
		BGl_z62nullzd2orzd2unspecifiedzf3z91zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_bmemzd2resetz12zd2envz12zz__biglooz00,
		BgL_bgl_za762bmemza7d2resetza71892za7,
		BGl_z62bmemzd2resetz12za2zz__biglooz00, 0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_bigloozd2needzd2manglingzf3zd2envz21zz__biglooz00,
		BgL_bgl_za762biglooza7d2need1893z00,
		BGl_z62bigloozd2needzd2manglingzf3z91zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_gczd2envzd2zz__biglooz00,
		BgL_bgl__gcza700za7za7__bigloo1894za7, opt_generic_entry,
		BGl__gcz00zz__biglooz00, BFALSE, -1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_procedurezd2lengthzd2envz00zz__biglooz00,
		BgL_bgl_za762procedureza7d2l1895z00,
		BGl_z62procedurezd2lengthzb0zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_gczd2finaliza7ezd2envza7zz__biglooz00,
		BgL_bgl_za762gcza7d2finaliza7a1896za7,
		BGl_z62gczd2finaliza7ez17zz__biglooz00, 0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_bigloozd2classzd2mangledzf3zd2envz21zz__biglooz00,
		BgL_bgl_za762biglooza7d2clas1897z00,
		BGl_z62bigloozd2classzd2mangledzf3z91zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_opaquezf3zd2envz21zz__biglooz00,
		BgL_bgl_za762opaqueza7f3za791za71898z00, BGl_z62opaquezf3z91zz__biglooz00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2cellzd2envz00zz__biglooz00,
		BgL_bgl_za762makeza7d2cellza7b1899za7, BGl_z62makezd2cellzb0zz__biglooz00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_procedurezd2arityzd2envz00zz__biglooz00,
		BgL_bgl_za762procedureza7d2a1900z00,
		BGl_z62procedurezd2arityzb0zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2manglezd2envz00zz__biglooz00,
		BgL_bgl_za762biglooza7d2mang1901z00, BGl_z62bigloozd2manglezb0zz__biglooz00,
		0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_cellzf3zd2envz21zz__biglooz00,
		BgL_bgl_za762cellza7f3za791za7za7_1902za7, BGl_z62cellzf3z91zz__biglooz00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_registerzd2exitzd2functionz12zd2envzc0zz__biglooz00,
		BgL_bgl_za762registerza7d2ex1903z00,
		BGl_z62registerzd2exitzd2functionz12z70zz__biglooz00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2demanglezd2envz00zz__biglooz00,
		BgL_bgl_za762biglooza7d2dema1904z00,
		BGl_z62bigloozd2demanglezb0zz__biglooz00, 0L, BUNSPEC, 1);
	extern obj_t BGl_stringzd2envzd2zz__r4_strings_6_7z00;
	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_bigloozd2modulezd2demanglezd2envzd2zz__biglooz00,
		BgL_bgl_za762biglooza7d2modu1905z00,
		BGl_z62bigloozd2modulezd2demanglez62zz__biglooz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_checkzd2versionz12zd2envz12zz__biglooz00,
		BgL_bgl_za762checkza7d2versi1906z00,
		BGl_z62checkzd2versionz12za2zz__biglooz00, 0L, BUNSPEC, 3);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_cnstzf3zd2envz21zz__biglooz00,
		BgL_bgl_za762cnstza7f3za791za7za7_1907za7, BGl_z62cnstzf3z91zz__biglooz00,
		0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1830z00zz__biglooz00,
		BgL_bgl_string1830za700za7za7_1908za7, "bigloo-exit", 11);
	      BGL_DEFINE_STRING(BGl_string1831z00zz__biglooz00,
		BgL_bgl_string1831za700za7za7_1909za7, " (level 0)", 10);
	      BGL_DEFINE_STRING(BGl_string1832z00zz__biglooz00,
		BgL_bgl_string1832za700za7za7_1910za7,
		"Some modules have been compiled by: ", 36);
	      BGL_DEFINE_STRING(BGl_string1833z00zz__biglooz00,
		BgL_bgl_string1833za700za7za7_1911za7, "and other by: ", 14);
	      BGL_DEFINE_STRING(BGl_string1834z00zz__biglooz00,
		BgL_bgl_string1834za700za7za7_1912za7,
		"/tmp/bigloo/runtime/Llib/bigloo.scm", 35);
	      BGL_DEFINE_STRING(BGl_string1835z00zz__biglooz00,
		BgL_bgl_string1835za700za7za7_1913za7, "&check-version!", 15);
	      BGL_DEFINE_STRING(BGl_string1836z00zz__biglooz00,
		BgL_bgl_string1836za700za7za7_1914za7, "bstring", 7);
	      BGL_DEFINE_STRING(BGl_string1837z00zz__biglooz00,
		BgL_bgl_string1837za700za7za7_1915za7, "&procedure-arity", 16);
	      BGL_DEFINE_STRING(BGl_string1838z00zz__biglooz00,
		BgL_bgl_string1838za700za7za7_1916za7, "procedure", 9);
	      BGL_DEFINE_STRING(BGl_string1839z00zz__biglooz00,
		BgL_bgl_string1839za700za7za7_1917za7, "&procedure-length", 17);
	      BGL_DEFINE_STRING(BGl_string1840z00zz__biglooz00,
		BgL_bgl_string1840za700za7za7_1918za7, "&procedure-attr", 15);
	      BGL_DEFINE_STRING(BGl_string1841z00zz__biglooz00,
		BgL_bgl_string1841za700za7za7_1919za7, "&procedure-attr-set!", 20);
	      BGL_DEFINE_STRING(BGl_string1842z00zz__biglooz00,
		BgL_bgl_string1842za700za7za7_1920za7, "0123456789abcdef", 16);
	      BGL_DEFINE_STRING(BGl_string1843z00zz__biglooz00,
		BgL_bgl_string1843za700za7za7_1921za7, "bigloo-mangle-string", 20);
	      BGL_DEFINE_STRING(BGl_string1844z00zz__biglooz00,
		BgL_bgl_string1844za700za7za7_1922za7, "Can't mangle empty string", 25);
	      BGL_DEFINE_STRING(BGl_string1845z00zz__biglooz00,
		BgL_bgl_string1845za700za7za7_1923za7, "BgL_", 4);
	      BGL_DEFINE_STRING(BGl_string1846z00zz__biglooz00,
		BgL_bgl_string1846za700za7za7_1924za7, "&bigloo-mangle", 14);
	      BGL_DEFINE_STRING(BGl_string1847z00zz__biglooz00,
		BgL_bgl_string1847za700za7za7_1925za7, "BGl_", 4);
	      BGL_DEFINE_STRING(BGl_string1848z00zz__biglooz00,
		BgL_bgl_string1848za700za7za7_1926za7, "&bigloo-module-mangle", 21);
	      BGL_DEFINE_STRING(BGl_string1849z00zz__biglooz00,
		BgL_bgl_string1849za700za7za7_1927za7, "&bigloo-mangled?", 16);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_cellzd2refzd2envz00zz__biglooz00,
		BgL_bgl_za762cellza7d2refza7b01928za7, BGl_z62cellzd2refzb0zz__biglooz00,
		0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1850z00zz__biglooz00,
		BgL_bgl_string1850za700za7za7_1929za7, "&bigloo-need-mangling?", 22);
	      BGL_DEFINE_STRING(BGl_string1851z00zz__biglooz00,
		BgL_bgl_string1851za700za7za7_1930za7, "bigloo-demangle", 15);
	      BGL_DEFINE_STRING(BGl_string1852z00zz__biglooz00,
		BgL_bgl_string1852za700za7za7_1931za7, "Illegal mangling on", 19);
	      BGL_DEFINE_STRING(BGl_string1853z00zz__biglooz00,
		BgL_bgl_string1853za700za7za7_1932za7, "&bigloo-demangle", 16);
	      BGL_DEFINE_STRING(BGl_string1854z00zz__biglooz00,
		BgL_bgl_string1854za700za7za7_1933za7, "@", 1);
	      BGL_DEFINE_STRING(BGl_string1855z00zz__biglooz00,
		BgL_bgl_string1855za700za7za7_1934za7, "&bigloo-module-demangle", 23);
	      BGL_DEFINE_STRING(BGl_string1856z00zz__biglooz00,
		BgL_bgl_string1856za700za7za7_1935za7, "&bigloo-class-mangled?", 22);
	      BGL_DEFINE_STRING(BGl_string1857z00zz__biglooz00,
		BgL_bgl_string1857za700za7za7_1936za7, "_bglt", 5);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_bigloozd2exitzd2applyzd2envzd2zz__biglooz00,
		BgL_bgl_za762biglooza7d2exit1937z00,
		BGl_z62bigloozd2exitzd2applyz62zz__biglooz00, 0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1858z00zz__biglooz00,
		BgL_bgl_string1858za700za7za7_1938za7, "&bigloo-class-demangle", 22);
	      BGL_DEFINE_STRING(BGl_string1859z00zz__biglooz00,
		BgL_bgl_string1859za700za7za7_1939za7, "bigloo-exit-register!", 21);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_bigloozd2classzd2demanglezd2envzd2zz__biglooz00,
		BgL_bgl_za762biglooza7d2clas1940z00,
		BGl_z62bigloozd2classzd2demanglez62zz__biglooz00, 0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_procedurezd2attrzd2setz12zd2envzc0zz__biglooz00,
		BgL_bgl_za762procedureza7d2a1941z00,
		BGl_z62procedurezd2attrzd2setz12z70zz__biglooz00, 0L, BUNSPEC, 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_timezd2envzd2zz__biglooz00,
		BgL_bgl_za762timeza762za7za7__bi1942z00, BGl_z62timez62zz__biglooz00, 0L,
		BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1860z00zz__biglooz00,
		BgL_bgl_string1860za700za7za7_1943za7, "Wrong procedure arity", 21);
	      BGL_DEFINE_STRING(BGl_string1861z00zz__biglooz00,
		BgL_bgl_string1861za700za7za7_1944za7, "&register-exit-function!", 24);
	      BGL_DEFINE_STRING(BGl_string1862z00zz__biglooz00,
		BgL_bgl_string1862za700za7za7_1945za7, "&unregister-exit-function!", 26);
	      BGL_DEFINE_STRING(BGl_string1864z00zz__biglooz00,
		BgL_bgl_string1864za700za7za7_1946za7, "time", 4);
	      BGL_DEFINE_STRING(BGl_string1865z00zz__biglooz00,
		BgL_bgl_string1865za700za7za7_1947za7, "&time", 5);
	      BGL_DEFINE_STRING(BGl_string1866z00zz__biglooz00,
		BgL_bgl_string1866za700za7za7_1948za7, "_gc", 3);
	      BGL_DEFINE_STRING(BGl_string1867z00zz__biglooz00,
		BgL_bgl_string1867za700za7za7_1949za7, "vector", 6);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_cellzd2setz12zd2envz12zz__biglooz00,
		BgL_bgl_za762cellza7d2setza7121950za7, BGl_z62cellzd2setz12za2zz__biglooz00,
		0L, BUNSPEC, 2);

/* contant bindings */
	static void bgl_constant_bindings()
	{
		BGL_BIND_PROCEDURE(BGl_cellzd2setz12zd2envz12zz__biglooz00,
			BgL_bgl_za762cellza7d2setza7121950za7);
		BGL_BIND_STRING(BGl_string1867z00zz__biglooz00,
			BgL_bgl_string1867za700za7za7_1949za7);
		BGL_BIND_STRING(BGl_string1866z00zz__biglooz00,
			BgL_bgl_string1866za700za7za7_1948za7);
		BGL_BIND_STRING(BGl_string1865z00zz__biglooz00,
			BgL_bgl_string1865za700za7za7_1947za7);
		BGL_BIND_STRING(BGl_string1864z00zz__biglooz00,
			BgL_bgl_string1864za700za7za7_1946za7);
		BGL_BIND_STRING(BGl_string1862z00zz__biglooz00,
			BgL_bgl_string1862za700za7za7_1945za7);
		BGL_BIND_STRING(BGl_string1861z00zz__biglooz00,
			BgL_bgl_string1861za700za7za7_1944za7);
		BGL_BIND_STRING(BGl_string1860z00zz__biglooz00,
			BgL_bgl_string1860za700za7za7_1943za7);
		BGL_BIND_PROCEDURE(BGl_timezd2envzd2zz__biglooz00,
			BgL_bgl_za762timeza762za7za7__bi1942z00);
		BGL_BIND_PROCEDURE(BGl_procedurezd2attrzd2setz12zd2envzc0zz__biglooz00,
			BgL_bgl_za762procedureza7d2a1941z00);
		BGL_BIND_PROCEDURE(BGl_bigloozd2classzd2demanglezd2envzd2zz__biglooz00,
			BgL_bgl_za762biglooza7d2clas1940z00);
		BGL_BIND_STRING(BGl_string1859z00zz__biglooz00,
			BgL_bgl_string1859za700za7za7_1939za7);
		BGL_BIND_STRING(BGl_string1858z00zz__biglooz00,
			BgL_bgl_string1858za700za7za7_1938za7);
		BGL_BIND_PROCEDURE(BGl_bigloozd2exitzd2applyzd2envzd2zz__biglooz00,
			BgL_bgl_za762biglooza7d2exit1937z00);
		BGL_BIND_STRING(BGl_string1857z00zz__biglooz00,
			BgL_bgl_string1857za700za7za7_1936za7);
		BGL_BIND_STRING(BGl_string1856z00zz__biglooz00,
			BgL_bgl_string1856za700za7za7_1935za7);
		BGL_BIND_STRING(BGl_string1855z00zz__biglooz00,
			BgL_bgl_string1855za700za7za7_1934za7);
		BGL_BIND_STRING(BGl_string1854z00zz__biglooz00,
			BgL_bgl_string1854za700za7za7_1933za7);
		BGL_BIND_STRING(BGl_string1853z00zz__biglooz00,
			BgL_bgl_string1853za700za7za7_1932za7);
		BGL_BIND_STRING(BGl_string1852z00zz__biglooz00,
			BgL_bgl_string1852za700za7za7_1931za7);
		BGL_BIND_STRING(BGl_string1851z00zz__biglooz00,
			BgL_bgl_string1851za700za7za7_1930za7);
		BGL_BIND_STRING(BGl_string1850z00zz__biglooz00,
			BgL_bgl_string1850za700za7za7_1929za7);
		BGL_BIND_PROCEDURE(BGl_cellzd2refzd2envz00zz__biglooz00,
			BgL_bgl_za762cellza7d2refza7b01928za7);
		BGL_BIND_STRING(BGl_string1849z00zz__biglooz00,
			BgL_bgl_string1849za700za7za7_1927za7);
		BGL_BIND_STRING(BGl_string1848z00zz__biglooz00,
			BgL_bgl_string1848za700za7za7_1926za7);
		BGL_BIND_STRING(BGl_string1847z00zz__biglooz00,
			BgL_bgl_string1847za700za7za7_1925za7);
		BGL_BIND_STRING(BGl_string1846z00zz__biglooz00,
			BgL_bgl_string1846za700za7za7_1924za7);
		BGL_BIND_STRING(BGl_string1845z00zz__biglooz00,
			BgL_bgl_string1845za700za7za7_1923za7);
		BGL_BIND_STRING(BGl_string1844z00zz__biglooz00,
			BgL_bgl_string1844za700za7za7_1922za7);
		BGL_BIND_STRING(BGl_string1843z00zz__biglooz00,
			BgL_bgl_string1843za700za7za7_1921za7);
		BGL_BIND_STRING(BGl_string1842z00zz__biglooz00,
			BgL_bgl_string1842za700za7za7_1920za7);
		BGL_BIND_STRING(BGl_string1841z00zz__biglooz00,
			BgL_bgl_string1841za700za7za7_1919za7);
		BGL_BIND_STRING(BGl_string1840z00zz__biglooz00,
			BgL_bgl_string1840za700za7za7_1918za7);
		BGL_BIND_STRING(BGl_string1839z00zz__biglooz00,
			BgL_bgl_string1839za700za7za7_1917za7);
		BGL_BIND_STRING(BGl_string1838z00zz__biglooz00,
			BgL_bgl_string1838za700za7za7_1916za7);
		BGL_BIND_STRING(BGl_string1837z00zz__biglooz00,
			BgL_bgl_string1837za700za7za7_1915za7);
		BGL_BIND_STRING(BGl_string1836z00zz__biglooz00,
			BgL_bgl_string1836za700za7za7_1914za7);
		BGL_BIND_STRING(BGl_string1835z00zz__biglooz00,
			BgL_bgl_string1835za700za7za7_1913za7);
		BGL_BIND_STRING(BGl_string1834z00zz__biglooz00,
			BgL_bgl_string1834za700za7za7_1912za7);
		BGL_BIND_STRING(BGl_string1833z00zz__biglooz00,
			BgL_bgl_string1833za700za7za7_1911za7);
		BGL_BIND_STRING(BGl_string1832z00zz__biglooz00,
			BgL_bgl_string1832za700za7za7_1910za7);
		BGL_BIND_STRING(BGl_string1831z00zz__biglooz00,
			BgL_bgl_string1831za700za7za7_1909za7);
		BGL_BIND_STRING(BGl_string1830z00zz__biglooz00,
			BgL_bgl_string1830za700za7za7_1908za7);
		BGL_BIND_PROCEDURE(BGl_cnstzf3zd2envz21zz__biglooz00,
			BgL_bgl_za762cnstza7f3za791za7za7_1907za7);
		BGL_BIND_PROCEDURE(BGl_checkzd2versionz12zd2envz12zz__biglooz00,
			BgL_bgl_za762checkza7d2versi1906z00);
		BGL_BIND_PROCEDURE(BGl_bigloozd2modulezd2demanglezd2envzd2zz__biglooz00,
			BgL_bgl_za762biglooza7d2modu1905z00);
		BGL_BIND_PROCEDURE(BGl_bigloozd2demanglezd2envz00zz__biglooz00,
			BgL_bgl_za762biglooza7d2dema1904z00);
		BGL_BIND_PROCEDURE(BGl_registerzd2exitzd2functionz12zd2envzc0zz__biglooz00,
			BgL_bgl_za762registerza7d2ex1903z00);
		BGL_BIND_PROCEDURE(BGl_cellzf3zd2envz21zz__biglooz00,
			BgL_bgl_za762cellza7f3za791za7za7_1902za7);
		BGL_BIND_PROCEDURE(BGl_bigloozd2manglezd2envz00zz__biglooz00,
			BgL_bgl_za762biglooza7d2mang1901z00);
		BGL_BIND_PROCEDURE(BGl_procedurezd2arityzd2envz00zz__biglooz00,
			BgL_bgl_za762procedureza7d2a1900z00);
		BGL_BIND_PROCEDURE(BGl_makezd2cellzd2envz00zz__biglooz00,
			BgL_bgl_za762makeza7d2cellza7b1899za7);
		BGL_BIND_PROCEDURE(BGl_opaquezf3zd2envz21zz__biglooz00,
			BgL_bgl_za762opaqueza7f3za791za71898z00);
		BGL_BIND_PROCEDURE(BGl_bigloozd2classzd2mangledzf3zd2envz21zz__biglooz00,
			BgL_bgl_za762biglooza7d2clas1897z00);
		BGL_BIND_PROCEDURE(BGl_gczd2finaliza7ezd2envza7zz__biglooz00,
			BgL_bgl_za762gcza7d2finaliza7a1896za7);
		BGL_BIND_PROCEDURE(BGl_procedurezd2lengthzd2envz00zz__biglooz00,
			BgL_bgl_za762procedureza7d2l1895z00);
		BGL_BIND_PROCEDURE(BGl_gczd2envzd2zz__biglooz00,
			BgL_bgl__gcza700za7za7__bigloo1894za7);
		BGL_BIND_PROCEDURE(BGl_bigloozd2needzd2manglingzf3zd2envz21zz__biglooz00,
			BgL_bgl_za762biglooza7d2need1893z00);
		BGL_BIND_PROCEDURE(BGl_bmemzd2resetz12zd2envz12zz__biglooz00,
			BgL_bgl_za762bmemza7d2resetza71892za7);
		BGL_BIND_PROCEDURE(BGl_nullzd2orzd2unspecifiedzf3zd2envz21zz__biglooz00,
			BgL_bgl_za762nullza7d2orza7d2u1891za7);
		BGL_BIND_PROCEDURE(BGl_bigloozd2modulezd2manglezd2envzd2zz__biglooz00,
			BgL_bgl_za762biglooza7d2modu1890z00);
		BGL_BIND_PROCEDURE(BGl_gczd2verbosezd2setz12zd2envzc0zz__biglooz00,
			BgL_bgl_za762gcza7d2verboseza71889za7);
		BGL_BIND_PROCEDURE(BGl_bigloozd2exitzd2mutexzd2envzd2zz__biglooz00,
			BgL_bgl_za762biglooza7d2exit1888z00);
		BGL_BIND_PROCEDURE(BGl_bigloozd2mangledzf3zd2envzf3zz__biglooz00,
			BgL_bgl_za762biglooza7d2mang1887z00);
		BGL_BIND_PROCEDURE(BGl_opaquezd2nilzd2envz00zz__biglooz00,
			BgL_bgl_za762opaqueza7d2nilza71886za7);
		BGL_BIND_PROCEDURE(BGl_procedurezd2attrzd2envz00zz__biglooz00,
			BgL_bgl_za762procedureza7d2a1885z00);
		BGL_BIND_PROCEDURE
			(BGl_unregisterzd2exitzd2functionz12zd2envzc0zz__biglooz00,
			BgL_bgl_za762unregisterza7d21884z00);
		BGL_BIND_STRING(BGl_string1876z00zz__biglooz00,
			BgL_bgl_string1876za700za7za7_1883za7);
		BGL_BIND_STRING(BGl_string1875z00zz__biglooz00,
			BgL_bgl_string1875za700za7za7_1882za7);
		BGL_BIND_STRING(BGl_string1874z00zz__biglooz00,
			BgL_bgl_string1874za700za7za7_1881za7);
		BGL_BIND_STRING(BGl_string1873z00zz__biglooz00,
			BgL_bgl_string1873za700za7za7_1880za7);
		BGL_BIND_STRING(BGl_string1872z00zz__biglooz00,
			BgL_bgl_string1872za700za7za7_1879za7);
		BGL_BIND_STRING(BGl_string1870z00zz__biglooz00,
			BgL_bgl_string1870za700za7za7_1878za7);
		BGL_BIND_PROCEDURE(BGl_unspecifiedzd2envzd2zz__biglooz00,
			BgL_bgl_za762unspecifiedza761877z00);
	}

/* 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_requirezd2initializa7ationz75zz__biglooz00));
		ADD_ROOT((void *) (&BGl_za2levelza2z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_symbol1863z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_symbol1871z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_za2exitzd2mutexza2zd2zz__biglooz00));
		ADD_ROOT((void *) (&BGl_list1868z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_za2releaseza2z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_za2modulesza2z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_keyword1869z00zz__biglooz00));
		ADD_ROOT((void *) (&BGl_symbol1829z00zz__biglooz00));
#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_modulezd2initializa7ationz75zz__biglooz00(long
		BgL_checksumz00_2432, char *BgL_fromz00_2433)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zz__biglooz00))
				{
					BGl_requirezd2initializa7ationz75zz__biglooz00 = BBOOL(((bool_t) 0));
					bgl_constant_bindings();
					BGl_gczd2rootszd2initz00zz__biglooz00();
					BGl_cnstzd2initzd2zz__biglooz00();
					BGl_importedzd2moduleszd2initz00zz__biglooz00();
					return BGl_toplevelzd2initzd2zz__biglooz00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			BGl_symbol1829z00zz__biglooz00 =
				bstring_to_symbol(BGl_string1830z00zz__biglooz00);
			BGl_symbol1863z00zz__biglooz00 =
				bstring_to_symbol(BGl_string1864z00zz__biglooz00);
			BGl_keyword1869z00zz__biglooz00 =
				bstring_to_keyword(BGl_string1870z00zz__biglooz00);
			BGl_list1868z00zz__biglooz00 =
				MAKE_YOUNG_PAIR(BGl_keyword1869z00zz__biglooz00, BNIL);
			return (BGl_symbol1871z00zz__biglooz00 =
				bstring_to_symbol(BGl_string1872z00zz__biglooz00), BUNSPEC);
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			BGl_za2releaseza2z00zz__biglooz00 = BFALSE;
			BGl_za2levelza2z00zz__biglooz00 = BFALSE;
			BGl_za2modulesza2z00zz__biglooz00 = BNIL;
			BGl_za2exitzd2mutexza2zd2zz__biglooz00 =
				bgl_make_mutex(BGl_symbol1829z00zz__biglooz00);
			return (BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00 =
				BNIL, BUNSPEC);
		}

	}



/* check-version! */
	BGL_EXPORTED_DEF obj_t BGl_checkzd2versionz12zc0zz__biglooz00(obj_t
		BgL_modulez00_3, char *BgL_releasez00_4, obj_t BgL_levelz00_5)
	{
		{	/* Llib/bigloo.scm 353 */
			if (STRINGP(BGl_za2releaseza2z00zz__biglooz00))
				{	/* Llib/bigloo.scm 359 */
					bool_t BgL_test1953z00_2451;

					{	/* Llib/bigloo.scm 359 */
						bool_t BgL_test1954z00_2452;

						{	/* Llib/bigloo.scm 359 */
							long BgL_minz00_1149;

							{	/* Llib/bigloo.scm 359 */
								long BgL_arg1219z00_1152;

								{	/* Llib/bigloo.scm 359 */
									long BgL_az00_1153;
									long BgL_bz00_1154;

									BgL_az00_1153 =
										STRING_LENGTH(string_to_bstring(BgL_releasez00_4));
									BgL_bz00_1154 =
										STRING_LENGTH(BGl_za2releaseza2z00zz__biglooz00);
									if ((BgL_az00_1153 < BgL_bz00_1154))
										{	/* Llib/bigloo.scm 360 */
											BgL_arg1219z00_1152 = BgL_az00_1153;
										}
									else
										{	/* Llib/bigloo.scm 360 */
											BgL_arg1219z00_1152 = BgL_bz00_1154;
										}
								}
								BgL_minz00_1149 = (BgL_arg1219z00_1152 - 1L);
							}
							{	/* Llib/bigloo.scm 362 */
								obj_t BgL_arg1216z00_1150;
								obj_t BgL_arg1217z00_1151;

								BgL_arg1216z00_1150 =
									c_substring(string_to_bstring(BgL_releasez00_4), 0L,
									BgL_minz00_1149);
								BgL_arg1217z00_1151 =
									c_substring(BGl_za2releaseza2z00zz__biglooz00, 0L,
									BgL_minz00_1149);
								{	/* Llib/bigloo.scm 362 */
									long BgL_l1z00_1830;

									BgL_l1z00_1830 = STRING_LENGTH(BgL_arg1216z00_1150);
									if ((BgL_l1z00_1830 == STRING_LENGTH(BgL_arg1217z00_1151)))
										{	/* Llib/bigloo.scm 362 */
											int BgL_arg1467z00_1833;

											{	/* Llib/bigloo.scm 362 */
												char *BgL_auxz00_2468;
												char *BgL_tmpz00_2466;

												BgL_auxz00_2468 =
													BSTRING_TO_STRING(BgL_arg1217z00_1151);
												BgL_tmpz00_2466 =
													BSTRING_TO_STRING(BgL_arg1216z00_1150);
												BgL_arg1467z00_1833 =
													memcmp(BgL_tmpz00_2466, BgL_auxz00_2468,
													BgL_l1z00_1830);
											}
											BgL_test1954z00_2452 =
												((long) (BgL_arg1467z00_1833) == 0L);
										}
									else
										{	/* Llib/bigloo.scm 362 */
											BgL_test1954z00_2452 = ((bool_t) 0);
										}
								}
							}
						}
						if (BgL_test1954z00_2452)
							{	/* Llib/bigloo.scm 359 */
								if (CHARP(BgL_levelz00_5))
									{	/* Llib/bigloo.scm 364 */
										if (CHARP(BGl_za2levelza2z00zz__biglooz00))
											{	/* Llib/bigloo.scm 364 */
												if (
													(CCHAR(BGl_za2levelza2z00zz__biglooz00) ==
														CCHAR(BgL_levelz00_5)))
													{	/* Llib/bigloo.scm 364 */
														BgL_test1953z00_2451 = ((bool_t) 0);
													}
												else
													{	/* Llib/bigloo.scm 364 */
														BgL_test1953z00_2451 = ((bool_t) 1);
													}
											}
										else
											{	/* Llib/bigloo.scm 364 */
												BgL_test1953z00_2451 = ((bool_t) 0);
											}
									}
								else
									{	/* Llib/bigloo.scm 364 */
										BgL_test1953z00_2451 = ((bool_t) 0);
									}
							}
						else
							{	/* Llib/bigloo.scm 359 */
								BgL_test1953z00_2451 = ((bool_t) 1);
							}
					}
					if (BgL_test1953z00_2451)
						{	/* Llib/bigloo.scm 372 */
							obj_t BgL_arg1206z00_1134;
							obj_t BgL_arg1207z00_1135;
							obj_t BgL_arg1208z00_1136;

							{	/* Llib/bigloo.scm 372 */
								obj_t BgL_arg1211z00_1137;

								{	/* Llib/bigloo.scm 372 */
									obj_t BgL_releasez00_1846;
									obj_t BgL_levelz00_1847;

									BgL_releasez00_1846 = BGl_za2releaseza2z00zz__biglooz00;
									BgL_levelz00_1847 = BGl_za2levelza2z00zz__biglooz00;
									if (CHARP(BgL_levelz00_1847))
										{	/* Llib/bigloo.scm 367 */
											obj_t BgL_sz00_1849;

											BgL_sz00_1849 =
												BGl_stringzd2copyzd2zz__r4_strings_6_7z00
												(BGl_string1831z00zz__biglooz00);
											{	/* Llib/bigloo.scm 368 */
												unsigned char BgL_tmpz00_2484;

												BgL_tmpz00_2484 = CCHAR(BgL_levelz00_1847);
												STRING_SET(BgL_sz00_1849, 8L, BgL_tmpz00_2484);
											}
											BgL_arg1211z00_1137 =
												string_append(BgL_releasez00_1846, BgL_sz00_1849);
										}
									else
										{	/* Llib/bigloo.scm 366 */
											BgL_arg1211z00_1137 = BgL_releasez00_1846;
										}
								}
								BgL_arg1206z00_1134 =
									string_append(BGl_string1832z00zz__biglooz00,
									BgL_arg1211z00_1137);
							}
							{	/* Llib/bigloo.scm 374 */
								obj_t BgL_arg1213z00_1138;

								if (CHARP(BgL_levelz00_5))
									{	/* Llib/bigloo.scm 367 */
										obj_t BgL_sz00_1853;

										BgL_sz00_1853 =
											BGl_stringzd2copyzd2zz__r4_strings_6_7z00
											(BGl_string1831z00zz__biglooz00);
										{	/* Llib/bigloo.scm 368 */
											unsigned char BgL_tmpz00_2492;

											BgL_tmpz00_2492 = CCHAR(BgL_levelz00_5);
											STRING_SET(BgL_sz00_1853, 8L, BgL_tmpz00_2492);
										}
										BgL_arg1213z00_1138 =
											string_append(string_to_bstring(BgL_releasez00_4),
											BgL_sz00_1853);
									}
								else
									{	/* Llib/bigloo.scm 366 */
										BgL_arg1213z00_1138 = string_to_bstring(BgL_releasez00_4);
									}
								BgL_arg1207z00_1135 =
									string_append(BGl_string1833z00zz__biglooz00,
									BgL_arg1213z00_1138);
							}
							BgL_arg1208z00_1136 =
								MAKE_YOUNG_PAIR(BgL_modulez00_3,
								BGl_za2modulesza2z00zz__biglooz00);
							return BGl_errorz00zz__errorz00(BgL_arg1206z00_1134,
								BgL_arg1207z00_1135, BgL_arg1208z00_1136);
						}
					else
						{	/* Llib/bigloo.scm 359 */
							return (BGl_za2modulesza2z00zz__biglooz00 =
								MAKE_YOUNG_PAIR(BgL_modulez00_3,
									BGl_za2modulesza2z00zz__biglooz00), BUNSPEC);
						}
				}
			else
				{	/* Llib/bigloo.scm 355 */
					{	/* Llib/bigloo.scm 356 */
						obj_t BgL_list1220z00_1156;

						BgL_list1220z00_1156 = MAKE_YOUNG_PAIR(BgL_modulez00_3, BNIL);
						BGl_za2modulesza2z00zz__biglooz00 = BgL_list1220z00_1156;
					}
					BGl_za2releaseza2z00zz__biglooz00 =
						string_to_bstring(BgL_releasez00_4);
					return (BGl_za2levelza2z00zz__biglooz00 = BgL_levelz00_5, BUNSPEC);
				}
		}

	}



/* &check-version! */
	obj_t BGl_z62checkzd2versionz12za2zz__biglooz00(obj_t BgL_envz00_2322,
		obj_t BgL_modulez00_2323, obj_t BgL_releasez00_2324,
		obj_t BgL_levelz00_2325)
	{
		{	/* Llib/bigloo.scm 353 */
			{	/* Llib/bigloo.scm 355 */
				char *BgL_auxz00_2504;

				{	/* Llib/bigloo.scm 355 */
					obj_t BgL_tmpz00_2505;

					if (STRINGP(BgL_releasez00_2324))
						{	/* Llib/bigloo.scm 355 */
							BgL_tmpz00_2505 = BgL_releasez00_2324;
						}
					else
						{
							obj_t BgL_auxz00_2508;

							BgL_auxz00_2508 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(13115L), BGl_string1835z00zz__biglooz00,
								BGl_string1836z00zz__biglooz00, BgL_releasez00_2324);
							FAILURE(BgL_auxz00_2508, BFALSE, BFALSE);
						}
					BgL_auxz00_2504 = BSTRING_TO_STRING(BgL_tmpz00_2505);
				}
				return
					BGl_checkzd2versionz12zc0zz__biglooz00(BgL_modulez00_2323,
					BgL_auxz00_2504, BgL_levelz00_2325);
			}
		}

	}



/* procedure-arity */
	BGL_EXPORTED_DEF int BGl_procedurezd2arityzd2zz__biglooz00(obj_t
		BgL_procz00_6)
	{
		{	/* Llib/bigloo.scm 389 */
			return PROCEDURE_ARITY(BgL_procz00_6);
		}

	}



/* &procedure-arity */
	obj_t BGl_z62procedurezd2arityzb0zz__biglooz00(obj_t BgL_envz00_2326,
		obj_t BgL_procz00_2327)
	{
		{	/* Llib/bigloo.scm 389 */
			{	/* Llib/bigloo.scm 390 */
				int BgL_tmpz00_2515;

				{	/* Llib/bigloo.scm 390 */
					obj_t BgL_auxz00_2516;

					if (PROCEDUREP(BgL_procz00_2327))
						{	/* Llib/bigloo.scm 390 */
							BgL_auxz00_2516 = BgL_procz00_2327;
						}
					else
						{
							obj_t BgL_auxz00_2519;

							BgL_auxz00_2519 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(14532L), BGl_string1837z00zz__biglooz00,
								BGl_string1838z00zz__biglooz00, BgL_procz00_2327);
							FAILURE(BgL_auxz00_2519, BFALSE, BFALSE);
						}
					BgL_tmpz00_2515 =
						BGl_procedurezd2arityzd2zz__biglooz00(BgL_auxz00_2516);
				}
				return BINT(BgL_tmpz00_2515);
			}
		}

	}



/* procedure-length */
	BGL_EXPORTED_DEF int BGl_procedurezd2lengthzd2zz__biglooz00(obj_t
		BgL_procz00_7)
	{
		{	/* Llib/bigloo.scm 395 */
			return PROCEDURE_LENGTH(BgL_procz00_7);
		}

	}



/* &procedure-length */
	obj_t BGl_z62procedurezd2lengthzb0zz__biglooz00(obj_t BgL_envz00_2328,
		obj_t BgL_procz00_2329)
	{
		{	/* Llib/bigloo.scm 395 */
			{	/* Llib/bigloo.scm 396 */
				int BgL_tmpz00_2526;

				{	/* Llib/bigloo.scm 396 */
					obj_t BgL_auxz00_2527;

					if (PROCEDUREP(BgL_procz00_2329))
						{	/* Llib/bigloo.scm 396 */
							BgL_auxz00_2527 = BgL_procz00_2329;
						}
					else
						{
							obj_t BgL_auxz00_2530;

							BgL_auxz00_2530 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(14822L), BGl_string1839z00zz__biglooz00,
								BGl_string1838z00zz__biglooz00, BgL_procz00_2329);
							FAILURE(BgL_auxz00_2530, BFALSE, BFALSE);
						}
					BgL_tmpz00_2526 =
						BGl_procedurezd2lengthzd2zz__biglooz00(BgL_auxz00_2527);
				}
				return BINT(BgL_tmpz00_2526);
			}
		}

	}



/* procedure-attr */
	BGL_EXPORTED_DEF obj_t BGl_procedurezd2attrzd2zz__biglooz00(obj_t
		BgL_procz00_8)
	{
		{	/* Llib/bigloo.scm 401 */
			return PROCEDURE_ATTR(BgL_procz00_8);
		}

	}



/* &procedure-attr */
	obj_t BGl_z62procedurezd2attrzb0zz__biglooz00(obj_t BgL_envz00_2330,
		obj_t BgL_procz00_2331)
	{
		{	/* Llib/bigloo.scm 401 */
			{	/* Llib/bigloo.scm 402 */
				obj_t BgL_auxz00_2537;

				if (PROCEDUREP(BgL_procz00_2331))
					{	/* Llib/bigloo.scm 402 */
						BgL_auxz00_2537 = BgL_procz00_2331;
					}
				else
					{
						obj_t BgL_auxz00_2540;

						BgL_auxz00_2540 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(15111L), BGl_string1840z00zz__biglooz00,
							BGl_string1838z00zz__biglooz00, BgL_procz00_2331);
						FAILURE(BgL_auxz00_2540, BFALSE, BFALSE);
					}
				return BGl_procedurezd2attrzd2zz__biglooz00(BgL_auxz00_2537);
			}
		}

	}



/* procedure-attr-set! */
	BGL_EXPORTED_DEF obj_t BGl_procedurezd2attrzd2setz12z12zz__biglooz00(obj_t
		BgL_procz00_9, obj_t BgL_objz00_10)
	{
		{	/* Llib/bigloo.scm 407 */
			PROCEDURE_ATTR_SET(BgL_procz00_9, BgL_objz00_10);
			return BgL_objz00_10;
		}

	}



/* &procedure-attr-set! */
	obj_t BGl_z62procedurezd2attrzd2setz12z70zz__biglooz00(obj_t BgL_envz00_2332,
		obj_t BgL_procz00_2333, obj_t BgL_objz00_2334)
	{
		{	/* Llib/bigloo.scm 407 */
			{	/* Llib/bigloo.scm 408 */
				obj_t BgL_auxz00_2546;

				if (PROCEDUREP(BgL_procz00_2333))
					{	/* Llib/bigloo.scm 408 */
						BgL_auxz00_2546 = BgL_procz00_2333;
					}
				else
					{
						obj_t BgL_auxz00_2549;

						BgL_auxz00_2549 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(15437L), BGl_string1841z00zz__biglooz00,
							BGl_string1838z00zz__biglooz00, BgL_procz00_2333);
						FAILURE(BgL_auxz00_2549, BFALSE, BFALSE);
					}
				return
					BGl_procedurezd2attrzd2setz12z12zz__biglooz00(BgL_auxz00_2546,
					BgL_objz00_2334);
			}
		}

	}



/* unspecified */
	BGL_EXPORTED_DEF obj_t BGl_unspecifiedz00zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 414 */
			return BUNSPEC;
		}

	}



/* &unspecified */
	obj_t BGl_z62unspecifiedz62zz__biglooz00(obj_t BgL_envz00_2335)
	{
		{	/* Llib/bigloo.scm 414 */
			return BGl_unspecifiedz00zz__biglooz00();
		}

	}



/* null-or-unspecified? */
	BGL_EXPORTED_DEF bool_t BGl_nullzd2orzd2unspecifiedzf3zf3zz__biglooz00(obj_t
		BgL_objz00_11)
	{
		{	/* Llib/bigloo.scm 420 */
			return BGL_NULL_OR_UNSPECIFIEDP(BgL_objz00_11);
		}

	}



/* &null-or-unspecified? */
	obj_t BGl_z62nullzd2orzd2unspecifiedzf3z91zz__biglooz00(obj_t BgL_envz00_2336,
		obj_t BgL_objz00_2337)
	{
		{	/* Llib/bigloo.scm 420 */
			return
				BBOOL(BGl_nullzd2orzd2unspecifiedzf3zf3zz__biglooz00(BgL_objz00_2337));
		}

	}



/* cnst? */
	BGL_EXPORTED_DEF bool_t BGl_cnstzf3zf3zz__biglooz00(obj_t BgL_objz00_12)
	{
		{	/* Llib/bigloo.scm 432 */
			return CNSTP(BgL_objz00_12);
		}

	}



/* &cnst? */
	obj_t BGl_z62cnstzf3z91zz__biglooz00(obj_t BgL_envz00_2338,
		obj_t BgL_objz00_2339)
	{
		{	/* Llib/bigloo.scm 432 */
			return BBOOL(BGl_cnstzf3zf3zz__biglooz00(BgL_objz00_2339));
		}

	}



/* opaque? */
	BGL_EXPORTED_DEF bool_t BGl_opaquezf3zf3zz__biglooz00(obj_t BgL_objz00_13)
	{
		{	/* Llib/bigloo.scm 438 */
			return OPAQUEP(BgL_objz00_13);
		}

	}



/* &opaque? */
	obj_t BGl_z62opaquezf3z91zz__biglooz00(obj_t BgL_envz00_2340,
		obj_t BgL_objz00_2341)
	{
		{	/* Llib/bigloo.scm 438 */
			return BBOOL(BGl_opaquezf3zf3zz__biglooz00(BgL_objz00_2341));
		}

	}



/* opaque-nil */
	BGL_EXPORTED_DEF obj_t BGl_opaquezd2nilzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 444 */
			return BGL_OPAQUE_NIL();
		}

	}



/* &opaque-nil */
	obj_t BGl_z62opaquezd2nilzb0zz__biglooz00(obj_t BgL_envz00_2342)
	{
		{	/* Llib/bigloo.scm 444 */
			return BGl_opaquezd2nilzd2zz__biglooz00();
		}

	}



/* mangle-at! */
	long BGl_manglezd2atz12zc0zz__biglooz00(obj_t BgL_newz00_15,
		obj_t BgL_oldz00_16, long BgL_lenz00_17, long BgL_offsetz00_18)
	{
		{	/* Llib/bigloo.scm 457 */
			{
				long BgL_rz00_1159;
				long BgL_wz00_1160;
				long BgL_newzd2lenzd2_1161;
				long BgL_checksumz00_1162;

				BgL_rz00_1159 = 0L;
				BgL_wz00_1160 = BgL_offsetz00_18;
				BgL_newzd2lenzd2_1161 = BgL_offsetz00_18;
				BgL_checksumz00_1162 = 0L;
			BgL_zc3z04anonymousza31221ze3z87_1163:
				if ((BgL_rz00_1159 == BgL_lenz00_17))
					{	/* Llib/bigloo.scm 462 */
						STRING_SET(BgL_newz00_15, BgL_wz00_1160, ((unsigned char) 'z'));
						{	/* Llib/bigloo.scm 465 */
							unsigned char BgL_auxz00_2571;
							long BgL_tmpz00_2569;

							BgL_auxz00_2571 =
								STRING_REF(BGl_string1842z00zz__biglooz00,
								(BgL_checksumz00_1162 & 15L));
							BgL_tmpz00_2569 = (BgL_wz00_1160 + 1L);
							STRING_SET(BgL_newz00_15, BgL_tmpz00_2569, BgL_auxz00_2571);
						}
						{	/* Llib/bigloo.scm 468 */
							unsigned char BgL_auxz00_2577;
							long BgL_tmpz00_2575;

							BgL_auxz00_2577 =
								STRING_REF(BGl_string1842z00zz__biglooz00,
								((BgL_checksumz00_1162 >> (int) (4L)) & 15L));
							BgL_tmpz00_2575 = (BgL_wz00_1160 + 2L);
							STRING_SET(BgL_newz00_15, BgL_tmpz00_2575, BgL_auxz00_2577);
						}
						return (BgL_wz00_1160 + 3L);
					}
				else
					{	/* Llib/bigloo.scm 472 */
						unsigned char BgL_cz00_1172;

						BgL_cz00_1172 = STRING_REF(BgL_oldz00_16, BgL_rz00_1159);
						{	/* Llib/bigloo.scm 473 */
							bool_t BgL_test1968z00_2585;

							{	/* Llib/bigloo.scm 473 */
								bool_t BgL_test1969z00_2586;

								if (isalpha(BgL_cz00_1172))
									{	/* Llib/bigloo.scm 473 */
										if ((BgL_cz00_1172 == ((unsigned char) 'z')))
											{	/* Llib/bigloo.scm 473 */
												BgL_test1969z00_2586 = ((bool_t) 0);
											}
										else
											{	/* Llib/bigloo.scm 473 */
												BgL_test1969z00_2586 = ((bool_t) 1);
											}
									}
								else
									{	/* Llib/bigloo.scm 473 */
										BgL_test1969z00_2586 = ((bool_t) 0);
									}
								if (BgL_test1969z00_2586)
									{	/* Llib/bigloo.scm 473 */
										BgL_test1968z00_2585 = ((bool_t) 1);
									}
								else
									{	/* Llib/bigloo.scm 473 */
										if (isdigit(BgL_cz00_1172))
											{	/* Llib/bigloo.scm 474 */
												BgL_test1968z00_2585 = ((bool_t) 1);
											}
										else
											{	/* Llib/bigloo.scm 474 */
												BgL_test1968z00_2585 =
													(BgL_cz00_1172 == ((unsigned char) '_'));
							}}}
							if (BgL_test1968z00_2585)
								{	/* Llib/bigloo.scm 473 */
									STRING_SET(BgL_newz00_15, BgL_wz00_1160, BgL_cz00_1172);
									{
										long BgL_newzd2lenzd2_2599;
										long BgL_wz00_2597;
										long BgL_rz00_2595;

										BgL_rz00_2595 = (BgL_rz00_1159 + 1L);
										BgL_wz00_2597 = (BgL_wz00_1160 + 1L);
										BgL_newzd2lenzd2_2599 = (BgL_newzd2lenzd2_1161 + 1L);
										BgL_newzd2lenzd2_1161 = BgL_newzd2lenzd2_2599;
										BgL_wz00_1160 = BgL_wz00_2597;
										BgL_rz00_1159 = BgL_rz00_2595;
										goto BgL_zc3z04anonymousza31221ze3z87_1163;
									}
								}
							else
								{	/* Llib/bigloo.scm 482 */
									long BgL_icz00_1183;

									BgL_icz00_1183 = (BgL_cz00_1172);
									STRING_SET(BgL_newz00_15, BgL_wz00_1160,
										((unsigned char) 'z'));
									{	/* Llib/bigloo.scm 484 */
										unsigned char BgL_auxz00_2605;
										long BgL_tmpz00_2603;

										BgL_auxz00_2605 =
											STRING_REF(BGl_string1842z00zz__biglooz00,
											(BgL_icz00_1183 & 15L));
										BgL_tmpz00_2603 = (BgL_wz00_1160 + 1L);
										STRING_SET(BgL_newz00_15, BgL_tmpz00_2603, BgL_auxz00_2605);
									}
									{	/* Llib/bigloo.scm 487 */
										unsigned char BgL_auxz00_2611;
										long BgL_tmpz00_2609;

										BgL_auxz00_2611 =
											STRING_REF(BGl_string1842z00zz__biglooz00,
											((BgL_icz00_1183 >> (int) (4L)) & 15L));
										BgL_tmpz00_2609 = (BgL_wz00_1160 + 2L);
										STRING_SET(BgL_newz00_15, BgL_tmpz00_2609, BgL_auxz00_2611);
									}
									{
										long BgL_checksumz00_2623;
										long BgL_newzd2lenzd2_2621;
										long BgL_wz00_2619;
										long BgL_rz00_2617;

										BgL_rz00_2617 = (BgL_rz00_1159 + 1L);
										BgL_wz00_2619 = (BgL_wz00_1160 + 3L);
										BgL_newzd2lenzd2_2621 = (BgL_newzd2lenzd2_1161 + 3L);
										BgL_checksumz00_2623 =
											(BgL_checksumz00_1162 ^ (BgL_cz00_1172));
										BgL_checksumz00_1162 = BgL_checksumz00_2623;
										BgL_newzd2lenzd2_1161 = BgL_newzd2lenzd2_2621;
										BgL_wz00_1160 = BgL_wz00_2619;
										BgL_rz00_1159 = BgL_rz00_2617;
										goto BgL_zc3z04anonymousza31221ze3z87_1163;
									}
								}
						}
					}
			}
		}

	}



/* bigloo-mangle */
	BGL_EXPORTED_DEF obj_t bigloo_mangle(obj_t BgL_stringz00_19)
	{
		{	/* Llib/bigloo.scm 498 */
			{	/* Llib/bigloo.scm 499 */
				long BgL_lenz00_1201;

				BgL_lenz00_1201 = STRING_LENGTH(BgL_stringz00_19);
				{	/* Llib/bigloo.scm 499 */
					obj_t BgL_newz00_1202;

					{	/* Llib/bigloo.scm 500 */
						long BgL_arg1269z00_1205;

						BgL_arg1269z00_1205 = ((BgL_lenz00_1201 * 3L) + 7L);
						{	/* Ieee/string.scm 172 */

							BgL_newz00_1202 =
								make_string(BgL_arg1269z00_1205, ((unsigned char) ' '));
					}}
					{	/* Llib/bigloo.scm 500 */

						if ((BgL_lenz00_1201 == 0L))
							{	/* Llib/bigloo.scm 501 */
								return
									BGl_errorz00zz__errorz00(BGl_string1843z00zz__biglooz00,
									BGl_string1844z00zz__biglooz00, BgL_stringz00_19);
							}
						else
							{	/* Llib/bigloo.scm 503 */
								long BgL_stopz00_1204;

								BgL_stopz00_1204 =
									BGl_manglezd2atz12zc0zz__biglooz00(BgL_newz00_1202,
									BgL_stringz00_19, BgL_lenz00_1201, 4L);
								blit_string(BGl_string1845z00zz__biglooz00, 0L, BgL_newz00_1202,
									0L, 4L);
								return c_substring(BgL_newz00_1202, 0L, BgL_stopz00_1204);
							}
					}
				}
			}
		}

	}



/* &bigloo-mangle */
	obj_t BGl_z62bigloozd2manglezb0zz__biglooz00(obj_t BgL_envz00_2343,
		obj_t BgL_stringz00_2344)
	{
		{	/* Llib/bigloo.scm 498 */
			{	/* Llib/bigloo.scm 499 */
				obj_t BgL_auxz00_2636;

				if (STRINGP(BgL_stringz00_2344))
					{	/* Llib/bigloo.scm 499 */
						BgL_auxz00_2636 = BgL_stringz00_2344;
					}
				else
					{
						obj_t BgL_auxz00_2639;

						BgL_auxz00_2639 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(18795L), BGl_string1846z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_stringz00_2344);
						FAILURE(BgL_auxz00_2639, BFALSE, BFALSE);
					}
				return bigloo_mangle(BgL_auxz00_2636);
			}
		}

	}



/* bigloo-module-mangle */
	BGL_EXPORTED_DEF obj_t bigloo_module_mangle(obj_t BgL_idz00_20,
		obj_t BgL_modulez00_21)
	{
		{	/* Llib/bigloo.scm 510 */
			{	/* Llib/bigloo.scm 511 */
				long BgL_lenz00_1209;

				BgL_lenz00_1209 =
					(STRING_LENGTH(BgL_idz00_20) + STRING_LENGTH(BgL_modulez00_21));
				{	/* Llib/bigloo.scm 511 */
					obj_t BgL_newz00_1210;

					{	/* Llib/bigloo.scm 512 */
						long BgL_arg1280z00_1218;

						BgL_arg1280z00_1218 = ((BgL_lenz00_1209 * 3L) + 12L);
						{	/* Ieee/string.scm 172 */

							BgL_newz00_1210 =
								make_string(BgL_arg1280z00_1218, ((unsigned char) ' '));
					}}
					{	/* Llib/bigloo.scm 512 */

						if ((BgL_lenz00_1209 == 0L))
							{	/* Llib/bigloo.scm 513 */
								return
									BGl_errorz00zz__errorz00(BGl_string1843z00zz__biglooz00,
									BGl_string1844z00zz__biglooz00,
									BGl_stringzd2envzd2zz__r4_strings_6_7z00);
							}
						else
							{	/* Llib/bigloo.scm 515 */
								long BgL_modzd2startzd2_1212;

								BgL_modzd2startzd2_1212 =
									BGl_manglezd2atz12zc0zz__biglooz00(BgL_newz00_1210,
									BgL_idz00_20, STRING_LENGTH(BgL_idz00_20), 4L);
								STRING_SET(BgL_newz00_1210, BgL_modzd2startzd2_1212,
									((unsigned char) 'z'));
								{	/* Llib/bigloo.scm 517 */
									long BgL_tmpz00_2656;

									BgL_tmpz00_2656 = (1L + BgL_modzd2startzd2_1212);
									STRING_SET(BgL_newz00_1210, BgL_tmpz00_2656,
										((unsigned char) 'z'));
								}
								{	/* Llib/bigloo.scm 518 */
									long BgL_stopz00_1214;

									BgL_stopz00_1214 =
										BGl_manglezd2atz12zc0zz__biglooz00(BgL_newz00_1210,
										BgL_modulez00_21, STRING_LENGTH(BgL_modulez00_21),
										(BgL_modzd2startzd2_1212 + 2L));
									blit_string(BGl_string1847z00zz__biglooz00, 0L,
										BgL_newz00_1210, 0L, 4L);
									return c_substring(BgL_newz00_1210, 0L, BgL_stopz00_1214);
								}
							}
					}
				}
			}
		}

	}



/* &bigloo-module-mangle */
	obj_t BGl_z62bigloozd2modulezd2manglez62zz__biglooz00(obj_t BgL_envz00_2345,
		obj_t BgL_idz00_2346, obj_t BgL_modulez00_2347)
	{
		{	/* Llib/bigloo.scm 510 */
			{	/* Llib/bigloo.scm 511 */
				obj_t BgL_auxz00_2671;
				obj_t BgL_auxz00_2664;

				if (STRINGP(BgL_modulez00_2347))
					{	/* Llib/bigloo.scm 511 */
						BgL_auxz00_2671 = BgL_modulez00_2347;
					}
				else
					{
						obj_t BgL_auxz00_2674;

						BgL_auxz00_2674 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(19351L), BGl_string1848z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_modulez00_2347);
						FAILURE(BgL_auxz00_2674, BFALSE, BFALSE);
					}
				if (STRINGP(BgL_idz00_2346))
					{	/* Llib/bigloo.scm 511 */
						BgL_auxz00_2664 = BgL_idz00_2346;
					}
				else
					{
						obj_t BgL_auxz00_2667;

						BgL_auxz00_2667 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(19351L), BGl_string1848z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_idz00_2346);
						FAILURE(BgL_auxz00_2667, BFALSE, BFALSE);
					}
				return bigloo_module_mangle(BgL_auxz00_2664, BgL_auxz00_2671);
			}
		}

	}



/* bigloo-mangled? */
	BGL_EXPORTED_DEF bool_t bigloo_mangledp(obj_t BgL_stringz00_22)
	{
		{	/* Llib/bigloo.scm 527 */
			{	/* Llib/bigloo.scm 528 */
				long BgL_lenz00_1224;

				BgL_lenz00_1224 = STRING_LENGTH(BgL_stringz00_22);
				if ((BgL_lenz00_1224 > 7L))
					{	/* Llib/bigloo.scm 530 */
						bool_t BgL_test1979z00_2682;

						{	/* Llib/bigloo.scm 530 */
							bool_t BgL__ortest_1045z00_1241;

							BgL__ortest_1045z00_1241 =
								bigloo_strncmp(BgL_stringz00_22, BGl_string1845z00zz__biglooz00,
								4L);
							if (BgL__ortest_1045z00_1241)
								{	/* Llib/bigloo.scm 530 */
									BgL_test1979z00_2682 = BgL__ortest_1045z00_1241;
								}
							else
								{	/* Llib/bigloo.scm 530 */
									BgL_test1979z00_2682 =
										bigloo_strncmp(BgL_stringz00_22,
										BGl_string1847z00zz__biglooz00, 4L);
								}
						}
						if (BgL_test1979z00_2682)
							{	/* Llib/bigloo.scm 530 */
								if (
									(STRING_REF(BgL_stringz00_22,
											(BgL_lenz00_1224 - 3L)) == ((unsigned char) 'z')))
									{	/* Llib/bigloo.scm 533 */
										bool_t BgL_test1982z00_2690;

										{	/* Llib/bigloo.scm 533 */
											bool_t BgL__ortest_1046z00_1234;

											{	/* Llib/bigloo.scm 533 */
												unsigned char BgL_tmpz00_2691;

												BgL_tmpz00_2691 =
													STRING_REF(BgL_stringz00_22, (BgL_lenz00_1224 - 2L));
												BgL__ortest_1046z00_1234 = isalpha(BgL_tmpz00_2691);
											}
											if (BgL__ortest_1046z00_1234)
												{	/* Llib/bigloo.scm 533 */
													BgL_test1982z00_2690 = BgL__ortest_1046z00_1234;
												}
											else
												{	/* Llib/bigloo.scm 534 */
													unsigned char BgL_tmpz00_2696;

													BgL_tmpz00_2696 =
														STRING_REF(BgL_stringz00_22,
														(BgL_lenz00_1224 - 2L));
													BgL_test1982z00_2690 = isdigit(BgL_tmpz00_2696);
										}}
										if (BgL_test1982z00_2690)
											{	/* Llib/bigloo.scm 535 */
												bool_t BgL__ortest_1047z00_1229;

												{	/* Llib/bigloo.scm 535 */
													unsigned char BgL_tmpz00_2700;

													BgL_tmpz00_2700 =
														STRING_REF(BgL_stringz00_22,
														(BgL_lenz00_1224 - 1L));
													BgL__ortest_1047z00_1229 = isalpha(BgL_tmpz00_2700);
												}
												if (BgL__ortest_1047z00_1229)
													{	/* Llib/bigloo.scm 535 */
														return BgL__ortest_1047z00_1229;
													}
												else
													{	/* Llib/bigloo.scm 536 */
														unsigned char BgL_tmpz00_2705;

														BgL_tmpz00_2705 =
															STRING_REF(BgL_stringz00_22,
															(BgL_lenz00_1224 - 1L));
														return isdigit(BgL_tmpz00_2705);
													}
											}
										else
											{	/* Llib/bigloo.scm 533 */
												return ((bool_t) 0);
											}
									}
								else
									{	/* Llib/bigloo.scm 532 */
										return ((bool_t) 0);
									}
							}
						else
							{	/* Llib/bigloo.scm 530 */
								return ((bool_t) 0);
							}
					}
				else
					{	/* Llib/bigloo.scm 529 */
						return ((bool_t) 0);
					}
			}
		}

	}



/* &bigloo-mangled? */
	obj_t BGl_z62bigloozd2mangledzf3z43zz__biglooz00(obj_t BgL_envz00_2350,
		obj_t BgL_stringz00_2351)
	{
		{	/* Llib/bigloo.scm 527 */
			{	/* Llib/bigloo.scm 528 */
				bool_t BgL_tmpz00_2709;

				{	/* Llib/bigloo.scm 528 */
					obj_t BgL_auxz00_2710;

					if (STRINGP(BgL_stringz00_2351))
						{	/* Llib/bigloo.scm 528 */
							BgL_auxz00_2710 = BgL_stringz00_2351;
						}
					else
						{
							obj_t BgL_auxz00_2713;

							BgL_auxz00_2713 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(20121L), BGl_string1849z00zz__biglooz00,
								BGl_string1836z00zz__biglooz00, BgL_stringz00_2351);
							FAILURE(BgL_auxz00_2713, BFALSE, BFALSE);
						}
					BgL_tmpz00_2709 = bigloo_mangledp(BgL_auxz00_2710);
				}
				return BBOOL(BgL_tmpz00_2709);
			}
		}

	}



/* bigloo-need-mangling? */
	BGL_EXPORTED_DEF bool_t BGl_bigloozd2needzd2manglingzf3zf3zz__biglooz00(obj_t
		BgL_stringz00_23)
	{
		{	/* Llib/bigloo.scm 541 */
			{	/* Llib/bigloo.scm 542 */
				long BgL_lenz00_1242;

				BgL_lenz00_1242 = STRING_LENGTH(BgL_stringz00_23);
				if ((BgL_lenz00_1242 > 0L))
					{	/* Llib/bigloo.scm 544 */
						bool_t BgL__ortest_1049z00_1244;

						{	/* Llib/bigloo.scm 544 */
							bool_t BgL_test1987z00_2722;

							{	/* Llib/bigloo.scm 544 */
								bool_t BgL_test1988z00_2723;

								{	/* Llib/bigloo.scm 544 */
									unsigned char BgL_tmpz00_2724;

									BgL_tmpz00_2724 = STRING_REF(BgL_stringz00_23, 0L);
									BgL_test1988z00_2723 = isalpha(BgL_tmpz00_2724);
								}
								if (BgL_test1988z00_2723)
									{	/* Llib/bigloo.scm 544 */
										BgL_test1987z00_2722 = ((bool_t) 1);
									}
								else
									{	/* Llib/bigloo.scm 544 */
										BgL_test1987z00_2722 =
											(STRING_REF(BgL_stringz00_23,
												0L) == ((unsigned char) '_'));
							}}
							if (BgL_test1987z00_2722)
								{	/* Llib/bigloo.scm 544 */
									BgL__ortest_1049z00_1244 = ((bool_t) 0);
								}
							else
								{	/* Llib/bigloo.scm 544 */
									BgL__ortest_1049z00_1244 = ((bool_t) 1);
								}
						}
						if (BgL__ortest_1049z00_1244)
							{	/* Llib/bigloo.scm 544 */
								return BgL__ortest_1049z00_1244;
							}
						else
							{
								long BgL_iz00_1246;

								BgL_iz00_1246 = 1L;
							BgL_zc3z04anonymousza31323ze3z87_1247:
								if ((BgL_iz00_1246 >= BgL_lenz00_1242))
									{	/* Llib/bigloo.scm 547 */
										return ((bool_t) 0);
									}
								else
									{	/* Llib/bigloo.scm 549 */
										unsigned char BgL_cz00_1249;

										BgL_cz00_1249 = STRING_REF(BgL_stringz00_23, BgL_iz00_1246);
										{	/* Llib/bigloo.scm 550 */
											bool_t BgL_test1991z00_2733;

											if (isalpha(BgL_cz00_1249))
												{	/* Llib/bigloo.scm 550 */
													BgL_test1991z00_2733 = ((bool_t) 1);
												}
											else
												{	/* Llib/bigloo.scm 550 */
													if (isdigit(BgL_cz00_1249))
														{	/* Llib/bigloo.scm 551 */
															BgL_test1991z00_2733 = ((bool_t) 1);
														}
													else
														{	/* Llib/bigloo.scm 551 */
															BgL_test1991z00_2733 =
																(BgL_cz00_1249 == ((unsigned char) '_'));
												}}
											if (BgL_test1991z00_2733)
												{
													long BgL_iz00_2739;

													BgL_iz00_2739 = (BgL_iz00_1246 + 1L);
													BgL_iz00_1246 = BgL_iz00_2739;
													goto BgL_zc3z04anonymousza31323ze3z87_1247;
												}
											else
												{	/* Llib/bigloo.scm 550 */
													return ((bool_t) 1);
												}
										}
									}
							}
					}
				else
					{	/* Llib/bigloo.scm 543 */
						return ((bool_t) 0);
					}
			}
		}

	}



/* &bigloo-need-mangling? */
	obj_t BGl_z62bigloozd2needzd2manglingzf3z91zz__biglooz00(obj_t
		BgL_envz00_2352, obj_t BgL_stringz00_2353)
	{
		{	/* Llib/bigloo.scm 541 */
			{	/* Llib/bigloo.scm 542 */
				bool_t BgL_tmpz00_2741;

				{	/* Llib/bigloo.scm 542 */
					obj_t BgL_auxz00_2742;

					if (STRINGP(BgL_stringz00_2353))
						{	/* Llib/bigloo.scm 542 */
							BgL_auxz00_2742 = BgL_stringz00_2353;
						}
					else
						{
							obj_t BgL_auxz00_2745;

							BgL_auxz00_2745 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(20806L), BGl_string1850z00zz__biglooz00,
								BGl_string1836z00zz__biglooz00, BgL_stringz00_2353);
							FAILURE(BgL_auxz00_2745, BFALSE, BFALSE);
						}
					BgL_tmpz00_2741 =
						BGl_bigloozd2needzd2manglingzf3zf3zz__biglooz00(BgL_auxz00_2742);
				}
				return BBOOL(BgL_tmpz00_2741);
			}
		}

	}



/* bigloo-demangle */
	BGL_EXPORTED_DEF obj_t bigloo_demangle(obj_t BgL_stringz00_24)
	{
		{	/* Llib/bigloo.scm 559 */
			{	/* Llib/bigloo.scm 560 */
				long BgL_lenz00_1265;

				BgL_lenz00_1265 = STRING_LENGTH(BgL_stringz00_24);
				{	/* Llib/bigloo.scm 560 */
					long BgL_clenz00_1266;

					BgL_clenz00_1266 = (BgL_lenz00_1265 - 3L);
					{	/* Llib/bigloo.scm 561 */

						{

							if ((BgL_lenz00_1265 < 8L))
								{	/* Llib/bigloo.scm 610 */
									return BgL_stringz00_24;
								}
							else
								{	/* Llib/bigloo.scm 610 */
									if (bigloo_strncmp(BgL_stringz00_24,
											BGl_string1845z00zz__biglooz00, 4L))
										{	/* Llib/bigloo.scm 612 */
											{	/* Llib/bigloo.scm 600 */
												obj_t BgL_strz00_1327;

												BgL_strz00_1327 =
													BGl_bigloozd2demanglezd2atze70ze7zz__biglooz00
													(BgL_stringz00_24, BgL_clenz00_1266, BINT(4L));
												{	/* Llib/bigloo.scm 601 */
													obj_t BgL_offsetz00_1328;

													{	/* Llib/bigloo.scm 602 */
														obj_t BgL_tmpz00_2049;

														{	/* Llib/bigloo.scm 602 */
															int BgL_tmpz00_2759;

															BgL_tmpz00_2759 = (int) (1L);
															BgL_tmpz00_2049 =
																BGL_MVALUES_VAL(BgL_tmpz00_2759);
														}
														{	/* Llib/bigloo.scm 602 */
															int BgL_tmpz00_2762;

															BgL_tmpz00_2762 = (int) (1L);
															BGL_MVALUES_VAL_SET(BgL_tmpz00_2762, BUNSPEC);
														}
														BgL_offsetz00_1328 = BgL_tmpz00_2049;
													}
													{	/* Llib/bigloo.scm 602 */
														int BgL_tmpz00_2765;

														BgL_tmpz00_2765 = (int) (2L);
														BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2765);
													}
													{	/* Llib/bigloo.scm 602 */
														int BgL_tmpz00_2768;

														BgL_tmpz00_2768 = (int) (1L);
														BGL_MVALUES_VAL_SET(BgL_tmpz00_2768, BUNSPEC);
													}
													return BgL_strz00_1327;
												}
											}
										}
									else
										{	/* Llib/bigloo.scm 612 */
											if (bigloo_strncmp(BgL_stringz00_24,
													BGl_string1847z00zz__biglooz00, 4L))
												{	/* Llib/bigloo.scm 614 */
													{	/* Llib/bigloo.scm 604 */
														obj_t BgL_idz00_1332;

														BgL_idz00_1332 =
															BGl_bigloozd2demanglezd2atze70ze7zz__biglooz00
															(BgL_stringz00_24, BgL_clenz00_1266, BINT(4L));
														{	/* Llib/bigloo.scm 605 */
															obj_t BgL_offsetz00_1333;

															{	/* Llib/bigloo.scm 606 */
																obj_t BgL_tmpz00_2050;

																{	/* Llib/bigloo.scm 606 */
																	int BgL_tmpz00_2775;

																	BgL_tmpz00_2775 = (int) (1L);
																	BgL_tmpz00_2050 =
																		BGL_MVALUES_VAL(BgL_tmpz00_2775);
																}
																{	/* Llib/bigloo.scm 606 */
																	int BgL_tmpz00_2778;

																	BgL_tmpz00_2778 = (int) (1L);
																	BGL_MVALUES_VAL_SET(BgL_tmpz00_2778, BUNSPEC);
																}
																BgL_offsetz00_1333 = BgL_tmpz00_2050;
															}
															{	/* Llib/bigloo.scm 606 */
																obj_t BgL_modulez00_1334;

																BgL_modulez00_1334 =
																	BGl_bigloozd2demanglezd2atze70ze7zz__biglooz00
																	(BgL_stringz00_24, BgL_clenz00_1266,
																	BgL_offsetz00_1333);
																{	/* Llib/bigloo.scm 607 */
																	obj_t BgL_offsetz00_1335;

																	{	/* Llib/bigloo.scm 608 */
																		obj_t BgL_tmpz00_2051;

																		{	/* Llib/bigloo.scm 608 */
																			int BgL_tmpz00_2782;

																			BgL_tmpz00_2782 = (int) (1L);
																			BgL_tmpz00_2051 =
																				BGL_MVALUES_VAL(BgL_tmpz00_2782);
																		}
																		{	/* Llib/bigloo.scm 608 */
																			int BgL_tmpz00_2785;

																			BgL_tmpz00_2785 = (int) (1L);
																			BGL_MVALUES_VAL_SET(BgL_tmpz00_2785,
																				BUNSPEC);
																		}
																		BgL_offsetz00_1335 = BgL_tmpz00_2051;
																	}
																	{	/* Llib/bigloo.scm 608 */
																		int BgL_tmpz00_2788;

																		BgL_tmpz00_2788 = (int) (2L);
																		BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2788);
																	}
																	{	/* Llib/bigloo.scm 608 */
																		int BgL_tmpz00_2791;

																		BgL_tmpz00_2791 = (int) (1L);
																		BGL_MVALUES_VAL_SET(BgL_tmpz00_2791,
																			BgL_modulez00_1334);
																	}
																	return BgL_idz00_1332;
																}
															}
														}
													}
												}
											else
												{	/* Llib/bigloo.scm 614 */
													return BgL_stringz00_24;
												}
										}
								}
						}
					}
				}
			}
		}

	}



/* char->digit~0 */
	long BGl_charzd2ze3digitze70zd6zz__biglooz00(unsigned char BgL_cz00_1277)
	{
		{	/* Llib/bigloo.scm 567 */
			if (isdigit(BgL_cz00_1277))
				{	/* Llib/bigloo.scm 565 */
					return ((BgL_cz00_1277) - 48L);
				}
			else
				{	/* Llib/bigloo.scm 565 */
					return (10L + ((BgL_cz00_1277) - 97L));
				}
		}

	}



/* get-8bits-integer~0 */
	long BGl_getzd28bitszd2integerze70ze7zz__biglooz00(obj_t BgL_stringz00_2384,
		obj_t BgL_rz00_1283)
	{
		{	/* Llib/bigloo.scm 573 */
			{	/* Llib/bigloo.scm 572 */

				return
					(BGl_charzd2ze3digitze70zd6zz__biglooz00(STRING_REF
						(BgL_stringz00_2384,
							((long) CINT(BgL_rz00_1283) + 1L))) +
					(BGl_charzd2ze3digitze70zd6zz__biglooz00(STRING_REF
							(BgL_stringz00_2384,
								((long) CINT(BgL_rz00_1283) + 2L))) << (int) (4L)));
		}}

	}



/* bigloo-demangle-at~0 */
	obj_t BGl_bigloozd2demanglezd2atze70ze7zz__biglooz00(obj_t BgL_stringz00_2386,
		long BgL_clenz00_2385, obj_t BgL_offsetz00_1292)
	{
		{	/* Llib/bigloo.scm 598 */
			{	/* Llib/bigloo.scm 575 */
				obj_t BgL_newz00_1294;

				{	/* Ieee/string.scm 172 */

					BgL_newz00_1294 =
						make_string(BgL_clenz00_2385, ((unsigned char) ' '));
				}
				{
					obj_t BgL_rz00_1296;
					long BgL_wz00_1297;
					long BgL_checksumz00_1298;

					BgL_rz00_1296 = BgL_offsetz00_1292;
					BgL_wz00_1297 = 0L;
					BgL_checksumz00_1298 = 0L;
				BgL_zc3z04anonymousza31354ze3z87_1299:
					if (((long) CINT(BgL_rz00_1296) == BgL_clenz00_2385))
						{	/* Llib/bigloo.scm 579 */
							if (
								(BgL_checksumz00_1298 ==
									BGl_getzd28bitszd2integerze70ze7zz__biglooz00
									(BgL_stringz00_2386, BgL_rz00_1296)))
								{	/* Llib/bigloo.scm 582 */
									obj_t BgL_val0_1087z00_1303;
									long BgL_val1_1088z00_1304;

									BgL_val0_1087z00_1303 =
										c_substring(BgL_newz00_1294, 0L, BgL_wz00_1297);
									BgL_val1_1088z00_1304 = ((long) CINT(BgL_rz00_1296) + 3L);
									{	/* Llib/bigloo.scm 582 */
										int BgL_tmpz00_2822;

										BgL_tmpz00_2822 = (int) (2L);
										BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2822);
									}
									{	/* Llib/bigloo.scm 582 */
										obj_t BgL_auxz00_2827;
										int BgL_tmpz00_2825;

										BgL_auxz00_2827 = BINT(BgL_val1_1088z00_1304);
										BgL_tmpz00_2825 = (int) (1L);
										BGL_MVALUES_VAL_SET(BgL_tmpz00_2825, BgL_auxz00_2827);
									}
									return BgL_val0_1087z00_1303;
								}
							else
								{	/* Llib/bigloo.scm 581 */
									return
										BGl_errorz00zz__errorz00(BGl_string1851z00zz__biglooz00,
										BGl_string1852z00zz__biglooz00, BgL_stringz00_2386);
								}
						}
					else
						{	/* Llib/bigloo.scm 584 */
							unsigned char BgL_cz00_1306;

							BgL_cz00_1306 =
								STRING_REF(BgL_stringz00_2386, (long) CINT(BgL_rz00_1296));
							if ((BgL_cz00_1306 == ((unsigned char) 'z')))
								{	/* Llib/bigloo.scm 585 */
									if (
										(STRING_REF(BgL_stringz00_2386,
												((long) CINT(BgL_rz00_1296) + 1L)) ==
											((unsigned char) 'z')))
										{	/* Llib/bigloo.scm 587 */
											obj_t BgL_val0_1089z00_1311;
											long BgL_val1_1090z00_1312;

											BgL_val0_1089z00_1311 =
												c_substring(BgL_newz00_1294, 0L, (BgL_wz00_1297 - 1L));
											BgL_val1_1090z00_1312 = ((long) CINT(BgL_rz00_1296) + 2L);
											{	/* Llib/bigloo.scm 587 */
												int BgL_tmpz00_2844;

												BgL_tmpz00_2844 = (int) (2L);
												BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2844);
											}
											{	/* Llib/bigloo.scm 587 */
												obj_t BgL_auxz00_2849;
												int BgL_tmpz00_2847;

												BgL_auxz00_2849 = BINT(BgL_val1_1090z00_1312);
												BgL_tmpz00_2847 = (int) (1L);
												BGL_MVALUES_VAL_SET(BgL_tmpz00_2847, BgL_auxz00_2849);
											}
											return BgL_val0_1089z00_1311;
										}
									else
										{	/* Llib/bigloo.scm 588 */
											long BgL_iz00_1314;

											BgL_iz00_1314 =
												BGl_getzd28bitszd2integerze70ze7zz__biglooz00
												(BgL_stringz00_2386, BgL_rz00_1296);
											{	/* Llib/bigloo.scm 588 */
												unsigned char BgL_ncz00_1315;

												BgL_ncz00_1315 = (BgL_iz00_1314);
												{	/* Llib/bigloo.scm 589 */

													STRING_SET(BgL_newz00_1294, BgL_wz00_1297,
														BgL_ncz00_1315);
													{	/* Llib/bigloo.scm 591 */
														long BgL_arg1364z00_1316;
														long BgL_arg1365z00_1317;
														long BgL_arg1366z00_1318;

														BgL_arg1364z00_1316 =
															((long) CINT(BgL_rz00_1296) + 3L);
														BgL_arg1365z00_1317 = (BgL_wz00_1297 + 1L);
														BgL_arg1366z00_1318 =
															(BgL_checksumz00_1298 ^ BgL_iz00_1314);
														{
															long BgL_checksumz00_2862;
															long BgL_wz00_2861;
															obj_t BgL_rz00_2859;

															BgL_rz00_2859 = BINT(BgL_arg1364z00_1316);
															BgL_wz00_2861 = BgL_arg1365z00_1317;
															BgL_checksumz00_2862 = BgL_arg1366z00_1318;
															BgL_checksumz00_1298 = BgL_checksumz00_2862;
															BgL_wz00_1297 = BgL_wz00_2861;
															BgL_rz00_1296 = BgL_rz00_2859;
															goto BgL_zc3z04anonymousza31354ze3z87_1299;
														}
													}
												}
											}
										}
								}
							else
								{	/* Llib/bigloo.scm 585 */
									STRING_SET(BgL_newz00_1294, BgL_wz00_1297, BgL_cz00_1306);
									{	/* Llib/bigloo.scm 596 */
										long BgL_arg1369z00_1321;
										long BgL_arg1370z00_1322;

										BgL_arg1369z00_1321 = ((long) CINT(BgL_rz00_1296) + 1L);
										BgL_arg1370z00_1322 = (BgL_wz00_1297 + 1L);
										{
											long BgL_wz00_2869;
											obj_t BgL_rz00_2867;

											BgL_rz00_2867 = BINT(BgL_arg1369z00_1321);
											BgL_wz00_2869 = BgL_arg1370z00_1322;
											BgL_wz00_1297 = BgL_wz00_2869;
											BgL_rz00_1296 = BgL_rz00_2867;
											goto BgL_zc3z04anonymousza31354ze3z87_1299;
										}
									}
								}
						}
				}
			}
		}

	}



/* &bigloo-demangle */
	obj_t BGl_z62bigloozd2demanglezb0zz__biglooz00(obj_t BgL_envz00_2354,
		obj_t BgL_stringz00_2355)
	{
		{	/* Llib/bigloo.scm 559 */
			{	/* Llib/bigloo.scm 560 */
				obj_t BgL_auxz00_2870;

				if (STRINGP(BgL_stringz00_2355))
					{	/* Llib/bigloo.scm 560 */
						BgL_auxz00_2870 = BgL_stringz00_2355;
					}
				else
					{
						obj_t BgL_auxz00_2873;

						BgL_auxz00_2873 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(21449L), BGl_string1853z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_stringz00_2355);
						FAILURE(BgL_auxz00_2873, BFALSE, BFALSE);
					}
				return bigloo_demangle(BgL_auxz00_2870);
			}
		}

	}



/* bigloo-module-demangle */
	BGL_EXPORTED_DEF obj_t bigloo_module_demangle(obj_t BgL_stringz00_25)
	{
		{	/* Llib/bigloo.scm 622 */
			{	/* Llib/bigloo.scm 623 */
				obj_t BgL_idz00_2057;

				BgL_idz00_2057 = bigloo_demangle(BgL_stringz00_25);
				{	/* Llib/bigloo.scm 624 */
					obj_t BgL_modulez00_2058;

					{	/* Llib/bigloo.scm 625 */
						obj_t BgL_tmpz00_2060;

						{	/* Llib/bigloo.scm 625 */
							int BgL_tmpz00_2879;

							BgL_tmpz00_2879 = (int) (1L);
							BgL_tmpz00_2060 = BGL_MVALUES_VAL(BgL_tmpz00_2879);
						}
						{	/* Llib/bigloo.scm 625 */
							int BgL_tmpz00_2882;

							BgL_tmpz00_2882 = (int) (1L);
							BGL_MVALUES_VAL_SET(BgL_tmpz00_2882, BUNSPEC);
						}
						BgL_modulez00_2058 = BgL_tmpz00_2060;
					}
					if (STRINGP(BgL_modulez00_2058))
						{	/* Llib/bigloo.scm 625 */
							return
								string_append_3(BgL_idz00_2057, BGl_string1854z00zz__biglooz00,
								BgL_modulez00_2058);
						}
					else
						{	/* Llib/bigloo.scm 625 */
							return BgL_idz00_2057;
						}
				}
			}
		}

	}



/* &bigloo-module-demangle */
	obj_t BGl_z62bigloozd2modulezd2demanglez62zz__biglooz00(obj_t BgL_envz00_2356,
		obj_t BgL_stringz00_2357)
	{
		{	/* Llib/bigloo.scm 622 */
			{	/* Llib/bigloo.scm 623 */
				obj_t BgL_auxz00_2888;

				if (STRINGP(BgL_stringz00_2357))
					{	/* Llib/bigloo.scm 623 */
						BgL_auxz00_2888 = BgL_stringz00_2357;
					}
				else
					{
						obj_t BgL_auxz00_2891;

						BgL_auxz00_2891 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(23525L), BGl_string1855z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_stringz00_2357);
						FAILURE(BgL_auxz00_2891, BFALSE, BFALSE);
					}
				return bigloo_module_demangle(BgL_auxz00_2888);
			}
		}

	}



/* bigloo-class-mangled? */
	BGL_EXPORTED_DEF bool_t bigloo_class_mangledp(obj_t BgL_stringz00_26)
	{
		{	/* Llib/bigloo.scm 632 */
			{	/* Llib/bigloo.scm 633 */
				long BgL_lenz00_1347;

				BgL_lenz00_1347 = STRING_LENGTH(BgL_stringz00_26);
				if ((BgL_lenz00_1347 > 8L))
					{	/* Llib/bigloo.scm 634 */
						if (
							(STRING_REF(BgL_stringz00_26,
									(BgL_lenz00_1347 - 1L)) == ((unsigned char) 't')))
							{	/* Llib/bigloo.scm 635 */
								if (
									(STRING_REF(BgL_stringz00_26,
											(BgL_lenz00_1347 - 2L)) == ((unsigned char) 'l')))
									{	/* Llib/bigloo.scm 636 */
										if (
											(STRING_REF(BgL_stringz00_26,
													(BgL_lenz00_1347 - 3L)) == ((unsigned char) 'g')))
											{	/* Llib/bigloo.scm 637 */
												if (
													(STRING_REF(BgL_stringz00_26,
															(BgL_lenz00_1347 - 4L)) == ((unsigned char) 'b')))
													{	/* Llib/bigloo.scm 638 */
														if (
															(STRING_REF(BgL_stringz00_26,
																	(BgL_lenz00_1347 - 5L)) ==
																((unsigned char) '_')))
															{	/* Llib/bigloo.scm 639 */
																BGL_TAIL return
																	bigloo_mangledp(c_substring(BgL_stringz00_26,
																		0L, (BgL_lenz00_1347 - 5L)));
															}
														else
															{	/* Llib/bigloo.scm 639 */
																return ((bool_t) 0);
															}
													}
												else
													{	/* Llib/bigloo.scm 638 */
														return ((bool_t) 0);
													}
											}
										else
											{	/* Llib/bigloo.scm 637 */
												return ((bool_t) 0);
											}
									}
								else
									{	/* Llib/bigloo.scm 636 */
										return ((bool_t) 0);
									}
							}
						else
							{	/* Llib/bigloo.scm 635 */
								return ((bool_t) 0);
							}
					}
				else
					{	/* Llib/bigloo.scm 634 */
						return ((bool_t) 0);
					}
			}
		}

	}



/* &bigloo-class-mangled? */
	obj_t BGl_z62bigloozd2classzd2mangledzf3z91zz__biglooz00(obj_t
		BgL_envz00_2358, obj_t BgL_stringz00_2359)
	{
		{	/* Llib/bigloo.scm 632 */
			{	/* Llib/bigloo.scm 633 */
				bool_t BgL_tmpz00_2922;

				{	/* Llib/bigloo.scm 633 */
					obj_t BgL_auxz00_2923;

					if (STRINGP(BgL_stringz00_2359))
						{	/* Llib/bigloo.scm 633 */
							BgL_auxz00_2923 = BgL_stringz00_2359;
						}
					else
						{
							obj_t BgL_auxz00_2926;

							BgL_auxz00_2926 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(23923L), BGl_string1856z00zz__biglooz00,
								BGl_string1836z00zz__biglooz00, BgL_stringz00_2359);
							FAILURE(BgL_auxz00_2926, BFALSE, BFALSE);
						}
					BgL_tmpz00_2922 = bigloo_class_mangledp(BgL_auxz00_2923);
				}
				return BBOOL(BgL_tmpz00_2922);
			}
		}

	}



/* bigloo-class-demangle */
	BGL_EXPORTED_DEF obj_t bigloo_class_demangle(obj_t BgL_stringz00_27)
	{
		{	/* Llib/bigloo.scm 645 */
			return
				string_append(bigloo_demangle(c_substring(BgL_stringz00_27, 0L,
						(STRING_LENGTH(BgL_stringz00_27) - 5L))),
				BGl_string1857z00zz__biglooz00);
		}

	}



/* &bigloo-class-demangle */
	obj_t BGl_z62bigloozd2classzd2demanglez62zz__biglooz00(obj_t BgL_envz00_2360,
		obj_t BgL_stringz00_2361)
	{
		{	/* Llib/bigloo.scm 645 */
			{	/* Llib/bigloo.scm 647 */
				obj_t BgL_auxz00_2937;

				if (STRINGP(BgL_stringz00_2361))
					{	/* Llib/bigloo.scm 647 */
						BgL_auxz00_2937 = BgL_stringz00_2361;
					}
				else
					{
						obj_t BgL_auxz00_2940;

						BgL_auxz00_2940 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(24615L), BGl_string1858z00zz__biglooz00,
							BGl_string1836z00zz__biglooz00, BgL_stringz00_2361);
						FAILURE(BgL_auxz00_2940, BFALSE, BFALSE);
					}
				return bigloo_class_demangle(BgL_auxz00_2937);
			}
		}

	}



/* bigloo-exit-mutex */
	BGL_EXPORTED_DEF obj_t bgl_exit_mutex(void)
	{
		{	/* Llib/bigloo.scm 658 */
			return BGl_za2exitzd2mutexza2zd2zz__biglooz00;
		}

	}



/* &bigloo-exit-mutex */
	obj_t BGl_z62bigloozd2exitzd2mutexz62zz__biglooz00(obj_t BgL_envz00_2362)
	{
		{	/* Llib/bigloo.scm 658 */
			return bgl_exit_mutex();
		}

	}



/* register-exit-function! */
	BGL_EXPORTED_DEF obj_t BGl_registerzd2exitzd2functionz12z12zz__biglooz00(obj_t
		BgL_funz00_28)
	{
		{	/* Llib/bigloo.scm 669 */
			{	/* Llib/bigloo.scm 670 */
				obj_t BgL_mutex1391z00_1370;

				BgL_mutex1391z00_1370 = BGl_za2exitzd2mutexza2zd2zz__biglooz00;
				{	/* Llib/bigloo.scm 670 */
					obj_t BgL_top2015z00_2947;

					BgL_top2015z00_2947 = BGL_EXITD_TOP_AS_OBJ();
					BGL_MUTEX_LOCK(BgL_mutex1391z00_1370);
					BGL_EXITD_PUSH_PROTECT(BgL_top2015z00_2947, BgL_mutex1391z00_1370);
					BUNSPEC;
					{	/* Llib/bigloo.scm 670 */
						obj_t BgL_tmp2014z00_2946;

						if (PROCEDURE_CORRECT_ARITYP(BgL_funz00_28, (int) (1L)))
							{	/* Llib/bigloo.scm 671 */
								BgL_tmp2014z00_2946 =
									(BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00 =
									MAKE_YOUNG_PAIR(BgL_funz00_28,
										BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00),
									BUNSPEC);
							}
						else
							{	/* Llib/bigloo.scm 671 */
								BgL_tmp2014z00_2946 =
									BGl_errorz00zz__errorz00(BGl_string1859z00zz__biglooz00,
									BGl_string1860z00zz__biglooz00, BgL_funz00_28);
							}
						BGL_EXITD_POP_PROTECT(BgL_top2015z00_2947);
						BUNSPEC;
						BGL_MUTEX_UNLOCK(BgL_mutex1391z00_1370);
						return BgL_tmp2014z00_2946;
					}
				}
			}
		}

	}



/* &register-exit-function! */
	obj_t BGl_z62registerzd2exitzd2functionz12z70zz__biglooz00(obj_t
		BgL_envz00_2363, obj_t BgL_funz00_2364)
	{
		{	/* Llib/bigloo.scm 669 */
			{	/* Llib/bigloo.scm 670 */
				obj_t BgL_auxz00_2958;

				if (PROCEDUREP(BgL_funz00_2364))
					{	/* Llib/bigloo.scm 670 */
						BgL_auxz00_2958 = BgL_funz00_2364;
					}
				else
					{
						obj_t BgL_auxz00_2961;

						BgL_auxz00_2961 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(25720L), BGl_string1861z00zz__biglooz00,
							BGl_string1838z00zz__biglooz00, BgL_funz00_2364);
						FAILURE(BgL_auxz00_2961, BFALSE, BFALSE);
					}
				return
					BGl_registerzd2exitzd2functionz12z12zz__biglooz00(BgL_auxz00_2958);
			}
		}

	}



/* unregister-exit-function! */
	BGL_EXPORTED_DEF obj_t
		BGl_unregisterzd2exitzd2functionz12z12zz__biglooz00(obj_t BgL_funz00_29)
	{
		{	/* Llib/bigloo.scm 680 */
			{	/* Llib/bigloo.scm 681 */
				obj_t BgL_mutex1392z00_2099;

				BgL_mutex1392z00_2099 = BGl_za2exitzd2mutexza2zd2zz__biglooz00;
				{	/* Llib/bigloo.scm 681 */
					obj_t BgL_top2019z00_2967;

					BgL_top2019z00_2967 = BGL_EXITD_TOP_AS_OBJ();
					BGL_MUTEX_LOCK(BgL_mutex1392z00_2099);
					BGL_EXITD_PUSH_PROTECT(BgL_top2019z00_2967, BgL_mutex1392z00_2099);
					BUNSPEC;
					{	/* Llib/bigloo.scm 681 */
						obj_t BgL_tmp2018z00_2966;

						BgL_tmp2018z00_2966 =
							(BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00 =
							bgl_remq_bang(BgL_funz00_29,
								BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00), BUNSPEC);
						BGL_EXITD_POP_PROTECT(BgL_top2019z00_2967);
						BUNSPEC;
						BGL_MUTEX_UNLOCK(BgL_mutex1392z00_2099);
						return BgL_tmp2018z00_2966;
					}
				}
			}
		}

	}



/* &unregister-exit-function! */
	obj_t BGl_z62unregisterzd2exitzd2functionz12z70zz__biglooz00(obj_t
		BgL_envz00_2365, obj_t BgL_funz00_2366)
	{
		{	/* Llib/bigloo.scm 680 */
			{	/* Llib/bigloo.scm 681 */
				obj_t BgL_auxz00_2974;

				if (PROCEDUREP(BgL_funz00_2366))
					{	/* Llib/bigloo.scm 681 */
						BgL_auxz00_2974 = BgL_funz00_2366;
					}
				else
					{
						obj_t BgL_auxz00_2977;

						BgL_auxz00_2977 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(26205L), BGl_string1862z00zz__biglooz00,
							BGl_string1838z00zz__biglooz00, BgL_funz00_2366);
						FAILURE(BgL_auxz00_2977, BFALSE, BFALSE);
					}
				return
					BGl_unregisterzd2exitzd2functionz12z12zz__biglooz00(BgL_auxz00_2974);
			}
		}

	}



/* bigloo-exit-apply */
	BGL_EXPORTED_DEF obj_t bigloo_exit_apply(obj_t BgL_valz00_30)
	{
		{	/* Llib/bigloo.scm 687 */
			{	/* Llib/bigloo.scm 688 */
				obj_t BgL_mutz00_1372;

				if (BGL_MUTEXP(BGl_za2exitzd2mutexza2zd2zz__biglooz00))
					{	/* Llib/bigloo.scm 688 */
						BgL_mutz00_1372 = BGl_za2exitzd2mutexza2zd2zz__biglooz00;
					}
				else
					{	/* Llib/bigloo.scm 688 */
						BgL_mutz00_1372 = bgl_make_mutex(BGl_symbol1829z00zz__biglooz00);
					}
				{	/* Llib/bigloo.scm 691 */
					obj_t BgL_top2023z00_2986;

					BgL_top2023z00_2986 = BGL_EXITD_TOP_AS_OBJ();
					BGL_MUTEX_LOCK(BgL_mutz00_1372);
					BGL_EXITD_PUSH_PROTECT(BgL_top2023z00_2986, BgL_mutz00_1372);
					BUNSPEC;
					{	/* Llib/bigloo.scm 691 */
						obj_t BgL_tmp2022z00_2985;

						{
							obj_t BgL_valz00_1374;

							BgL_valz00_1374 = BgL_valz00_30;
						BgL_zc3z04anonymousza31393ze3z87_1375:
							{	/* Llib/bigloo.scm 693 */
								obj_t BgL_valz00_1376;

								if (BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00
									(BgL_valz00_1374))
									{	/* Llib/bigloo.scm 693 */
										BgL_valz00_1376 = BgL_valz00_1374;
									}
								else
									{	/* Llib/bigloo.scm 693 */
										BgL_valz00_1376 = BINT(0L);
									}
								if (PAIRP(BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00))
									{	/* Llib/bigloo.scm 697 */
										obj_t BgL_funz00_1378;

										BgL_funz00_1378 =
											CAR(BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00);
										BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00 =
											CDR(BGl_za2bigloozd2exitzd2functionsza2z00zz__biglooz00);
										{	/* Llib/bigloo.scm 700 */
											obj_t BgL_nvalz00_1379;

											BgL_nvalz00_1379 =
												BGL_PROCEDURE_CALL1(BgL_funz00_1378, BgL_valz00_1376);
											{	/* Llib/bigloo.scm 701 */
												obj_t BgL_arg1395z00_1380;

												if (BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00
													(BgL_nvalz00_1379))
													{	/* Llib/bigloo.scm 701 */
														BgL_arg1395z00_1380 = BgL_nvalz00_1379;
													}
												else
													{	/* Llib/bigloo.scm 701 */
														BgL_arg1395z00_1380 = BgL_valz00_1376;
													}
												{
													obj_t BgL_valz00_3003;

													BgL_valz00_3003 = BgL_arg1395z00_1380;
													BgL_valz00_1374 = BgL_valz00_3003;
													goto BgL_zc3z04anonymousza31393ze3z87_1375;
												}
											}
										}
									}
								else
									{	/* Llib/bigloo.scm 696 */
										BgL_tmp2022z00_2985 = BgL_valz00_1376;
									}
							}
						}
						BGL_EXITD_POP_PROTECT(BgL_top2023z00_2986);
						BUNSPEC;
						BGL_MUTEX_UNLOCK(BgL_mutz00_1372);
						return BgL_tmp2022z00_2985;
					}
				}
			}
		}

	}



/* &bigloo-exit-apply */
	obj_t BGl_z62bigloozd2exitzd2applyz62zz__biglooz00(obj_t BgL_envz00_2367,
		obj_t BgL_valz00_2368)
	{
		{	/* Llib/bigloo.scm 687 */
			return bigloo_exit_apply(BgL_valz00_2368);
		}

	}



/* time */
	BGL_EXPORTED_DEF obj_t BGl_timez00zz__biglooz00(obj_t BgL_procz00_31)
	{
		{	/* Llib/bigloo.scm 707 */
			if (PROCEDURE_CORRECT_ARITYP(BgL_procz00_31, (int) (0L)))
				{	/* Llib/bigloo.scm 708 */
					return bgl_time(BgL_procz00_31);
				}
			else
				{	/* Llib/bigloo.scm 708 */
					return
						BGl_errorz00zz__errorz00(BGl_symbol1863z00zz__biglooz00,
						BGl_string1860z00zz__biglooz00, BgL_procz00_31);
				}
		}

	}



/* &time */
	obj_t BGl_z62timez62zz__biglooz00(obj_t BgL_envz00_2369,
		obj_t BgL_procz00_2370)
	{
		{	/* Llib/bigloo.scm 707 */
			{	/* Llib/bigloo.scm 708 */
				obj_t BgL_auxz00_3012;

				if (PROCEDUREP(BgL_procz00_2370))
					{	/* Llib/bigloo.scm 708 */
						BgL_auxz00_3012 = BgL_procz00_2370;
					}
				else
					{
						obj_t BgL_auxz00_3015;

						BgL_auxz00_3015 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
							BINT(27276L), BGl_string1865z00zz__biglooz00,
							BGl_string1838z00zz__biglooz00, BgL_procz00_2370);
						FAILURE(BgL_auxz00_3015, BFALSE, BFALSE);
					}
				return BGl_timez00zz__biglooz00(BgL_auxz00_3012);
			}
		}

	}



/* bmem-reset! */
	BGL_EXPORTED_DEF obj_t BGl_bmemzd2resetz12zc0zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 723 */
			BGL_TAIL return bgl_bmem_reset();
		}

	}



/* &bmem-reset! */
	obj_t BGl_z62bmemzd2resetz12za2zz__biglooz00(obj_t BgL_envz00_2371)
	{
		{	/* Llib/bigloo.scm 723 */
			return BGl_bmemzd2resetz12zc0zz__biglooz00();
		}

	}



/* gc-verbose-set! */
	BGL_EXPORTED_DEF obj_t BGl_gczd2verbosezd2setz12z12zz__biglooz00(bool_t
		BgL_boolz00_32)
	{
		{	/* Llib/bigloo.scm 731 */
			bgl_gc_verbose_set(BgL_boolz00_32);
			return BUNSPEC;
		}

	}



/* &gc-verbose-set! */
	obj_t BGl_z62gczd2verbosezd2setz12z70zz__biglooz00(obj_t BgL_envz00_2372,
		obj_t BgL_boolz00_2373)
	{
		{	/* Llib/bigloo.scm 731 */
			return BGl_gczd2verbosezd2setz12z12zz__biglooz00(CBOOL(BgL_boolz00_2373));
		}

	}



/* _gc */
	obj_t BGl__gcz00zz__biglooz00(obj_t BgL_env1110z00_35,
		obj_t BgL_opt1109z00_34)
	{
		{	/* Llib/bigloo.scm 739 */
			{	/* Llib/bigloo.scm 739 */
				long BgL_l1111z00_1387;

				{	/* Llib/bigloo.scm 739 */
					obj_t BgL_vectorz00_2104;

					if (VECTORP(BgL_opt1109z00_34))
						{	/* Llib/bigloo.scm 739 */
							BgL_vectorz00_2104 = BgL_opt1109z00_34;
						}
					else
						{
							obj_t BgL_auxz00_3027;

							BgL_auxz00_3027 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1834z00zz__biglooz00,
								BINT(28626L), BGl_string1866z00zz__biglooz00,
								BGl_string1867z00zz__biglooz00, BgL_opt1109z00_34);
							FAILURE(BgL_auxz00_3027, BFALSE, BFALSE);
						}
					BgL_l1111z00_1387 = VECTOR_LENGTH(BgL_vectorz00_2104);
				}
				{	/* Llib/bigloo.scm 739 */

					{	/* Llib/bigloo.scm 739 */
						obj_t BgL_finaliza7eza7_1391;

						BgL_finaliza7eza7_1391 = BTRUE;
						{	/* Llib/bigloo.scm 739 */

							{
								long BgL_iz00_1392;

								BgL_iz00_1392 = 0L;
							BgL_check1113z00_1393:
								if ((BgL_iz00_1392 == BgL_l1111z00_1387))
									{	/* Llib/bigloo.scm 739 */
										BNIL;
									}
								else
									{	/* Llib/bigloo.scm 739 */
										bool_t BgL_test2031z00_3034;

										{	/* Llib/bigloo.scm 739 */
											obj_t BgL_arg1407z00_1399;

											BgL_arg1407z00_1399 =
												VECTOR_REF(((obj_t) BgL_opt1109z00_34), BgL_iz00_1392);
											BgL_test2031z00_3034 =
												CBOOL(BGl_memqz00zz__r4_pairs_and_lists_6_3z00
												(BgL_arg1407z00_1399, BGl_list1868z00zz__biglooz00));
										}
										if (BgL_test2031z00_3034)
											{
												long BgL_iz00_3039;

												BgL_iz00_3039 = (BgL_iz00_1392 + 2L);
												BgL_iz00_1392 = BgL_iz00_3039;
												goto BgL_check1113z00_1393;
											}
										else
											{	/* Llib/bigloo.scm 739 */
												obj_t BgL_arg1405z00_1398;

												BgL_arg1405z00_1398 =
													VECTOR_REF(
													((obj_t) BgL_opt1109z00_34), BgL_iz00_1392);
												BGl_errorz00zz__errorz00(BGl_symbol1871z00zz__biglooz00,
													BGl_string1873z00zz__biglooz00, BgL_arg1405z00_1398);
											}
									}
							}
							{	/* Llib/bigloo.scm 739 */
								obj_t BgL_index1115z00_1400;

								{
									long BgL_iz00_2120;

									BgL_iz00_2120 = 0L;
								BgL_search1112z00_2119:
									if ((BgL_iz00_2120 == BgL_l1111z00_1387))
										{	/* Llib/bigloo.scm 739 */
											BgL_index1115z00_1400 = BINT((-1L));
										}
									else
										{	/* Llib/bigloo.scm 739 */
											if ((BgL_iz00_2120 == (BgL_l1111z00_1387 - 1L)))
												{	/* Llib/bigloo.scm 739 */
													BgL_index1115z00_1400 =
														BGl_errorz00zz__errorz00
														(BGl_symbol1871z00zz__biglooz00,
														BGl_string1874z00zz__biglooz00,
														BINT(VECTOR_LENGTH(BgL_opt1109z00_34)));
												}
											else
												{	/* Llib/bigloo.scm 739 */
													obj_t BgL_vz00_2130;

													BgL_vz00_2130 =
														VECTOR_REF(BgL_opt1109z00_34, BgL_iz00_2120);
													if (
														(BgL_vz00_2130 == BGl_keyword1869z00zz__biglooz00))
														{	/* Llib/bigloo.scm 739 */
															BgL_index1115z00_1400 =
																BINT((BgL_iz00_2120 + 1L));
														}
													else
														{
															long BgL_iz00_3058;

															BgL_iz00_3058 = (BgL_iz00_2120 + 2L);
															BgL_iz00_2120 = BgL_iz00_3058;
															goto BgL_search1112z00_2119;
														}
												}
										}
								}
								{	/* Llib/bigloo.scm 739 */
									bool_t BgL_test2035z00_3060;

									{	/* Llib/bigloo.scm 739 */
										long BgL_n1z00_2134;

										{	/* Llib/bigloo.scm 739 */
											obj_t BgL_tmpz00_3061;

											if (INTEGERP(BgL_index1115z00_1400))
												{	/* Llib/bigloo.scm 739 */
													BgL_tmpz00_3061 = BgL_index1115z00_1400;
												}
											else
												{
													obj_t BgL_auxz00_3064;

													BgL_auxz00_3064 =
														BGl_typezd2errorzd2zz__errorz00
														(BGl_string1834z00zz__biglooz00, BINT(28626L),
														BGl_string1866z00zz__biglooz00,
														BGl_string1875z00zz__biglooz00,
														BgL_index1115z00_1400);
													FAILURE(BgL_auxz00_3064, BFALSE, BFALSE);
												}
											BgL_n1z00_2134 = (long) CINT(BgL_tmpz00_3061);
										}
										BgL_test2035z00_3060 = (BgL_n1z00_2134 >= 0L);
									}
									if (BgL_test2035z00_3060)
										{
											long BgL_auxz00_3077;
											obj_t BgL_auxz00_3070;

											{	/* Llib/bigloo.scm 739 */
												obj_t BgL_tmpz00_3078;

												if (INTEGERP(BgL_index1115z00_1400))
													{	/* Llib/bigloo.scm 739 */
														BgL_tmpz00_3078 = BgL_index1115z00_1400;
													}
												else
													{
														obj_t BgL_auxz00_3081;

														BgL_auxz00_3081 =
															BGl_typezd2errorzd2zz__errorz00
															(BGl_string1834z00zz__biglooz00, BINT(28626L),
															BGl_string1866z00zz__biglooz00,
															BGl_string1875z00zz__biglooz00,
															BgL_index1115z00_1400);
														FAILURE(BgL_auxz00_3081, BFALSE, BFALSE);
													}
												BgL_auxz00_3077 = (long) CINT(BgL_tmpz00_3078);
											}
											if (VECTORP(BgL_opt1109z00_34))
												{	/* Llib/bigloo.scm 739 */
													BgL_auxz00_3070 = BgL_opt1109z00_34;
												}
											else
												{
													obj_t BgL_auxz00_3073;

													BgL_auxz00_3073 =
														BGl_typezd2errorzd2zz__errorz00
														(BGl_string1834z00zz__biglooz00, BINT(28626L),
														BGl_string1866z00zz__biglooz00,
														BGl_string1867z00zz__biglooz00, BgL_opt1109z00_34);
													FAILURE(BgL_auxz00_3073, BFALSE, BFALSE);
												}
											BgL_finaliza7eza7_1391 =
												VECTOR_REF(BgL_auxz00_3070, BgL_auxz00_3077);
										}
									else
										{	/* Llib/bigloo.scm 739 */
											BFALSE;
										}
								}
							}
							{	/* Llib/bigloo.scm 739 */
								obj_t BgL_finaliza7eza7_1402;

								BgL_finaliza7eza7_1402 = BgL_finaliza7eza7_1391;
								GC_COLLECT();
								BUNSPEC;
								if (CBOOL(BgL_finaliza7eza7_1402))
									{	/* Llib/bigloo.scm 741 */
										GC_invoke_finalizers();
										return BUNSPEC;
									}
								else
									{	/* Llib/bigloo.scm 741 */
										return BFALSE;
									}
							}
						}
					}
				}
			}
		}

	}



/* gc */
	BGL_EXPORTED_DEF obj_t BGl_gcz00zz__biglooz00(obj_t BgL_finaliza7eza7_33)
	{
		{	/* Llib/bigloo.scm 739 */
			GC_COLLECT();
			BUNSPEC;
			if (CBOOL(BgL_finaliza7eza7_33))
				{	/* Llib/bigloo.scm 741 */
					GC_invoke_finalizers();
					return BUNSPEC;
				}
			else
				{	/* Llib/bigloo.scm 741 */
					return BFALSE;
				}
		}

	}



/* gc-finalize */
	BGL_EXPORTED_DEF obj_t BGl_gczd2finaliza7ez75zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 747 */
			GC_invoke_finalizers();
			return BUNSPEC;
		}

	}



/* &gc-finalize */
	obj_t BGl_z62gczd2finaliza7ez17zz__biglooz00(obj_t BgL_envz00_2374)
	{
		{	/* Llib/bigloo.scm 747 */
			return BGl_gczd2finaliza7ez75zz__biglooz00();
		}

	}



/* make-cell */
	BGL_EXPORTED_DEF obj_t BGl_makezd2cellzd2zz__biglooz00(obj_t BgL_valz00_36)
	{
		{	/* Llib/bigloo.scm 755 */
			return MAKE_YOUNG_CELL(BgL_valz00_36);
		}

	}



/* &make-cell */
	obj_t BGl_z62makezd2cellzb0zz__biglooz00(obj_t BgL_envz00_2375,
		obj_t BgL_valz00_2376)
	{
		{	/* Llib/bigloo.scm 755 */
			return BGl_makezd2cellzd2zz__biglooz00(BgL_valz00_2376);
		}

	}



/* cell? */
	BGL_EXPORTED_DEF obj_t BGl_cellzf3zf3zz__biglooz00(obj_t BgL_objz00_37)
	{
		{	/* Llib/bigloo.scm 761 */
			return BBOOL(CELLP(BgL_objz00_37));
		}

	}



/* &cell? */
	obj_t BGl_z62cellzf3z91zz__biglooz00(obj_t BgL_envz00_2377,
		obj_t BgL_objz00_2378)
	{
		{	/* Llib/bigloo.scm 761 */
			return BGl_cellzf3zf3zz__biglooz00(BgL_objz00_2378);
		}

	}



/* cell-ref */
	BGL_EXPORTED_DEF obj_t BGl_cellzd2refzd2zz__biglooz00(obj_t BgL_cellz00_38)
	{
		{	/* Llib/bigloo.scm 767 */
			return CELL_REF(BgL_cellz00_38);
		}

	}



/* &cell-ref */
	obj_t BGl_z62cellzd2refzb0zz__biglooz00(obj_t BgL_envz00_2379,
		obj_t BgL_cellz00_2380)
	{
		{	/* Llib/bigloo.scm 767 */
			return BGl_cellzd2refzd2zz__biglooz00(BgL_cellz00_2380);
		}

	}



/* cell-set! */
	BGL_EXPORTED_DEF obj_t BGl_cellzd2setz12zc0zz__biglooz00(obj_t BgL_cellz00_39,
		obj_t BgL_valz00_40)
	{
		{	/* Llib/bigloo.scm 773 */
			return CELL_SET(BgL_cellz00_39, BgL_valz00_40);
		}

	}



/* &cell-set! */
	obj_t BGl_z62cellzd2setz12za2zz__biglooz00(obj_t BgL_envz00_2381,
		obj_t BgL_cellz00_2382, obj_t BgL_valz00_2383)
	{
		{	/* Llib/bigloo.scm 773 */
			return
				BGl_cellzd2setz12zc0zz__biglooz00(BgL_cellz00_2382, BgL_valz00_2383);
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zz__biglooz00(void)
	{
		{	/* Llib/bigloo.scm 14 */
			BGl_modulezd2initializa7ationz75zz__errorz00(88804785L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
			BGl_modulezd2initializa7ationz75zz__configurez00(35034923L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
			BGl_modulezd2initializa7ationz75zz__paramz00(453939141L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
			BGl_modulezd2initializa7ationz75zz__objectz00(475449627L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
			BGl_modulezd2initializa7ationz75zz__threadz00(149516032L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
			return
				BGl_modulezd2initializa7ationz75zz__bexitz00(443005284L,
				BSTRING_TO_STRING(BGl_string1876z00zz__biglooz00));
		}

	}

#ifdef __cplusplus
}
#endif
