/*===========================================================================*/
/*   (Llib/trace.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/trace.scm -indent -o objs/obj_u/Llib/trace.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___TRACE_TYPE_DEFINITIONS
#define BGL___TRACE_TYPE_DEFINITIONS
#endif													// BGL___TRACE_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_z62tracezd2colorzb0zz__tracez00(obj_t, obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2marginzd2setz12z12zz__tracez00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_z52withzd2tracez80zz__tracez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_requirezd2initializa7ationz75zz__tracez00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t BGl_tracezd2stringzd2zz__tracez00(obj_t);
	extern obj_t bgl_display_obj(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__tracez00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(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_withzd2outputzd2tozd2portzd2zz__r4_ports_6_10_1z00(obj_t,
		obj_t);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2boldzd2zz__tracez00(obj_t);
	static obj_t BGl_z62tracezd2activezf3z43zz__tracez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2portzd2zz__tracez00(void);
	static obj_t BGl_toplevelzd2initzd2zz__tracez00(void);
	extern int bgl_debug(void);
	static obj_t BGl_tracezd2alistzd2zz__tracez00(void);
	static obj_t BGl_z62tracezd2boldzb0zz__tracez00(obj_t, obj_t);
	extern bool_t BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31293ze3ze5zz__tracez00(obj_t);
	extern obj_t BGl_assqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	static obj_t BGl_cnstzd2initzd2zz__tracez00(void);
	static obj_t BGl_genericzd2initzd2zz__tracez00(void);
	static obj_t BGl_z62tracezd2portzb0zz__tracez00(obj_t);
	static obj_t BGl_importedzd2moduleszd2initz00zz__tracez00(void);
	extern obj_t BGl_withzd2outputzd2tozd2stringzd2zz__r4_ports_6_10_1z00(obj_t);
	static obj_t BGl_gczd2rootszd2initz00zz__tracez00(void);
	static obj_t BGl_objectzd2initzd2zz__tracez00(void);
	static obj_t BGl_z62zc3z04anonymousza31215ze3ze5zz__tracez00(obj_t);
	extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	extern obj_t BGl_displayzd2circlezd2zz__pp_circlez00(obj_t, obj_t);
	extern obj_t BGl_bigloozd2tracezd2zz__paramz00(void);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2colorzd2zz__tracez00(int, obj_t);
	extern obj_t BGl_consza2za2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
	extern obj_t BGl_displayza2za2zz__r4_output_6_10_3z00(obj_t);
	static obj_t BGl_z62z52withzd2traceze2zz__tracez00(obj_t, obj_t, obj_t,
		obj_t);
	extern bool_t BGl_bigloozd2tracezd2colorz00zz__paramz00(void);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2portzd2setz12z12zz__tracez00(obj_t);
	extern obj_t bstring_to_symbol(obj_t);
	static obj_t BGl_z62tracezd2portzd2setz12z70zz__tracez00(obj_t, obj_t);
	extern obj_t BGl_writez00zz__r4_output_6_10_3z00(obj_t, obj_t);
	static obj_t BGl_methodzd2initzd2zz__tracez00(void);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2itemzd2zz__tracez00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31235ze3ze5zz__tracez00(obj_t);
	static obj_t BGl_z62tracezd2marginzb0zz__tracez00(obj_t);
	static obj_t BGl_za2tracezd2mutexza2zd2zz__tracez00 = BUNSPEC;
	static obj_t BGl_z62tracezd2marginzd2setz12z70zz__tracez00(obj_t, obj_t);
	static obj_t BGl_symbol1720z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_symbol1722z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_symbol1724z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_symbol1727z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_symbol1729z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_z62zc3z04anonymousza31334ze3ze5zz__tracez00(obj_t);
	static obj_t BGl_z62tracezd2itemzb0zz__tracez00(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2marginzd2zz__tracez00(void);
	extern obj_t string_append(obj_t, obj_t);
	static obj_t BGl_symbol1732z00zz__tracez00 = BUNSPEC;
	static obj_t BGl_z62zc3z04anonymousza31254ze3ze5zz__tracez00(obj_t);
	static obj_t BGl_ttyzd2tracezd2colorz00zz__tracez00(int, obj_t);
	extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31263ze3ze5zz__tracez00(obj_t);
	static obj_t BGl_z62zc3z04anonymousza31336ze3ze5zz__tracez00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_tracezd2activezf3z21zz__tracez00(obj_t);
	static obj_t BGl_z62tracezd2stringzb0zz__tracez00(obj_t, obj_t);
	static obj_t *__cnst;


	   
		 
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2colorzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2color1751z00, va_generic_entry,
		BGl_z62tracezd2colorzb0zz__tracez00, BUNSPEC, -2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_z52withzd2tracezd2envz52zz__tracez00,
		BgL_bgl_za762za752withza7d2tra1752za7,
		BGl_z62z52withzd2traceze2zz__tracez00, 0L, BUNSPEC, 3);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2marginzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2margi1753z00, BGl_z62tracezd2marginzb0zz__tracez00,
		0L, BUNSPEC, 0);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2portzd2setz12zd2envzc0zz__tracez00,
		BgL_bgl_za762traceza7d2portza71754za7,
		BGl_z62tracezd2portzd2setz12z70zz__tracez00, 0L, BUNSPEC, 1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2boldzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2boldza71755za7, va_generic_entry,
		BGl_z62tracezd2boldzb0zz__tracez00, BUNSPEC, -1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2itemzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2itemza71756za7, va_generic_entry,
		BGl_z62tracezd2itemzb0zz__tracez00, BUNSPEC, -1);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2portzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2portza71757za7, BGl_z62tracezd2portzb0zz__tracez00,
		0L, BUNSPEC, 0);
	      BGL_DEFINE_STRING(BGl_string1719z00zz__tracez00,
		BgL_bgl_string1719za700za7za7_1758za7, "trace", 5);
	      BGL_DEFINE_STRING(BGl_string1721z00zz__tracez00,
		BgL_bgl_string1721za700za7za7_1759za7, "port", 4);
	      BGL_DEFINE_STRING(BGl_string1723z00zz__tracez00,
		BgL_bgl_string1723za700za7za7_1760za7, "depth", 5);
	      BGL_DEFINE_STRING(BGl_string1725z00zz__tracez00,
		BgL_bgl_string1725za700za7za7_1761za7, "margin", 6);
	      BGL_DEFINE_STRING(BGl_string1726z00zz__tracez00,
		BgL_bgl_string1726za700za7za7_1762za7, "", 0);
	      BGL_DEFINE_STRING(BGl_string1728z00zz__tracez00,
		BgL_bgl_string1728za700za7za7_1763za7, "margin-level", 12);
	      BGL_DEFINE_STRING(BGl_string1730z00zz__tracez00,
		BgL_bgl_string1730za700za7za7_1764za7, "trace-alist-get", 15);
	      BGL_DEFINE_STRING(BGl_string1731z00zz__tracez00,
		BgL_bgl_string1731za700za7za7_1765za7, "Can't find trace-value", 22);
	      BGL_DEFINE_STRING(BGl_string1733z00zz__tracez00,
		BgL_bgl_string1733za700za7za7_1766za7, "trace-alist-set!", 16);
	      BGL_DEFINE_STRING(BGl_string1734z00zz__tracez00,
		BgL_bgl_string1734za700za7za7_1767za7, "/tmp/bigloo/runtime/Llib/trace.scm",
		34);
	      BGL_DEFINE_STRING(BGl_string1735z00zz__tracez00,
		BgL_bgl_string1735za700za7za7_1768za7, "&trace-port-set!", 16);
	      BGL_DEFINE_STRING(BGl_string1736z00zz__tracez00,
		BgL_bgl_string1736za700za7za7_1769za7, "output-port", 11);
	      BGL_DEFINE_STRING(BGl_string1737z00zz__tracez00,
		BgL_bgl_string1737za700za7za7_1770za7, "&trace-margin-set!", 18);
	      BGL_DEFINE_STRING(BGl_string1738z00zz__tracez00,
		BgL_bgl_string1738za700za7za7_1771za7, "bstring", 7);
	      BGL_DEFINE_STRING(BGl_string1739z00zz__tracez00,
		BgL_bgl_string1739za700za7za7_1772za7, "&trace-color", 12);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2activezf3zd2envzf3zz__tracez00,
		BgL_bgl_za762traceza7d2activ1773z00,
		BGl_z62tracezd2activezf3z43zz__tracez00, 0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1740z00zz__tracez00,
		BgL_bgl_string1740za700za7za7_1774za7, "bint", 4);
	      BGL_DEFINE_STRING(BGl_string1741z00zz__tracez00,
		BgL_bgl_string1741za700za7za7_1775za7, "m", 1);
	      BGL_DEFINE_STRING(BGl_string1742z00zz__tracez00,
		BgL_bgl_string1742za700za7za7_1776za7, "\033[0m\033[1;", 8);
	      BGL_DEFINE_STRING(BGl_string1743z00zz__tracez00,
		BgL_bgl_string1743za700za7za7_1777za7, "\033[0m", 4);
	      BGL_DEFINE_STRING(BGl_string1744z00zz__tracez00,
		BgL_bgl_string1744za700za7za7_1778za7, "- ", 2);
	      BGL_DEFINE_STRING(BGl_string1745z00zz__tracez00,
		BgL_bgl_string1745za700za7za7_1779za7, "  |", 3);
	      BGL_DEFINE_STRING(BGl_string1746z00zz__tracez00,
		BgL_bgl_string1746za700za7za7_1780za7, "&%with-trace", 12);
	      BGL_DEFINE_STRING(BGl_string1747z00zz__tracez00,
		BgL_bgl_string1747za700za7za7_1781za7, "procedure", 9);
	      BGL_DEFINE_STRING(BGl_string1748z00zz__tracez00,
		BgL_bgl_string1748za700za7za7_1782za7, "+ ", 2);
	      BGL_DEFINE_STRING(BGl_string1749z00zz__tracez00,
		BgL_bgl_string1749za700za7za7_1783za7, "--+ ", 4);
	      BGL_DEFINE_STRING(BGl_string1750z00zz__tracez00,
		BgL_bgl_string1750za700za7za7_1784za7, "__trace", 7);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_tracezd2stringzd2envz00zz__tracez00,
		BgL_bgl_za762traceza7d2strin1785z00, BGl_z62tracezd2stringzb0zz__tracez00,
		0L, BUNSPEC, 1);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_tracezd2marginzd2setz12zd2envzc0zz__tracez00,
		BgL_bgl_za762traceza7d2margi1786z00,
		BGl_z62tracezd2marginzd2setz12z70zz__tracez00, 0L, BUNSPEC, 1);

/* contant bindings */
	static void bgl_constant_bindings()
	{
		BGL_BIND_PROCEDURE(BGl_tracezd2marginzd2setz12zd2envzc0zz__tracez00,
			BgL_bgl_za762traceza7d2margi1786z00);
		BGL_BIND_PROCEDURE(BGl_tracezd2stringzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2strin1785z00);
		BGL_BIND_STRING(BGl_string1750z00zz__tracez00,
			BgL_bgl_string1750za700za7za7_1784za7);
		BGL_BIND_STRING(BGl_string1749z00zz__tracez00,
			BgL_bgl_string1749za700za7za7_1783za7);
		BGL_BIND_STRING(BGl_string1748z00zz__tracez00,
			BgL_bgl_string1748za700za7za7_1782za7);
		BGL_BIND_STRING(BGl_string1747z00zz__tracez00,
			BgL_bgl_string1747za700za7za7_1781za7);
		BGL_BIND_STRING(BGl_string1746z00zz__tracez00,
			BgL_bgl_string1746za700za7za7_1780za7);
		BGL_BIND_STRING(BGl_string1745z00zz__tracez00,
			BgL_bgl_string1745za700za7za7_1779za7);
		BGL_BIND_STRING(BGl_string1744z00zz__tracez00,
			BgL_bgl_string1744za700za7za7_1778za7);
		BGL_BIND_STRING(BGl_string1743z00zz__tracez00,
			BgL_bgl_string1743za700za7za7_1777za7);
		BGL_BIND_STRING(BGl_string1742z00zz__tracez00,
			BgL_bgl_string1742za700za7za7_1776za7);
		BGL_BIND_STRING(BGl_string1741z00zz__tracez00,
			BgL_bgl_string1741za700za7za7_1775za7);
		BGL_BIND_STRING(BGl_string1740z00zz__tracez00,
			BgL_bgl_string1740za700za7za7_1774za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2activezf3zd2envzf3zz__tracez00,
			BgL_bgl_za762traceza7d2activ1773z00);
		BGL_BIND_STRING(BGl_string1739z00zz__tracez00,
			BgL_bgl_string1739za700za7za7_1772za7);
		BGL_BIND_STRING(BGl_string1738z00zz__tracez00,
			BgL_bgl_string1738za700za7za7_1771za7);
		BGL_BIND_STRING(BGl_string1737z00zz__tracez00,
			BgL_bgl_string1737za700za7za7_1770za7);
		BGL_BIND_STRING(BGl_string1736z00zz__tracez00,
			BgL_bgl_string1736za700za7za7_1769za7);
		BGL_BIND_STRING(BGl_string1735z00zz__tracez00,
			BgL_bgl_string1735za700za7za7_1768za7);
		BGL_BIND_STRING(BGl_string1734z00zz__tracez00,
			BgL_bgl_string1734za700za7za7_1767za7);
		BGL_BIND_STRING(BGl_string1733z00zz__tracez00,
			BgL_bgl_string1733za700za7za7_1766za7);
		BGL_BIND_STRING(BGl_string1731z00zz__tracez00,
			BgL_bgl_string1731za700za7za7_1765za7);
		BGL_BIND_STRING(BGl_string1730z00zz__tracez00,
			BgL_bgl_string1730za700za7za7_1764za7);
		BGL_BIND_STRING(BGl_string1728z00zz__tracez00,
			BgL_bgl_string1728za700za7za7_1763za7);
		BGL_BIND_STRING(BGl_string1726z00zz__tracez00,
			BgL_bgl_string1726za700za7za7_1762za7);
		BGL_BIND_STRING(BGl_string1725z00zz__tracez00,
			BgL_bgl_string1725za700za7za7_1761za7);
		BGL_BIND_STRING(BGl_string1723z00zz__tracez00,
			BgL_bgl_string1723za700za7za7_1760za7);
		BGL_BIND_STRING(BGl_string1721z00zz__tracez00,
			BgL_bgl_string1721za700za7za7_1759za7);
		BGL_BIND_STRING(BGl_string1719z00zz__tracez00,
			BgL_bgl_string1719za700za7za7_1758za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2portzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2portza71757za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2itemzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2itemza71756za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2boldzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2boldza71755za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2portzd2setz12zd2envzc0zz__tracez00,
			BgL_bgl_za762traceza7d2portza71754za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2marginzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2margi1753z00);
		BGL_BIND_PROCEDURE(BGl_z52withzd2tracezd2envz52zz__tracez00,
			BgL_bgl_za762za752withza7d2tra1752za7);
		BGL_BIND_PROCEDURE(BGl_tracezd2colorzd2envz00zz__tracez00,
			BgL_bgl_za762traceza7d2color1751z00);
	}

/* 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__tracez00));
		ADD_ROOT((void *) (&BGl_za2tracezd2mutexza2zd2zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1720z00zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1722z00zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1724z00zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1727z00zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1729z00zz__tracez00));
		ADD_ROOT((void *) (&BGl_symbol1732z00zz__tracez00));
#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__tracez00(long
		BgL_checksumz00_2120, char *BgL_fromz00_2121)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zz__tracez00))
				{
					BGl_requirezd2initializa7ationz75zz__tracez00 = BBOOL(((bool_t) 0));
					bgl_constant_bindings();
					BGl_gczd2rootszd2initz00zz__tracez00();
					BGl_cnstzd2initzd2zz__tracez00();
					BGl_importedzd2moduleszd2initz00zz__tracez00();
					return BGl_toplevelzd2initzd2zz__tracez00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			BGl_symbol1720z00zz__tracez00 =
				bstring_to_symbol(BGl_string1721z00zz__tracez00);
			BGl_symbol1722z00zz__tracez00 =
				bstring_to_symbol(BGl_string1723z00zz__tracez00);
			BGl_symbol1724z00zz__tracez00 =
				bstring_to_symbol(BGl_string1725z00zz__tracez00);
			BGl_symbol1727z00zz__tracez00 =
				bstring_to_symbol(BGl_string1728z00zz__tracez00);
			BGl_symbol1729z00zz__tracez00 =
				bstring_to_symbol(BGl_string1730z00zz__tracez00);
			return (BGl_symbol1732z00zz__tracez00 =
				bstring_to_symbol(BGl_string1733z00zz__tracez00), BUNSPEC);
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			return (BGl_za2tracezd2mutexza2zd2zz__tracez00 =
				bgl_make_mutex(BGl_string1719z00zz__tracez00), BUNSPEC);
		}

	}



/* trace-alist */
	obj_t BGl_tracezd2alistzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 82 */
			{	/* Llib/trace.scm 83 */
				obj_t BgL_alz00_1118;

				BgL_alz00_1118 = BGL_DEBUG_ALIST_GET();
				if (NULLP(BgL_alz00_1118))
					{	/* Llib/trace.scm 86 */
						obj_t BgL_newzd2alzd2_1120;

						{	/* Llib/trace.scm 86 */
							obj_t BgL_arg1187z00_1121;
							obj_t BgL_arg1189z00_1122;
							obj_t BgL_arg1192z00_1123;
							obj_t BgL_arg1193z00_1124;

							{	/* Llib/trace.scm 86 */
								obj_t BgL_arg1201z00_1129;

								{	/* Llib/trace.scm 86 */
									obj_t BgL_tmpz00_2141;

									BgL_tmpz00_2141 = BGL_CURRENT_DYNAMIC_ENV();
									BgL_arg1201z00_1129 =
										BGL_ENV_CURRENT_ERROR_PORT(BgL_tmpz00_2141);
								}
								BgL_arg1187z00_1121 =
									MAKE_YOUNG_PAIR(BGl_symbol1720z00zz__tracez00,
									BgL_arg1201z00_1129);
							}
							BgL_arg1189z00_1122 =
								MAKE_YOUNG_PAIR(BGl_symbol1722z00zz__tracez00, BINT(0L));
							BgL_arg1192z00_1123 =
								MAKE_YOUNG_PAIR(BGl_symbol1724z00zz__tracez00,
								BGl_string1726z00zz__tracez00);
							BgL_arg1193z00_1124 =
								MAKE_YOUNG_PAIR(BGl_symbol1727z00zz__tracez00, BINT(0L));
							{	/* Llib/trace.scm 86 */
								obj_t BgL_list1194z00_1125;

								{	/* Llib/trace.scm 86 */
									obj_t BgL_arg1195z00_1126;

									{	/* Llib/trace.scm 86 */
										obj_t BgL_arg1196z00_1127;

										{	/* Llib/trace.scm 86 */
											obj_t BgL_arg1197z00_1128;

											BgL_arg1197z00_1128 =
												MAKE_YOUNG_PAIR(BgL_arg1193z00_1124, BNIL);
											BgL_arg1196z00_1127 =
												MAKE_YOUNG_PAIR(BgL_arg1192z00_1123,
												BgL_arg1197z00_1128);
										}
										BgL_arg1195z00_1126 =
											MAKE_YOUNG_PAIR(BgL_arg1189z00_1122, BgL_arg1196z00_1127);
									}
									BgL_list1194z00_1125 =
										MAKE_YOUNG_PAIR(BgL_arg1187z00_1121, BgL_arg1195z00_1126);
								}
								BgL_newzd2alzd2_1120 = BgL_list1194z00_1125;
							}
						}
						BGL_DEBUG_ALIST_SET(BgL_newzd2alzd2_1120);
						BUNSPEC;
						return BgL_newzd2alzd2_1120;
					}
				else
					{	/* Llib/trace.scm 84 */
						return BgL_alz00_1118;
					}
			}
		}

	}



/* trace-port */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2portzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 114 */
			{	/* Llib/trace.scm 115 */
				obj_t BgL_arg1206z00_1666;

				BgL_arg1206z00_1666 = BGl_tracezd2alistzd2zz__tracez00();
				{	/* Llib/trace.scm 115 */
					obj_t BgL_keyz00_1667;

					BgL_keyz00_1667 = BGl_symbol1720z00zz__tracez00;
					{	/* Llib/trace.scm 97 */
						obj_t BgL_cz00_1668;

						BgL_cz00_1668 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1667,
							BgL_arg1206z00_1666);
						if (PAIRP(BgL_cz00_1668))
							{	/* Llib/trace.scm 98 */
								return CDR(BgL_cz00_1668);
							}
						else
							{	/* Llib/trace.scm 98 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1729z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_1667);
							}
					}
				}
			}
		}

	}



/* &trace-port */
	obj_t BGl_z62tracezd2portzb0zz__tracez00(obj_t BgL_envz00_2021)
	{
		{	/* Llib/trace.scm 114 */
			return BGl_tracezd2portzd2zz__tracez00();
		}

	}



/* trace-port-set! */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2portzd2setz12z12zz__tracez00(obj_t
		BgL_pz00_8)
	{
		{	/* Llib/trace.scm 120 */
			{	/* Llib/trace.scm 121 */
				obj_t BgL_arg1207z00_1671;

				BgL_arg1207z00_1671 = BGl_tracezd2alistzd2zz__tracez00();
				{	/* Llib/trace.scm 121 */
					obj_t BgL_keyz00_1672;

					BgL_keyz00_1672 = BGl_symbol1720z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_1673;

						BgL_cz00_1673 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1672,
							BgL_arg1207z00_1671);
						if (PAIRP(BgL_cz00_1673))
							{	/* Llib/trace.scm 107 */
								return SET_CDR(BgL_cz00_1673, BgL_pz00_8);
							}
						else
							{	/* Llib/trace.scm 107 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_1672);
							}
					}
				}
			}
		}

	}



/* &trace-port-set! */
	obj_t BGl_z62tracezd2portzd2setz12z70zz__tracez00(obj_t BgL_envz00_2022,
		obj_t BgL_pz00_2023)
	{
		{	/* Llib/trace.scm 120 */
			{	/* Llib/trace.scm 121 */
				obj_t BgL_auxz00_2168;

				if (OUTPUT_PORTP(BgL_pz00_2023))
					{	/* Llib/trace.scm 121 */
						BgL_auxz00_2168 = BgL_pz00_2023;
					}
				else
					{
						obj_t BgL_auxz00_2171;

						BgL_auxz00_2171 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1734z00zz__tracez00,
							BINT(4543L), BGl_string1735z00zz__tracez00,
							BGl_string1736z00zz__tracez00, BgL_pz00_2023);
						FAILURE(BgL_auxz00_2171, BFALSE, BFALSE);
					}
				return BGl_tracezd2portzd2setz12z12zz__tracez00(BgL_auxz00_2168);
			}
		}

	}



/* trace-margin */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2marginzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 126 */
			{	/* Llib/trace.scm 127 */
				obj_t BgL_arg1208z00_1676;

				BgL_arg1208z00_1676 = BGl_tracezd2alistzd2zz__tracez00();
				{	/* Llib/trace.scm 127 */
					obj_t BgL_keyz00_1677;

					BgL_keyz00_1677 = BGl_symbol1724z00zz__tracez00;
					{	/* Llib/trace.scm 97 */
						obj_t BgL_cz00_1678;

						BgL_cz00_1678 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1677,
							BgL_arg1208z00_1676);
						if (PAIRP(BgL_cz00_1678))
							{	/* Llib/trace.scm 98 */
								return CDR(BgL_cz00_1678);
							}
						else
							{	/* Llib/trace.scm 98 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1729z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_1677);
							}
					}
				}
			}
		}

	}



/* &trace-margin */
	obj_t BGl_z62tracezd2marginzb0zz__tracez00(obj_t BgL_envz00_2024)
	{
		{	/* Llib/trace.scm 126 */
			return BGl_tracezd2marginzd2zz__tracez00();
		}

	}



/* trace-margin-set! */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2marginzd2setz12z12zz__tracez00(obj_t
		BgL_mz00_9)
	{
		{	/* Llib/trace.scm 132 */
			{	/* Llib/trace.scm 133 */
				obj_t BgL_arg1211z00_1681;

				BgL_arg1211z00_1681 = BGl_tracezd2alistzd2zz__tracez00();
				{	/* Llib/trace.scm 133 */
					obj_t BgL_keyz00_1682;

					BgL_keyz00_1682 = BGl_symbol1724z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_1683;

						BgL_cz00_1683 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1682,
							BgL_arg1211z00_1681);
						if (PAIRP(BgL_cz00_1683))
							{	/* Llib/trace.scm 107 */
								return SET_CDR(BgL_cz00_1683, BgL_mz00_9);
							}
						else
							{	/* Llib/trace.scm 107 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_1682);
							}
					}
				}
			}
		}

	}



/* &trace-margin-set! */
	obj_t BGl_z62tracezd2marginzd2setz12z70zz__tracez00(obj_t BgL_envz00_2025,
		obj_t BgL_mz00_2026)
	{
		{	/* Llib/trace.scm 132 */
			{	/* Llib/trace.scm 133 */
				obj_t BgL_auxz00_2189;

				if (STRINGP(BgL_mz00_2026))
					{	/* Llib/trace.scm 133 */
						BgL_auxz00_2189 = BgL_mz00_2026;
					}
				else
					{
						obj_t BgL_auxz00_2192;

						BgL_auxz00_2192 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1734z00zz__tracez00,
							BINT(5131L), BGl_string1737z00zz__tracez00,
							BGl_string1738z00zz__tracez00, BgL_mz00_2026);
						FAILURE(BgL_auxz00_2192, BFALSE, BFALSE);
					}
				return BGl_tracezd2marginzd2setz12z12zz__tracez00(BgL_auxz00_2189);
			}
		}

	}



/* trace-color */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2colorzd2zz__tracez00(int BgL_colz00_10,
		obj_t BgL_oz00_11)
	{
		{	/* Llib/trace.scm 138 */
			{	/* Llib/trace.scm 140 */
				obj_t BgL_arg1213z00_1138;

				if (BGl_bigloozd2tracezd2colorz00zz__paramz00())
					{	/* Llib/trace.scm 141 */
						obj_t BgL_zc3z04anonymousza31215ze3z87_2027;

						BgL_zc3z04anonymousza31215ze3z87_2027 =
							MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31215ze3ze5zz__tracez00,
							(int) (0L), (int) (2L));
						PROCEDURE_SET(BgL_zc3z04anonymousza31215ze3z87_2027,
							(int) (0L), BINT(BgL_colz00_10));
						PROCEDURE_SET(BgL_zc3z04anonymousza31215ze3z87_2027,
							(int) (1L), BgL_oz00_11);
						BgL_arg1213z00_1138 = BgL_zc3z04anonymousza31215ze3z87_2027;
					}
				else
					{	/* Llib/trace.scm 145 */
						obj_t BgL_zc3z04anonymousza31235ze3z87_2028;

						BgL_zc3z04anonymousza31235ze3z87_2028 =
							MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31235ze3ze5zz__tracez00,
							(int) (0L), (int) (1L));
						PROCEDURE_SET(BgL_zc3z04anonymousza31235ze3z87_2028,
							(int) (0L), BgL_oz00_11);
						BgL_arg1213z00_1138 = BgL_zc3z04anonymousza31235ze3z87_2028;
					}
				return
					BGl_withzd2outputzd2tozd2stringzd2zz__r4_ports_6_10_1z00
					(BgL_arg1213z00_1138);
			}
		}

	}



/* &trace-color */
	obj_t BGl_z62tracezd2colorzb0zz__tracez00(obj_t BgL_envz00_2029,
		obj_t BgL_colz00_2030, obj_t BgL_oz00_2031)
	{
		{	/* Llib/trace.scm 138 */
			{	/* Llib/trace.scm 140 */
				int BgL_auxz00_2213;

				{	/* Llib/trace.scm 140 */
					obj_t BgL_tmpz00_2214;

					if (INTEGERP(BgL_colz00_2030))
						{	/* Llib/trace.scm 140 */
							BgL_tmpz00_2214 = BgL_colz00_2030;
						}
					else
						{
							obj_t BgL_auxz00_2217;

							BgL_auxz00_2217 =
								BGl_typezd2errorzd2zz__errorz00(BGl_string1734z00zz__tracez00,
								BINT(5447L), BGl_string1739z00zz__tracez00,
								BGl_string1740z00zz__tracez00, BgL_colz00_2030);
							FAILURE(BgL_auxz00_2217, BFALSE, BFALSE);
						}
					BgL_auxz00_2213 = CINT(BgL_tmpz00_2214);
				}
				return BGl_tracezd2colorzd2zz__tracez00(BgL_auxz00_2213, BgL_oz00_2031);
			}
		}

	}



/* &<@anonymous:1215> */
	obj_t BGl_z62zc3z04anonymousza31215ze3ze5zz__tracez00(obj_t BgL_envz00_2032)
	{
		{	/* Llib/trace.scm 141 */
			{	/* Llib/trace.scm 142 */
				int BgL_colz00_2033;
				obj_t BgL_oz00_2034;

				BgL_colz00_2033 = CINT(PROCEDURE_REF(BgL_envz00_2032, (int) (0L)));
				BgL_oz00_2034 = PROCEDURE_REF(BgL_envz00_2032, (int) (1L));
				{	/* Llib/trace.scm 142 */
					long BgL_arg1216z00_2083;

					BgL_arg1216z00_2083 = (31L + (long) (BgL_colz00_2033));
					{	/* Llib/trace.scm 142 */
						obj_t BgL_list1217z00_2084;

						{	/* Llib/trace.scm 142 */
							obj_t BgL_arg1219z00_2085;

							{	/* Llib/trace.scm 142 */
								obj_t BgL_arg1224z00_2086;

								BgL_arg1224z00_2086 =
									MAKE_YOUNG_PAIR(BGl_string1741z00zz__tracez00, BNIL);
								BgL_arg1219z00_2085 =
									MAKE_YOUNG_PAIR(BINT(BgL_arg1216z00_2083),
									BgL_arg1224z00_2086);
							}
							BgL_list1217z00_2084 =
								MAKE_YOUNG_PAIR(BGl_string1742z00zz__tracez00,
								BgL_arg1219z00_2085);
						}
						BGl_displayza2za2zz__r4_output_6_10_3z00(BgL_list1217z00_2084);
				}}
				{
					obj_t BgL_l1077z00_2088;

					BgL_l1077z00_2088 = BgL_oz00_2034;
				BgL_zc3z04anonymousza31225ze3z87_2087:
					if (PAIRP(BgL_l1077z00_2088))
						{	/* Llib/trace.scm 143 */
							{	/* Llib/trace.scm 143 */
								obj_t BgL_arg1230z00_2089;

								BgL_arg1230z00_2089 = CAR(BgL_l1077z00_2088);
								{	/* Llib/trace.scm 143 */
									obj_t BgL_portz00_2090;

									{	/* Llib/trace.scm 143 */
										obj_t BgL_tmpz00_2238;

										BgL_tmpz00_2238 = BGL_CURRENT_DYNAMIC_ENV();
										BgL_portz00_2090 =
											BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2238);
									}
									{	/* Llib/trace.scm 143 */

										BGl_displayzd2circlezd2zz__pp_circlez00(BgL_arg1230z00_2089,
											BgL_portz00_2090);
									}
								}
							}
							{
								obj_t BgL_l1077z00_2242;

								BgL_l1077z00_2242 = CDR(BgL_l1077z00_2088);
								BgL_l1077z00_2088 = BgL_l1077z00_2242;
								goto BgL_zc3z04anonymousza31225ze3z87_2087;
							}
						}
					else
						{	/* Llib/trace.scm 143 */
							((bool_t) 1);
						}
				}
				{	/* Llib/trace.scm 144 */
					obj_t BgL_arg1234z00_2091;

					{	/* Llib/trace.scm 144 */
						obj_t BgL_tmpz00_2244;

						BgL_tmpz00_2244 = BGL_CURRENT_DYNAMIC_ENV();
						BgL_arg1234z00_2091 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2244);
					}
					return
						bgl_display_string(BGl_string1743z00zz__tracez00,
						BgL_arg1234z00_2091);
				}
			}
		}

	}



/* &<@anonymous:1235> */
	obj_t BGl_z62zc3z04anonymousza31235ze3ze5zz__tracez00(obj_t BgL_envz00_2035)
	{
		{	/* Llib/trace.scm 145 */
			{	/* Llib/trace.scm 146 */
				obj_t BgL_oz00_2036;

				BgL_oz00_2036 = PROCEDURE_REF(BgL_envz00_2035, (int) (0L));
				{	/* Llib/trace.scm 146 */
					bool_t BgL_tmpz00_2250;

					{
						obj_t BgL_l1079z00_2093;

						BgL_l1079z00_2093 = BgL_oz00_2036;
					BgL_zc3z04anonymousza31236ze3z87_2092:
						if (PAIRP(BgL_l1079z00_2093))
							{	/* Llib/trace.scm 146 */
								{	/* Llib/trace.scm 146 */
									obj_t BgL_arg1239z00_2094;

									BgL_arg1239z00_2094 = CAR(BgL_l1079z00_2093);
									{	/* Llib/trace.scm 146 */
										obj_t BgL_portz00_2095;

										{	/* Llib/trace.scm 146 */
											obj_t BgL_tmpz00_2254;

											BgL_tmpz00_2254 = BGL_CURRENT_DYNAMIC_ENV();
											BgL_portz00_2095 =
												BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2254);
										}
										{	/* Llib/trace.scm 146 */

											BGl_displayzd2circlezd2zz__pp_circlez00
												(BgL_arg1239z00_2094, BgL_portz00_2095);
										}
									}
								}
								{
									obj_t BgL_l1079z00_2258;

									BgL_l1079z00_2258 = CDR(BgL_l1079z00_2093);
									BgL_l1079z00_2093 = BgL_l1079z00_2258;
									goto BgL_zc3z04anonymousza31236ze3z87_2092;
								}
							}
						else
							{	/* Llib/trace.scm 146 */
								BgL_tmpz00_2250 = ((bool_t) 1);
							}
					}
					return BBOOL(BgL_tmpz00_2250);
				}
			}
		}

	}



/* trace-bold */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2boldzd2zz__tracez00(obj_t BgL_oz00_12)
	{
		{	/* Llib/trace.scm 151 */
			{	/* Llib/trace.scm 152 */
				obj_t BgL_runner1244z00_1696;

				{	/* Llib/trace.scm 152 */
					obj_t BgL_list1242z00_1697;

					BgL_list1242z00_1697 = MAKE_YOUNG_PAIR(BgL_oz00_12, BNIL);
					BgL_runner1244z00_1696 =
						BGl_consza2za2zz__r4_pairs_and_lists_6_3z00(BINT((-30L)),
						BgL_list1242z00_1697);
				}
				{	/* Llib/trace.scm 152 */
					int BgL_aux1243z00_1698;

					{	/* Llib/trace.scm 152 */
						obj_t BgL_pairz00_1699;

						BgL_pairz00_1699 = BgL_runner1244z00_1696;
						BgL_aux1243z00_1698 = CINT(CAR(BgL_pairz00_1699));
					}
					BgL_runner1244z00_1696 = CDR(BgL_runner1244z00_1696);
					return
						BGl_tracezd2colorzd2zz__tracez00(BgL_aux1243z00_1698,
						BgL_runner1244z00_1696);
				}
			}
		}

	}



/* &trace-bold */
	obj_t BGl_z62tracezd2boldzb0zz__tracez00(obj_t BgL_envz00_2037,
		obj_t BgL_oz00_2038)
	{
		{	/* Llib/trace.scm 151 */
			return BGl_tracezd2boldzd2zz__tracez00(BgL_oz00_2038);
		}

	}



/* tty-trace-color */
	obj_t BGl_ttyzd2tracezd2colorz00zz__tracez00(int BgL_colz00_13,
		obj_t BgL_oz00_14)
	{
		{	/* Llib/trace.scm 157 */
			{	/* Llib/trace.scm 158 */
				bool_t BgL_test1799z00_2269;

				{	/* Llib/trace.scm 158 */
					obj_t BgL_arg1261z00_1185;

					{	/* Llib/trace.scm 158 */
						obj_t BgL_res1709z00_1706;

						{	/* Llib/trace.scm 115 */
							obj_t BgL_arg1206z00_1701;

							BgL_arg1206z00_1701 = BGl_tracezd2alistzd2zz__tracez00();
							{	/* Llib/trace.scm 115 */
								obj_t BgL_keyz00_1702;

								BgL_keyz00_1702 = BGl_symbol1720z00zz__tracez00;
								{	/* Llib/trace.scm 97 */
									obj_t BgL_cz00_1703;

									BgL_cz00_1703 =
										BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1702,
										BgL_arg1206z00_1701);
									if (PAIRP(BgL_cz00_1703))
										{	/* Llib/trace.scm 98 */
											BgL_res1709z00_1706 = CDR(BgL_cz00_1703);
										}
									else
										{	/* Llib/trace.scm 98 */
											BgL_res1709z00_1706 =
												BGl_errorz00zz__errorz00(BGl_symbol1729z00zz__tracez00,
												BGl_string1731z00zz__tracez00, BgL_keyz00_1702);
										}
								}
							}
						}
						BgL_arg1261z00_1185 = BgL_res1709z00_1706;
					}
					BgL_test1799z00_2269 = bgl_port_isatty(BgL_arg1261z00_1185);
				}
				if (BgL_test1799z00_2269)
					{	/* Llib/trace.scm 159 */
						obj_t BgL_runner1252z00_1172;

						{	/* Llib/trace.scm 159 */
							obj_t BgL_list1250z00_1170;

							BgL_list1250z00_1170 = MAKE_YOUNG_PAIR(BgL_oz00_14, BNIL);
							BgL_runner1252z00_1172 =
								BGl_consza2za2zz__r4_pairs_and_lists_6_3z00(BINT(BgL_colz00_13),
								BgL_list1250z00_1170);
						}
						{	/* Llib/trace.scm 159 */
							int BgL_aux1251z00_1171;

							{	/* Llib/trace.scm 159 */
								obj_t BgL_pairz00_1708;

								BgL_pairz00_1708 = BgL_runner1252z00_1172;
								BgL_aux1251z00_1171 = CINT(CAR(BgL_pairz00_1708));
							}
							BgL_runner1252z00_1172 = CDR(BgL_runner1252z00_1172);
							BGL_TAIL return
								BGl_tracezd2colorzd2zz__tracez00(BgL_aux1251z00_1171,
								BgL_runner1252z00_1172);
						}
					}
				else
					{	/* Llib/trace.scm 162 */
						obj_t BgL_zc3z04anonymousza31254ze3z87_2039;

						BgL_zc3z04anonymousza31254ze3z87_2039 =
							MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31254ze3ze5zz__tracez00,
							(int) (0L), (int) (1L));
						PROCEDURE_SET(BgL_zc3z04anonymousza31254ze3z87_2039,
							(int) (0L), BgL_oz00_14);
						return
							BGl_withzd2outputzd2tozd2stringzd2zz__r4_ports_6_10_1z00
							(BgL_zc3z04anonymousza31254ze3z87_2039);
					}
			}
		}

	}



/* &<@anonymous:1254> */
	obj_t BGl_z62zc3z04anonymousza31254ze3ze5zz__tracez00(obj_t BgL_envz00_2040)
	{
		{	/* Llib/trace.scm 161 */
			{	/* Llib/trace.scm 162 */
				obj_t BgL_oz00_2041;

				BgL_oz00_2041 = PROCEDURE_REF(BgL_envz00_2040, (int) (0L));
				{	/* Llib/trace.scm 162 */
					bool_t BgL_tmpz00_2292;

					{
						obj_t BgL_l1081z00_2097;

						BgL_l1081z00_2097 = BgL_oz00_2041;
					BgL_zc3z04anonymousza31255ze3z87_2096:
						if (PAIRP(BgL_l1081z00_2097))
							{	/* Llib/trace.scm 162 */
								{	/* Llib/trace.scm 162 */
									obj_t BgL_arg1258z00_2098;

									BgL_arg1258z00_2098 = CAR(BgL_l1081z00_2097);
									{	/* Llib/trace.scm 162 */
										obj_t BgL_portz00_2099;

										{	/* Llib/trace.scm 162 */
											obj_t BgL_tmpz00_2296;

											BgL_tmpz00_2296 = BGL_CURRENT_DYNAMIC_ENV();
											BgL_portz00_2099 =
												BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2296);
										}
										{	/* Llib/trace.scm 162 */

											BGl_displayzd2circlezd2zz__pp_circlez00
												(BgL_arg1258z00_2098, BgL_portz00_2099);
										}
									}
								}
								{
									obj_t BgL_l1081z00_2300;

									BgL_l1081z00_2300 = CDR(BgL_l1081z00_2097);
									BgL_l1081z00_2097 = BgL_l1081z00_2300;
									goto BgL_zc3z04anonymousza31255ze3z87_2096;
								}
							}
						else
							{	/* Llib/trace.scm 162 */
								BgL_tmpz00_2292 = ((bool_t) 1);
							}
					}
					return BBOOL(BgL_tmpz00_2292);
				}
			}
		}

	}



/* trace-string */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2stringzd2zz__tracez00(obj_t BgL_oz00_15)
	{
		{	/* Llib/trace.scm 167 */
			{	/* Llib/trace.scm 170 */
				obj_t BgL_zc3z04anonymousza31263ze3z87_2042;

				BgL_zc3z04anonymousza31263ze3z87_2042 =
					MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31263ze3ze5zz__tracez00,
					(int) (0L), (int) (1L));
				PROCEDURE_SET(BgL_zc3z04anonymousza31263ze3z87_2042,
					(int) (0L), BgL_oz00_15);
				return
					BGl_withzd2outputzd2tozd2stringzd2zz__r4_ports_6_10_1z00
					(BgL_zc3z04anonymousza31263ze3z87_2042);
			}
		}

	}



/* &trace-string */
	obj_t BGl_z62tracezd2stringzb0zz__tracez00(obj_t BgL_envz00_2043,
		obj_t BgL_oz00_2044)
	{
		{	/* Llib/trace.scm 167 */
			return BGl_tracezd2stringzd2zz__tracez00(BgL_oz00_2044);
		}

	}



/* &<@anonymous:1263> */
	obj_t BGl_z62zc3z04anonymousza31263ze3ze5zz__tracez00(obj_t BgL_envz00_2045)
	{
		{	/* Llib/trace.scm 169 */
			return
				BGl_writez00zz__r4_output_6_10_3z00(PROCEDURE_REF(BgL_envz00_2045,
					(int) (0L)), BNIL);
		}

	}



/* trace-item */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2itemzd2zz__tracez00(obj_t BgL_argsz00_16)
	{
		{	/* Llib/trace.scm 175 */
			{	/* Llib/trace.scm 176 */
				bool_t BgL_test1802z00_2313;

				{	/* Llib/trace.scm 176 */
					int BgL_arg1283z00_1210;

					BgL_arg1283z00_1210 = bgl_debug();
					BgL_test1802z00_2313 = ((long) (BgL_arg1283z00_1210) > 0L);
				}
				if (BgL_test1802z00_2313)
					{	/* Llib/trace.scm 177 */
						obj_t BgL_alz00_1192;

						BgL_alz00_1192 = BGl_tracezd2alistzd2zz__tracez00();
						{	/* Llib/trace.scm 178 */
							bool_t BgL_test1803z00_2318;

							{	/* Llib/trace.scm 178 */
								obj_t BgL_arg1282z00_1209;

								{	/* Llib/trace.scm 178 */
									obj_t BgL_keyz00_1717;

									BgL_keyz00_1717 = BGl_symbol1727z00zz__tracez00;
									{	/* Llib/trace.scm 97 */
										obj_t BgL_cz00_1718;

										BgL_cz00_1718 =
											BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1717,
											BgL_alz00_1192);
										if (PAIRP(BgL_cz00_1718))
											{	/* Llib/trace.scm 98 */
												BgL_arg1282z00_1209 = CDR(BgL_cz00_1718);
											}
										else
											{	/* Llib/trace.scm 98 */
												BgL_arg1282z00_1209 =
													BGl_errorz00zz__errorz00
													(BGl_symbol1729z00zz__tracez00,
													BGl_string1731z00zz__tracez00, BgL_keyz00_1717);
											}
									}
								}
								BgL_test1803z00_2318 =
									CBOOL(BGl_tracezd2activezf3z21zz__tracez00
									(BgL_arg1282z00_1209));
							}
							if (BgL_test1803z00_2318)
								{	/* Llib/trace.scm 179 */
									obj_t BgL_pz00_1195;

									{	/* Llib/trace.scm 179 */
										obj_t BgL_res1710z00_1726;

										{	/* Llib/trace.scm 115 */
											obj_t BgL_arg1206z00_1721;

											BgL_arg1206z00_1721 = BGl_tracezd2alistzd2zz__tracez00();
											{	/* Llib/trace.scm 115 */
												obj_t BgL_keyz00_1722;

												BgL_keyz00_1722 = BGl_symbol1720z00zz__tracez00;
												{	/* Llib/trace.scm 97 */
													obj_t BgL_cz00_1723;

													BgL_cz00_1723 =
														BGl_assqz00zz__r4_pairs_and_lists_6_3z00
														(BgL_keyz00_1722, BgL_arg1206z00_1721);
													if (PAIRP(BgL_cz00_1723))
														{	/* Llib/trace.scm 98 */
															BgL_res1710z00_1726 = CDR(BgL_cz00_1723);
														}
													else
														{	/* Llib/trace.scm 98 */
															BgL_res1710z00_1726 =
																BGl_errorz00zz__errorz00
																(BGl_symbol1729z00zz__tracez00,
																BGl_string1731z00zz__tracez00, BgL_keyz00_1722);
														}
												}
											}
										}
										BgL_pz00_1195 = BgL_res1710z00_1726;
									}
									{	/* Llib/trace.scm 180 */
										obj_t BgL_mutex1269z00_1196;

										BgL_mutex1269z00_1196 =
											BGl_za2tracezd2mutexza2zd2zz__tracez00;
										{	/* Llib/trace.scm 180 */
											obj_t BgL_top1807z00_2333;

											BgL_top1807z00_2333 = BGL_EXITD_TOP_AS_OBJ();
											BGL_MUTEX_LOCK(BgL_mutex1269z00_1196);
											BGL_EXITD_PUSH_PROTECT(BgL_top1807z00_2333,
												BgL_mutex1269z00_1196);
											BUNSPEC;
											{	/* Llib/trace.scm 180 */
												obj_t BgL_tmp1806z00_2332;

												{	/* Llib/trace.scm 181 */
													obj_t BgL_arg1271z00_1197;

													{	/* Llib/trace.scm 181 */
														obj_t BgL_keyz00_1727;

														BgL_keyz00_1727 = BGl_symbol1724z00zz__tracez00;
														{	/* Llib/trace.scm 97 */
															obj_t BgL_cz00_1728;

															BgL_cz00_1728 =
																BGl_assqz00zz__r4_pairs_and_lists_6_3z00
																(BgL_keyz00_1727, BgL_alz00_1192);
															if (PAIRP(BgL_cz00_1728))
																{	/* Llib/trace.scm 98 */
																	BgL_arg1271z00_1197 = CDR(BgL_cz00_1728);
																}
															else
																{	/* Llib/trace.scm 98 */
																	BgL_arg1271z00_1197 =
																		BGl_errorz00zz__errorz00
																		(BGl_symbol1729z00zz__tracez00,
																		BGl_string1731z00zz__tracez00,
																		BgL_keyz00_1727);
																}
														}
													}
													bgl_display_obj(BgL_arg1271z00_1197, BgL_pz00_1195);
												}
												{	/* Llib/trace.scm 182 */
													obj_t BgL_arg1274z00_1198;

													{	/* Llib/trace.scm 182 */
														long BgL_arg1276z00_1199;

														{	/* Llib/trace.scm 182 */
															obj_t BgL_arg1278z00_1201;

															{	/* Llib/trace.scm 182 */
																obj_t BgL_keyz00_1731;

																BgL_keyz00_1731 = BGl_symbol1722z00zz__tracez00;
																{	/* Llib/trace.scm 97 */
																	obj_t BgL_cz00_1732;

																	BgL_cz00_1732 =
																		BGl_assqz00zz__r4_pairs_and_lists_6_3z00
																		(BgL_keyz00_1731, BgL_alz00_1192);
																	if (PAIRP(BgL_cz00_1732))
																		{	/* Llib/trace.scm 98 */
																			BgL_arg1278z00_1201 = CDR(BgL_cz00_1732);
																		}
																	else
																		{	/* Llib/trace.scm 98 */
																			BgL_arg1278z00_1201 =
																				BGl_errorz00zz__errorz00
																				(BGl_symbol1729z00zz__tracez00,
																				BGl_string1731z00zz__tracez00,
																				BgL_keyz00_1731);
																		}
																}
															}
															BgL_arg1276z00_1199 =
																((long) CINT(BgL_arg1278z00_1201) - 1L);
														}
														{	/* Llib/trace.scm 182 */
															obj_t BgL_list1277z00_1200;

															BgL_list1277z00_1200 =
																MAKE_YOUNG_PAIR(BGl_string1744z00zz__tracez00,
																BNIL);
															BgL_arg1274z00_1198 =
																BGl_ttyzd2tracezd2colorz00zz__tracez00((int)
																(BgL_arg1276z00_1199), BgL_list1277z00_1200);
													}}
													bgl_display_obj(BgL_arg1274z00_1198, BgL_pz00_1195);
												}
												{
													obj_t BgL_l1084z00_1747;

													BgL_l1084z00_1747 = BgL_argsz00_16;
												BgL_zc3z04anonymousza31279ze3z87_1746:
													if (PAIRP(BgL_l1084z00_1747))
														{	/* Llib/trace.scm 183 */
															BGl_displayzd2circlezd2zz__pp_circlez00(CAR
																(BgL_l1084z00_1747), BgL_pz00_1195);
															{
																obj_t BgL_l1084z00_2358;

																BgL_l1084z00_2358 = CDR(BgL_l1084z00_1747);
																BgL_l1084z00_1747 = BgL_l1084z00_2358;
																goto BgL_zc3z04anonymousza31279ze3z87_1746;
															}
														}
													else
														{	/* Llib/trace.scm 183 */
															((bool_t) 1);
														}
												}
												bgl_display_char(((unsigned char) 10), BgL_pz00_1195);
												BgL_tmp1806z00_2332 =
													bgl_flush_output_port(BgL_pz00_1195);
												BGL_EXITD_POP_PROTECT(BgL_top1807z00_2333);
												BUNSPEC;
												BGL_MUTEX_UNLOCK(BgL_mutex1269z00_1196);
												return BgL_tmp1806z00_2332;
											}
										}
									}
								}
							else
								{	/* Llib/trace.scm 178 */
									return BFALSE;
								}
						}
					}
				else
					{	/* Llib/trace.scm 176 */
						return BFALSE;
					}
			}
		}

	}



/* &trace-item */
	obj_t BGl_z62tracezd2itemzb0zz__tracez00(obj_t BgL_envz00_2047,
		obj_t BgL_argsz00_2048)
	{
		{	/* Llib/trace.scm 175 */
			return BGl_tracezd2itemzd2zz__tracez00(BgL_argsz00_2048);
		}

	}



/* trace-active? */
	BGL_EXPORTED_DEF obj_t BGl_tracezd2activezf3z21zz__tracez00(obj_t
		BgL_lvlz00_17)
	{
		{	/* Llib/trace.scm 190 */
			if (BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00(BgL_lvlz00_17))
				{	/* Llib/trace.scm 192 */
					int BgL_arg1285z00_1212;

					BgL_arg1285z00_1212 = bgl_debug();
					return
						BBOOL(((long) (BgL_arg1285z00_1212) >= (long) CINT(BgL_lvlz00_17)));
				}
			else
				{	/* Llib/trace.scm 192 */
					if (SYMBOLP(BgL_lvlz00_17))
						{	/* Llib/trace.scm 193 */
							return
								BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_lvlz00_17,
								BGl_bigloozd2tracezd2zz__paramz00());
						}
					else
						{	/* Llib/trace.scm 193 */
							return BFALSE;
						}
				}
		}

	}



/* &trace-active? */
	obj_t BGl_z62tracezd2activezf3z43zz__tracez00(obj_t BgL_envz00_2049,
		obj_t BgL_lvlz00_2050)
	{
		{	/* Llib/trace.scm 190 */
			return BGl_tracezd2activezf3z21zz__tracez00(BgL_lvlz00_2050);
		}

	}



/* %with-trace */
	BGL_EXPORTED_DEF obj_t BGl_z52withzd2tracez80zz__tracez00(obj_t BgL_lvlz00_18,
		obj_t BgL_lblz00_19, obj_t BgL_thunkz00_20)
	{
		{	/* Llib/trace.scm 198 */
			{	/* Llib/trace.scm 199 */
				obj_t BgL_alz00_1215;

				BgL_alz00_1215 = BGl_tracezd2alistzd2zz__tracez00();
				{	/* Llib/trace.scm 199 */
					obj_t BgL_olz00_1216;

					{	/* Llib/trace.scm 200 */
						obj_t BgL_keyz00_1760;

						BgL_keyz00_1760 = BGl_symbol1727z00zz__tracez00;
						{	/* Llib/trace.scm 97 */
							obj_t BgL_cz00_1761;

							BgL_cz00_1761 =
								BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1760,
								BgL_alz00_1215);
							if (PAIRP(BgL_cz00_1761))
								{	/* Llib/trace.scm 98 */
									BgL_olz00_1216 = CDR(BgL_cz00_1761);
								}
							else
								{	/* Llib/trace.scm 98 */
									BgL_olz00_1216 =
										BGl_errorz00zz__errorz00(BGl_symbol1729z00zz__tracez00,
										BGl_string1731z00zz__tracez00, BgL_keyz00_1760);
								}
						}
					}
					{	/* Llib/trace.scm 200 */

						{	/* Llib/trace.scm 201 */
							obj_t BgL_keyz00_1764;

							BgL_keyz00_1764 = BGl_symbol1727z00zz__tracez00;
							{	/* Llib/trace.scm 106 */
								obj_t BgL_cz00_1765;

								BgL_cz00_1765 =
									BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1764,
									BgL_alz00_1215);
								if (PAIRP(BgL_cz00_1765))
									{	/* Llib/trace.scm 107 */
										SET_CDR(BgL_cz00_1765, BgL_lvlz00_18);
									}
								else
									{	/* Llib/trace.scm 107 */
										BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
											BGl_string1731z00zz__tracez00, BgL_keyz00_1764);
									}
							}
						}
						if (CBOOL(BGl_tracezd2activezf3z21zz__tracez00(BgL_lvlz00_18)))
							{	/* Llib/trace.scm 203 */
								obj_t BgL_dz00_1218;

								{	/* Llib/trace.scm 203 */
									obj_t BgL_keyz00_1768;

									BgL_keyz00_1768 = BGl_symbol1722z00zz__tracez00;
									{	/* Llib/trace.scm 97 */
										obj_t BgL_cz00_1769;

										BgL_cz00_1769 =
											BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_1768,
											BgL_alz00_1215);
										if (PAIRP(BgL_cz00_1769))
											{	/* Llib/trace.scm 98 */
												BgL_dz00_1218 = CDR(BgL_cz00_1769);
											}
										else
											{	/* Llib/trace.scm 98 */
												BgL_dz00_1218 =
													BGl_errorz00zz__errorz00
													(BGl_symbol1729z00zz__tracez00,
													BGl_string1731z00zz__tracez00, BgL_keyz00_1768);
											}
									}
								}
								{	/* Llib/trace.scm 203 */
									obj_t BgL_omz00_1219;

									{	/* Llib/trace.scm 204 */
										obj_t BgL_keyz00_1772;

										BgL_keyz00_1772 = BGl_symbol1724z00zz__tracez00;
										{	/* Llib/trace.scm 97 */
											obj_t BgL_cz00_1773;

											BgL_cz00_1773 =
												BGl_assqz00zz__r4_pairs_and_lists_6_3z00
												(BgL_keyz00_1772, BgL_alz00_1215);
											if (PAIRP(BgL_cz00_1773))
												{	/* Llib/trace.scm 98 */
													BgL_omz00_1219 = CDR(BgL_cz00_1773);
												}
											else
												{	/* Llib/trace.scm 98 */
													BgL_omz00_1219 =
														BGl_errorz00zz__errorz00
														(BGl_symbol1729z00zz__tracez00,
														BGl_string1731z00zz__tracez00, BgL_keyz00_1772);
												}
										}
									}
									{	/* Llib/trace.scm 204 */
										obj_t BgL_maz00_1220;

										{	/* Llib/trace.scm 205 */
											obj_t BgL_list1335z00_1244;

											BgL_list1335z00_1244 =
												MAKE_YOUNG_PAIR(BGl_string1745z00zz__tracez00, BNIL);
											BgL_maz00_1220 =
												BGl_ttyzd2tracezd2colorz00zz__tracez00(CINT
												(BgL_dz00_1218), BgL_list1335z00_1244);
										}
										{	/* Llib/trace.scm 205 */

											{	/* Llib/trace.scm 206 */
												obj_t BgL_mutex1289z00_1221;

												BgL_mutex1289z00_1221 =
													BGl_za2tracezd2mutexza2zd2zz__tracez00;
												{	/* Llib/trace.scm 206 */
													obj_t BgL_top1819z00_2405;

													BgL_top1819z00_2405 = BGL_EXITD_TOP_AS_OBJ();
													BGL_MUTEX_LOCK(BgL_mutex1289z00_1221);
													BGL_EXITD_PUSH_PROTECT(BgL_top1819z00_2405,
														BgL_mutex1289z00_1221);
													BUNSPEC;
													{	/* Llib/trace.scm 206 */
														obj_t BgL_tmp1818z00_2404;

														{	/* Llib/trace.scm 207 */
															obj_t BgL_arg1291z00_1222;

															{	/* Llib/trace.scm 207 */
																obj_t BgL_res1711z00_1781;

																{	/* Llib/trace.scm 115 */
																	obj_t BgL_arg1206z00_1776;

																	BgL_arg1206z00_1776 =
																		BGl_tracezd2alistzd2zz__tracez00();
																	{	/* Llib/trace.scm 115 */
																		obj_t BgL_keyz00_1777;

																		BgL_keyz00_1777 =
																			BGl_symbol1720z00zz__tracez00;
																		{	/* Llib/trace.scm 97 */
																			obj_t BgL_cz00_1778;

																			BgL_cz00_1778 =
																				BGl_assqz00zz__r4_pairs_and_lists_6_3z00
																				(BgL_keyz00_1777, BgL_arg1206z00_1776);
																			if (PAIRP(BgL_cz00_1778))
																				{	/* Llib/trace.scm 98 */
																					BgL_res1711z00_1781 =
																						CDR(BgL_cz00_1778);
																				}
																			else
																				{	/* Llib/trace.scm 98 */
																					BgL_res1711z00_1781 =
																						BGl_errorz00zz__errorz00
																						(BGl_symbol1729z00zz__tracez00,
																						BGl_string1731z00zz__tracez00,
																						BgL_keyz00_1777);
																				}
																		}
																	}
																}
																BgL_arg1291z00_1222 = BgL_res1711z00_1781;
															}
															{	/* Llib/trace.scm 209 */
																obj_t BgL_zc3z04anonymousza31293ze3z87_2052;

																BgL_zc3z04anonymousza31293ze3z87_2052 =
																	MAKE_FX_PROCEDURE
																	(BGl_z62zc3z04anonymousza31293ze3ze5zz__tracez00,
																	(int) (0L), (int) (3L));
																PROCEDURE_SET
																	(BgL_zc3z04anonymousza31293ze3z87_2052,
																	(int) (0L), BgL_alz00_1215);
																PROCEDURE_SET
																	(BgL_zc3z04anonymousza31293ze3z87_2052,
																	(int) (1L), BgL_lblz00_19);
																PROCEDURE_SET
																	(BgL_zc3z04anonymousza31293ze3z87_2052,
																	(int) (2L), BgL_dz00_1218);
																BgL_tmp1818z00_2404 =
																	BGl_withzd2outputzd2tozd2portzd2zz__r4_ports_6_10_1z00
																	(BgL_arg1291z00_1222,
																	BgL_zc3z04anonymousza31293ze3z87_2052);
														}}
														BGL_EXITD_POP_PROTECT(BgL_top1819z00_2405);
														BUNSPEC;
														BGL_MUTEX_UNLOCK(BgL_mutex1289z00_1221);
														BgL_tmp1818z00_2404;
											}}}
											{	/* Llib/trace.scm 215 */
												long BgL_arg1332z00_1237;

												BgL_arg1332z00_1237 = ((long) CINT(BgL_dz00_1218) + 1L);
												{	/* Llib/trace.scm 215 */
													obj_t BgL_keyz00_1794;

													BgL_keyz00_1794 = BGl_symbol1722z00zz__tracez00;
													{	/* Llib/trace.scm 106 */
														obj_t BgL_cz00_1795;

														BgL_cz00_1795 =
															BGl_assqz00zz__r4_pairs_and_lists_6_3z00
															(BgL_keyz00_1794, BgL_alz00_1215);
														if (PAIRP(BgL_cz00_1795))
															{	/* Llib/trace.scm 108 */
																obj_t BgL_tmpz00_2432;

																BgL_tmpz00_2432 = BINT(BgL_arg1332z00_1237);
																SET_CDR(BgL_cz00_1795, BgL_tmpz00_2432);
															}
														else
															{	/* Llib/trace.scm 107 */
																BGl_errorz00zz__errorz00
																	(BGl_symbol1732z00zz__tracez00,
																	BGl_string1731z00zz__tracez00,
																	BgL_keyz00_1794);
															}
													}
												}
											}
											{	/* Llib/trace.scm 216 */
												obj_t BgL_arg1333z00_1238;

												BgL_arg1333z00_1238 =
													string_append(BgL_omz00_1219, BgL_maz00_1220);
												{	/* Llib/trace.scm 216 */
													obj_t BgL_keyz00_1798;

													BgL_keyz00_1798 = BGl_symbol1724z00zz__tracez00;
													{	/* Llib/trace.scm 106 */
														obj_t BgL_cz00_1799;

														BgL_cz00_1799 =
															BGl_assqz00zz__r4_pairs_and_lists_6_3z00
															(BgL_keyz00_1798, BgL_alz00_1215);
														if (PAIRP(BgL_cz00_1799))
															{	/* Llib/trace.scm 107 */
																SET_CDR(BgL_cz00_1799, BgL_arg1333z00_1238);
															}
														else
															{	/* Llib/trace.scm 107 */
																BGl_errorz00zz__errorz00
																	(BGl_symbol1732z00zz__tracez00,
																	BGl_string1731z00zz__tracez00,
																	BgL_keyz00_1798);
															}
													}
												}
											}
											{	/* Llib/trace.scm 217 */
												obj_t BgL_exitd1039z00_1239;

												BgL_exitd1039z00_1239 = BGL_EXITD_TOP_AS_OBJ();
												{	/* Llib/trace.scm 220 */
													obj_t BgL_zc3z04anonymousza31334ze3z87_2051;

													BgL_zc3z04anonymousza31334ze3z87_2051 =
														MAKE_FX_PROCEDURE
														(BGl_z62zc3z04anonymousza31334ze3ze5zz__tracez00,
														(int) (0L), (int) (4L));
													PROCEDURE_SET(BgL_zc3z04anonymousza31334ze3z87_2051,
														(int) (0L), BgL_alz00_1215);
													PROCEDURE_SET(BgL_zc3z04anonymousza31334ze3z87_2051,
														(int) (1L), BgL_dz00_1218);
													PROCEDURE_SET(BgL_zc3z04anonymousza31334ze3z87_2051,
														(int) (2L), BgL_omz00_1219);
													PROCEDURE_SET(BgL_zc3z04anonymousza31334ze3z87_2051,
														(int) (3L), BgL_olz00_1216);
													{	/* Llib/trace.scm 217 */
														obj_t BgL_arg1706z00_1814;

														{	/* Llib/trace.scm 217 */
															obj_t BgL_arg1707z00_1815;

															BgL_arg1707z00_1815 =
																BGL_EXITD_PROTECT(BgL_exitd1039z00_1239);
															BgL_arg1706z00_1814 =
																MAKE_YOUNG_PAIR
																(BgL_zc3z04anonymousza31334ze3z87_2051,
																BgL_arg1707z00_1815);
														}
														BGL_EXITD_PROTECT_SET(BgL_exitd1039z00_1239,
															BgL_arg1706z00_1814);
														BUNSPEC;
													}
													{	/* Llib/trace.scm 218 */
														obj_t BgL_tmp1041z00_1241;

														BgL_tmp1041z00_1241 =
															BGL_PROCEDURE_CALL0(BgL_thunkz00_20);
														{	/* Llib/trace.scm 217 */
															bool_t BgL_test1823z00_2460;

															{	/* Llib/trace.scm 217 */
																obj_t BgL_arg1705z00_1817;

																BgL_arg1705z00_1817 =
																	BGL_EXITD_PROTECT(BgL_exitd1039z00_1239);
																BgL_test1823z00_2460 =
																	PAIRP(BgL_arg1705z00_1817);
															}
															if (BgL_test1823z00_2460)
																{	/* Llib/trace.scm 217 */
																	obj_t BgL_arg1702z00_1818;

																	{	/* Llib/trace.scm 217 */
																		obj_t BgL_arg1703z00_1819;

																		BgL_arg1703z00_1819 =
																			BGL_EXITD_PROTECT(BgL_exitd1039z00_1239);
																		BgL_arg1702z00_1818 =
																			CDR(((obj_t) BgL_arg1703z00_1819));
																	}
																	BGL_EXITD_PROTECT_SET(BgL_exitd1039z00_1239,
																		BgL_arg1702z00_1818);
																	BUNSPEC;
																}
															else
																{	/* Llib/trace.scm 217 */
																	BFALSE;
																}
														}
														BGl_z62zc3z04anonymousza31334ze3ze5zz__tracez00
															(BgL_zc3z04anonymousza31334ze3z87_2051);
														return BgL_tmp1041z00_1241;
													}
												}
											}
										}
									}
								}
							}
						else
							{	/* Llib/trace.scm 223 */
								obj_t BgL_exitd1043z00_1245;

								BgL_exitd1043z00_1245 = BGL_EXITD_TOP_AS_OBJ();
								{	/* Llib/trace.scm 225 */
									obj_t BgL_zc3z04anonymousza31336ze3z87_2053;

									BgL_zc3z04anonymousza31336ze3z87_2053 =
										MAKE_FX_PROCEDURE
										(BGl_z62zc3z04anonymousza31336ze3ze5zz__tracez00,
										(int) (0L), (int) (2L));
									PROCEDURE_SET(BgL_zc3z04anonymousza31336ze3z87_2053,
										(int) (0L), BgL_alz00_1215);
									PROCEDURE_SET(BgL_zc3z04anonymousza31336ze3z87_2053,
										(int) (1L), BgL_olz00_1216);
									{	/* Llib/trace.scm 223 */
										obj_t BgL_arg1706z00_1825;

										{	/* Llib/trace.scm 223 */
											obj_t BgL_arg1707z00_1826;

											BgL_arg1707z00_1826 =
												BGL_EXITD_PROTECT(BgL_exitd1043z00_1245);
											BgL_arg1706z00_1825 =
												MAKE_YOUNG_PAIR(BgL_zc3z04anonymousza31336ze3z87_2053,
												BgL_arg1707z00_1826);
										}
										BGL_EXITD_PROTECT_SET(BgL_exitd1043z00_1245,
											BgL_arg1706z00_1825);
										BUNSPEC;
									}
									{	/* Llib/trace.scm 224 */
										obj_t BgL_tmp1045z00_1247;

										BgL_tmp1045z00_1247 = BGL_PROCEDURE_CALL0(BgL_thunkz00_20);
										{	/* Llib/trace.scm 223 */
											bool_t BgL_test1824z00_2482;

											{	/* Llib/trace.scm 223 */
												obj_t BgL_arg1705z00_1828;

												BgL_arg1705z00_1828 =
													BGL_EXITD_PROTECT(BgL_exitd1043z00_1245);
												BgL_test1824z00_2482 = PAIRP(BgL_arg1705z00_1828);
											}
											if (BgL_test1824z00_2482)
												{	/* Llib/trace.scm 223 */
													obj_t BgL_arg1702z00_1829;

													{	/* Llib/trace.scm 223 */
														obj_t BgL_arg1703z00_1830;

														BgL_arg1703z00_1830 =
															BGL_EXITD_PROTECT(BgL_exitd1043z00_1245);
														BgL_arg1702z00_1829 =
															CDR(((obj_t) BgL_arg1703z00_1830));
													}
													BGL_EXITD_PROTECT_SET(BgL_exitd1043z00_1245,
														BgL_arg1702z00_1829);
													BUNSPEC;
												}
											else
												{	/* Llib/trace.scm 223 */
													BFALSE;
												}
										}
										{	/* Llib/trace.scm 225 */
											obj_t BgL_keyz00_1832;

											BgL_keyz00_1832 = BGl_symbol1727z00zz__tracez00;
											{	/* Llib/trace.scm 106 */
												obj_t BgL_cz00_1833;

												BgL_cz00_1833 =
													BGl_assqz00zz__r4_pairs_and_lists_6_3z00
													(BgL_keyz00_1832, BgL_alz00_1215);
												if (PAIRP(BgL_cz00_1833))
													{	/* Llib/trace.scm 107 */
														SET_CDR(BgL_cz00_1833, BgL_olz00_1216);
													}
												else
													{	/* Llib/trace.scm 107 */
														BGl_errorz00zz__errorz00
															(BGl_symbol1732z00zz__tracez00,
															BGl_string1731z00zz__tracez00, BgL_keyz00_1832);
													}
											}
										}
										return BgL_tmp1045z00_1247;
									}
								}
							}
					}
				}
			}
		}

	}



/* &%with-trace */
	obj_t BGl_z62z52withzd2traceze2zz__tracez00(obj_t BgL_envz00_2054,
		obj_t BgL_lvlz00_2055, obj_t BgL_lblz00_2056, obj_t BgL_thunkz00_2057)
	{
		{	/* Llib/trace.scm 198 */
			{	/* Llib/trace.scm 199 */
				obj_t BgL_auxz00_2494;

				if (PROCEDUREP(BgL_thunkz00_2057))
					{	/* Llib/trace.scm 199 */
						BgL_auxz00_2494 = BgL_thunkz00_2057;
					}
				else
					{
						obj_t BgL_auxz00_2497;

						BgL_auxz00_2497 =
							BGl_typezd2errorzd2zz__errorz00(BGl_string1734z00zz__tracez00,
							BINT(7925L), BGl_string1746z00zz__tracez00,
							BGl_string1747z00zz__tracez00, BgL_thunkz00_2057);
						FAILURE(BgL_auxz00_2497, BFALSE, BFALSE);
					}
				return
					BGl_z52withzd2tracez80zz__tracez00(BgL_lvlz00_2055, BgL_lblz00_2056,
					BgL_auxz00_2494);
			}
		}

	}



/* &<@anonymous:1334> */
	obj_t BGl_z62zc3z04anonymousza31334ze3ze5zz__tracez00(obj_t BgL_envz00_2058)
	{
		{	/* Llib/trace.scm 217 */
			{	/* Llib/trace.scm 220 */
				obj_t BgL_alz00_2059;
				obj_t BgL_dz00_2060;
				obj_t BgL_omz00_2061;
				obj_t BgL_olz00_2062;

				BgL_alz00_2059 = ((obj_t) PROCEDURE_REF(BgL_envz00_2058, (int) (0L)));
				BgL_dz00_2060 = PROCEDURE_REF(BgL_envz00_2058, (int) (1L));
				BgL_omz00_2061 = PROCEDURE_REF(BgL_envz00_2058, (int) (2L));
				BgL_olz00_2062 = PROCEDURE_REF(BgL_envz00_2058, (int) (3L));
				{	/* Llib/trace.scm 220 */
					obj_t BgL_keyz00_2100;

					BgL_keyz00_2100 = BGl_symbol1722z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_2101;

						BgL_cz00_2101 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_2100,
							BgL_alz00_2059);
						if (PAIRP(BgL_cz00_2101))
							{	/* Llib/trace.scm 107 */
								SET_CDR(BgL_cz00_2101, BgL_dz00_2060);
							}
						else
							{	/* Llib/trace.scm 107 */
								BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_2100);
							}
					}
				}
				{	/* Llib/trace.scm 221 */
					obj_t BgL_keyz00_2102;

					BgL_keyz00_2102 = BGl_symbol1724z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_2103;

						BgL_cz00_2103 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_2102,
							BgL_alz00_2059);
						if (PAIRP(BgL_cz00_2103))
							{	/* Llib/trace.scm 107 */
								SET_CDR(BgL_cz00_2103, BgL_omz00_2061);
							}
						else
							{	/* Llib/trace.scm 107 */
								BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_2102);
							}
					}
				}
				{	/* Llib/trace.scm 222 */
					obj_t BgL_keyz00_2104;

					BgL_keyz00_2104 = BGl_symbol1727z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_2105;

						BgL_cz00_2105 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_2104,
							BgL_alz00_2059);
						if (PAIRP(BgL_cz00_2105))
							{	/* Llib/trace.scm 107 */
								return SET_CDR(BgL_cz00_2105, BgL_olz00_2062);
							}
						else
							{	/* Llib/trace.scm 107 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_2104);
							}
					}
				}
			}
		}

	}



/* &<@anonymous:1293> */
	obj_t BGl_z62zc3z04anonymousza31293ze3ze5zz__tracez00(obj_t BgL_envz00_2063)
	{
		{	/* Llib/trace.scm 208 */
			{	/* Llib/trace.scm 209 */
				obj_t BgL_alz00_2064;
				obj_t BgL_lblz00_2065;
				obj_t BgL_dz00_2066;

				BgL_alz00_2064 = ((obj_t) PROCEDURE_REF(BgL_envz00_2063, (int) (0L)));
				BgL_lblz00_2065 = PROCEDURE_REF(BgL_envz00_2063, (int) (1L));
				BgL_dz00_2066 = PROCEDURE_REF(BgL_envz00_2063, (int) (2L));
				{	/* Llib/trace.scm 209 */
					obj_t BgL_arg1295z00_2106;
					obj_t BgL_arg1296z00_2107;

					{	/* Llib/trace.scm 209 */
						obj_t BgL_keyz00_2108;

						BgL_keyz00_2108 = BGl_symbol1724z00zz__tracez00;
						{	/* Llib/trace.scm 97 */
							obj_t BgL_cz00_2109;

							BgL_cz00_2109 =
								BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_2108,
								BgL_alz00_2064);
							if (PAIRP(BgL_cz00_2109))
								{	/* Llib/trace.scm 98 */
									BgL_arg1295z00_2106 = CDR(BgL_cz00_2109);
								}
							else
								{	/* Llib/trace.scm 98 */
									BgL_arg1295z00_2106 =
										BGl_errorz00zz__errorz00(BGl_symbol1729z00zz__tracez00,
										BGl_string1731z00zz__tracez00, BgL_keyz00_2108);
								}
						}
					}
					{	/* Llib/trace.scm 209 */
						obj_t BgL_tmpz00_2538;

						BgL_tmpz00_2538 = BGL_CURRENT_DYNAMIC_ENV();
						BgL_arg1296z00_2107 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2538);
					}
					bgl_display_obj(BgL_arg1295z00_2106, BgL_arg1296z00_2107);
				}
				{	/* Llib/trace.scm 210 */
					obj_t BgL_arg1298z00_2110;
					obj_t BgL_arg1301z00_2111;

					if (((long) CINT(BgL_dz00_2066) == 0L))
						{	/* Llib/trace.scm 211 */
							obj_t BgL_list1303z00_2112;

							{	/* Llib/trace.scm 211 */
								obj_t BgL_arg1322z00_2113;

								BgL_arg1322z00_2113 = MAKE_YOUNG_PAIR(BgL_lblz00_2065, BNIL);
								BgL_list1303z00_2112 =
									MAKE_YOUNG_PAIR(BGl_string1748z00zz__tracez00,
									BgL_arg1322z00_2113);
							}
							BgL_arg1298z00_2110 =
								BGl_ttyzd2tracezd2colorz00zz__tracez00(CINT(BgL_dz00_2066),
								BgL_list1303z00_2112);
						}
					else
						{	/* Llib/trace.scm 212 */
							obj_t BgL_list1323z00_2114;

							{	/* Llib/trace.scm 212 */
								obj_t BgL_arg1329z00_2115;

								BgL_arg1329z00_2115 = MAKE_YOUNG_PAIR(BgL_lblz00_2065, BNIL);
								BgL_list1323z00_2114 =
									MAKE_YOUNG_PAIR(BGl_string1749z00zz__tracez00,
									BgL_arg1329z00_2115);
							}
							BgL_arg1298z00_2110 =
								BGl_ttyzd2tracezd2colorz00zz__tracez00(CINT(BgL_dz00_2066),
								BgL_list1323z00_2114);
						}
					{	/* Llib/trace.scm 210 */
						obj_t BgL_tmpz00_2553;

						BgL_tmpz00_2553 = BGL_CURRENT_DYNAMIC_ENV();
						BgL_arg1301z00_2111 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2553);
					}
					bgl_display_obj(BgL_arg1298z00_2110, BgL_arg1301z00_2111);
				}
				{	/* Llib/trace.scm 213 */
					obj_t BgL_arg1330z00_2116;

					{	/* Llib/trace.scm 213 */
						obj_t BgL_tmpz00_2557;

						BgL_tmpz00_2557 = BGL_CURRENT_DYNAMIC_ENV();
						BgL_arg1330z00_2116 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2557);
					}
					bgl_display_char(((unsigned char) 10), BgL_arg1330z00_2116);
				}
				{	/* Llib/trace.scm 214 */
					obj_t BgL_arg1331z00_2117;

					{	/* Llib/trace.scm 214 */
						obj_t BgL_tmpz00_2561;

						BgL_tmpz00_2561 = BGL_CURRENT_DYNAMIC_ENV();
						BgL_arg1331z00_2117 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2561);
					}
					return bgl_flush_output_port(BgL_arg1331z00_2117);
				}
			}
		}

	}



/* &<@anonymous:1336> */
	obj_t BGl_z62zc3z04anonymousza31336ze3ze5zz__tracez00(obj_t BgL_envz00_2067)
	{
		{	/* Llib/trace.scm 223 */
			{	/* Llib/trace.scm 225 */
				obj_t BgL_alz00_2068;
				obj_t BgL_olz00_2069;

				BgL_alz00_2068 = ((obj_t) PROCEDURE_REF(BgL_envz00_2067, (int) (0L)));
				BgL_olz00_2069 = PROCEDURE_REF(BgL_envz00_2067, (int) (1L));
				{	/* Llib/trace.scm 225 */
					obj_t BgL_keyz00_2118;

					BgL_keyz00_2118 = BGl_symbol1727z00zz__tracez00;
					{	/* Llib/trace.scm 106 */
						obj_t BgL_cz00_2119;

						BgL_cz00_2119 =
							BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_keyz00_2118,
							BgL_alz00_2068);
						if (PAIRP(BgL_cz00_2119))
							{	/* Llib/trace.scm 107 */
								return SET_CDR(BgL_cz00_2119, BgL_olz00_2069);
							}
						else
							{	/* Llib/trace.scm 107 */
								return
									BGl_errorz00zz__errorz00(BGl_symbol1732z00zz__tracez00,
									BGl_string1731z00zz__tracez00, BgL_keyz00_2118);
							}
					}
				}
			}
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zz__tracez00(void)
	{
		{	/* Llib/trace.scm 15 */
			BGl_modulezd2initializa7ationz75zz__paramz00(453939141L,
				BSTRING_TO_STRING(BGl_string1750z00zz__tracez00));
			BGl_modulezd2initializa7ationz75zz__objectz00(475449627L,
				BSTRING_TO_STRING(BGl_string1750z00zz__tracez00));
			BGl_modulezd2initializa7ationz75zz__threadz00(149516032L,
				BSTRING_TO_STRING(BGl_string1750z00zz__tracez00));
			return
				BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(86988580L,
				BSTRING_TO_STRING(BGl_string1750z00zz__tracez00));
		}

	}

#ifdef __cplusplus
}
#endif
