/*===========================================================================*/
/*   (Rgc/rgctree.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 Rgc/rgctree.scm -indent -o objs/obj_u/Rgc/rgctree.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___RGC_TREE_TYPE_DEFINITIONS
#define BGL___RGC_TREE_TYPE_DEFINITIONS
#endif													// BGL___RGC_TREE_TYPE_DEFINITIONS
#endif													// BGL_MODULE_TYPE_DEFINITIONS

	static obj_t BGl_symbol1757z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_za2positionzd2numberza2zd2zz__rgc_treez00 = BUNSPEC;
	BGL_EXPORTED_DECL obj_t BGl_printzd2nodezd2zz__rgc_treez00(obj_t);
	static obj_t BGl_symbol1761z00zz__rgc_treez00 = BUNSPEC;
	static long BGl_regularzd2treezd2positionzd2numberzd2zz__rgc_treez00(obj_t);
	static obj_t BGl_symbol1764z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1766z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_z62or2zd2ze3nodez53zz__rgc_treez00(obj_t, obj_t, obj_t);
	static obj_t BGl_symbol1769z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_requirezd2initializa7ationz75zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_orzd2ze3nodez31zz__rgc_treez00(obj_t);
	extern obj_t BGl_forzd2eachzd2rgcsetz00zz__rgc_setz00(obj_t, obj_t);
	static obj_t BGl_treezd2ze3nodez31zz__rgc_treez00(obj_t);
	static obj_t BGl_z62resetzd2treez12za2zz__rgc_treez00(obj_t);
	static obj_t BGl_initzd2followposz12zc0zz__rgc_treez00(void);
	static obj_t BGl_symbol1773z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1776z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1779z00zz__rgc_treez00 = BUNSPEC;
	extern obj_t bgl_display_obj(obj_t, obj_t);
	BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__rgc_treez00(long,
		char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__rgc_configz00(long, char *);
	extern obj_t BGl_modulezd2initializa7ationz75zz__rgc_setz00(long, char *);
	static obj_t BGl_submatchzd2stopzd2addz12z12zz__rgc_treez00(obj_t, obj_t,
		obj_t);
	static obj_t BGl_z62printzd2nodezb0zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_symbol1782z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_submatchzd2startzd2addz12z12zz__rgc_treez00(obj_t, obj_t,
		obj_t, obj_t);
	static obj_t BGl_symbol1785z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1789z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1756z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1759z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_z62zc3z04anonymousza31275ze3ze5zz__rgc_treez00(obj_t, obj_t);
	extern obj_t BGl_rgcsetzd2addz12zc0zz__rgc_setz00(obj_t, long);
	BGL_EXPORTED_DECL obj_t BGl_regularzd2treezd2ze3nodeze3zz__rgc_treez00(obj_t);
	static obj_t BGl_symbol1792z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1760z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1795z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_toplevelzd2initzd2zz__rgc_treez00(void);
	static obj_t BGl_list1763z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1799z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1768z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_z62zc3z04anonymousza31284ze3ze5zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31302ze3ze5zz__rgc_treez00(obj_t, obj_t);
	extern obj_t create_struct(obj_t, int);
	static obj_t BGl_list1771z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1772z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1775z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1778z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_cnstzd2initzd2zz__rgc_treez00(void);
	static obj_t BGl_genericzd2initzd2zz__rgc_treez00(void);
	static obj_t BGl_z62regularzd2treezd2ze3nodez81zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_importedzd2moduleszd2initz00zz__rgc_treez00(void);
	static obj_t BGl_list1781z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_gczd2rootszd2initz00zz__rgc_treez00(void);
	static obj_t BGl_list1784z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1788z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_objectzd2initzd2zz__rgc_treez00(void);
	static obj_t BGl_za2followposza2z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_za2currentzd2positionza2zd2zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_za2submatchesza2z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_submatchzd2ze3nodez31zz__rgc_treez00(obj_t);
	static obj_t BGl_initzd2positionsz12zc0zz__rgc_treez00(void);
	static obj_t BGl_list1791z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1794z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1797z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_list1798z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_binaryzd2ze3nodez31zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_integerzd2ze3nodez31zz__rgc_treez00(obj_t);
	extern obj_t BGl_rgcsetzd2orz12zc0zz__rgc_setz00(obj_t, obj_t);
	extern obj_t bstring_to_symbol(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_resetzd2treez12zc0zz__rgc_treez00(void);
	static obj_t BGl_z62sequence2zd2ze3nodez53zz__rgc_treez00(obj_t, obj_t,
		obj_t);
	extern obj_t make_vector(long, obj_t);
	static obj_t BGl_z62zc3z04anonymousza31323ze3ze5zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_methodzd2initzd2zz__rgc_treez00(void);
	static obj_t BGl_za2positionsza2z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_loopze70ze7zz__rgc_treez00(obj_t, obj_t);
	static long BGl_loopze71ze7zz__rgc_treez00(obj_t, long);
	extern obj_t BGl_rgcsetzd2orzd2zz__rgc_setz00(obj_t, obj_t);
	static obj_t BGl_symbol1802z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_za2zd2ze3nodez93zz__rgc_treez00(obj_t);
	static obj_t BGl_symbol1736z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1738z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_sequencezd2ze3nodez31zz__rgc_treez00(obj_t);
	BGL_EXPORTED_DECL obj_t BGl_printzd2followposzd2zz__rgc_treez00(obj_t);
	static obj_t BGl_symbol1740z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1742z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_z62printzd2followposzb0zz__rgc_treez00(obj_t, obj_t);
	static obj_t BGl_symbol1744z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1746z00zz__rgc_treez00 = BUNSPEC;
	static obj_t BGl_symbol1748z00zz__rgc_treez00 = BUNSPEC;
	extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
	extern obj_t BGl_makezd2rgcsetzd2zz__rgc_setz00(long);
	static obj_t *__cnst;


	   
		 
		BGL_DEFINE_STRING(BGl_string1790z00zz__rgc_treez00,
		BgL_bgl_string1790za700za7za7_1805za7, "reverse", 7);
	      BGL_DEFINE_STRING(BGl_string1793z00zz__rgc_treez00,
		BgL_bgl_string1793za700za7za7_1806za7, "rgcset->list", 12);
	      BGL_DEFINE_STRING(BGl_string1796z00zz__rgc_treez00,
		BgL_bgl_string1796za700za7za7_1807za7, "vector-ref", 10);
	     
		DEFINE_EXPORT_BGL_PROCEDURE
		(BGl_regularzd2treezd2ze3nodezd2envz31zz__rgc_treez00,
		BgL_bgl_za762regularza7d2tre1808z00,
		BGl_z62regularzd2treezd2ze3nodez81zz__rgc_treez00, 0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1800z00zz__rgc_treez00,
		BgL_bgl_string1800za700za7za7_1809za7, "+fx", 3);
	      BGL_DEFINE_STRING(BGl_string1801z00zz__rgc_treez00,
		BgL_bgl_string1801za700za7za7_1810za7,
		"==================================================", 50);
	      BGL_DEFINE_STRING(BGl_string1803z00zz__rgc_treez00,
		BgL_bgl_string1803za700za7za7_1811za7, "blop", 4);
	      BGL_DEFINE_STRING(BGl_string1804z00zz__rgc_treez00,
		BgL_bgl_string1804za700za7za7_1812za7, "__rgc_tree", 10);
	     
		DEFINE_EXPORT_BGL_PROCEDURE(BGl_printzd2followposzd2envz00zz__rgc_treez00,
		BgL_bgl_za762printza7d2follo1813z00,
		BGl_z62printzd2followposzb0zz__rgc_treez00, 0L, BUNSPEC, 1);
	      BGL_DEFINE_STRING(BGl_string1737z00zz__rgc_treez00,
		BgL_bgl_string1737za700za7za7_1814za7, "epsilon", 7);
	      BGL_DEFINE_STRING(BGl_string1739z00zz__rgc_treez00,
		BgL_bgl_string1739za700za7za7_1815za7, "node", 4);
	      BGL_DEFINE_STRING(BGl_string1741z00zz__rgc_treez00,
		BgL_bgl_string1741za700za7za7_1816za7, "or", 2);
	      BGL_DEFINE_STRING(BGl_string1743z00zz__rgc_treez00,
		BgL_bgl_string1743za700za7za7_1817za7, "sequence", 8);
	      BGL_DEFINE_STRING(BGl_string1745z00zz__rgc_treez00,
		BgL_bgl_string1745za700za7za7_1818za7, "*", 1);
	      BGL_DEFINE_STRING(BGl_string1747z00zz__rgc_treez00,
		BgL_bgl_string1747za700za7za7_1819za7, "submatch", 8);
	      BGL_DEFINE_STRING(BGl_string1749z00zz__rgc_treez00,
		BgL_bgl_string1749za700za7za7_1820za7, "bol", 3);
	      BGL_DEFINE_STRING(BGl_string1750z00zz__rgc_treez00,
		BgL_bgl_string1750za700za7za7_1821za7, "RGC:Unknown function", 20);
	      BGL_DEFINE_STRING(BGl_string1751z00zz__rgc_treez00,
		BgL_bgl_string1751za700za7za7_1822za7, "RGC:Illegal tree", 16);
	      BGL_DEFINE_STRING(BGl_string1754z00zz__rgc_treez00,
		BgL_bgl_string1754za700za7za7_1823za7,
		"========= FOLLOWPOS ==============================", 50);
	      BGL_DEFINE_STRING(BGl_string1755z00zz__rgc_treez00,
		BgL_bgl_string1755za700za7za7_1824za7, "number of pos: ", 15);
	      BGL_DEFINE_STRING(BGl_string1758z00zz__rgc_treez00,
		BgL_bgl_string1758za700za7za7_1825za7, "let", 3);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_resetzd2treez12zd2envz12zz__rgc_treez00,
		BgL_bgl_za762resetza7d2treeza71826za7,
		BGl_z62resetzd2treez12za2zz__rgc_treez00, 0L, BUNSPEC, 0);
	      BGL_DEFINE_L_PROCEDURE(BGl_proc1752z00zz__rgc_treez00,
		BgL_bgl_za762or2za7d2za7e3node1827za7,
		BGl_z62or2zd2ze3nodez53zz__rgc_treez00);
	      BGL_DEFINE_L_PROCEDURE(BGl_proc1753z00zz__rgc_treez00,
		BgL_bgl_za762sequence2za7d2za71828za7,
		BGl_z62sequence2zd2ze3nodez53zz__rgc_treez00);
	      BGL_DEFINE_STRING(BGl_string1762z00zz__rgc_treez00,
		BgL_bgl_string1762za700za7za7_1829za7, "sz", 2);
	      BGL_DEFINE_STRING(BGl_string1765z00zz__rgc_treez00,
		BgL_bgl_string1765za700za7za7_1830za7, "vector-length", 13);
	      BGL_DEFINE_STRING(BGl_string1767z00zz__rgc_treez00,
		BgL_bgl_string1767za700za7za7_1831za7, "fp", 2);
	      BGL_DEFINE_STRING(BGl_string1770z00zz__rgc_treez00,
		BgL_bgl_string1770za700za7za7_1832za7, "loop", 4);
	      BGL_DEFINE_STRING(BGl_string1774z00zz__rgc_treez00,
		BgL_bgl_string1774za700za7za7_1833za7, "i", 1);
	      BGL_DEFINE_STRING(BGl_string1777z00zz__rgc_treez00,
		BgL_bgl_string1777za700za7za7_1834za7, "if", 2);
	      BGL_DEFINE_STRING(BGl_string1780z00zz__rgc_treez00,
		BgL_bgl_string1780za700za7za7_1835za7, "<fx", 3);
	      BGL_DEFINE_STRING(BGl_string1783z00zz__rgc_treez00,
		BgL_bgl_string1783za700za7za7_1836za7, "begin", 5);
	      BGL_DEFINE_STRING(BGl_string1786z00zz__rgc_treez00,
		BgL_bgl_string1786za700za7za7_1837za7, "print", 5);
	      BGL_DEFINE_STRING(BGl_string1787z00zz__rgc_treez00,
		BgL_bgl_string1787za700za7za7_1838za7, ": ", 2);
	      DEFINE_EXPORT_BGL_PROCEDURE(BGl_printzd2nodezd2envz00zz__rgc_treez00,
		BgL_bgl_za762printza7d2nodeza71839za7,
		BGl_z62printzd2nodezb0zz__rgc_treez00, 0L, BUNSPEC, 1);

/* contant bindings */
	static void bgl_constant_bindings()
	{
		BGL_BIND_PROCEDURE(BGl_printzd2nodezd2envz00zz__rgc_treez00,
			BgL_bgl_za762printza7d2nodeza71839za7);
		BGL_BIND_STRING(BGl_string1787z00zz__rgc_treez00,
			BgL_bgl_string1787za700za7za7_1838za7);
		BGL_BIND_STRING(BGl_string1786z00zz__rgc_treez00,
			BgL_bgl_string1786za700za7za7_1837za7);
		BGL_BIND_STRING(BGl_string1783z00zz__rgc_treez00,
			BgL_bgl_string1783za700za7za7_1836za7);
		BGL_BIND_STRING(BGl_string1780z00zz__rgc_treez00,
			BgL_bgl_string1780za700za7za7_1835za7);
		BGL_BIND_STRING(BGl_string1777z00zz__rgc_treez00,
			BgL_bgl_string1777za700za7za7_1834za7);
		BGL_BIND_STRING(BGl_string1774z00zz__rgc_treez00,
			BgL_bgl_string1774za700za7za7_1833za7);
		BGL_BIND_STRING(BGl_string1770z00zz__rgc_treez00,
			BgL_bgl_string1770za700za7za7_1832za7);
		BGL_BIND_STRING(BGl_string1767z00zz__rgc_treez00,
			BgL_bgl_string1767za700za7za7_1831za7);
		BGL_BIND_STRING(BGl_string1765z00zz__rgc_treez00,
			BgL_bgl_string1765za700za7za7_1830za7);
		BGL_BIND_STRING(BGl_string1762z00zz__rgc_treez00,
			BgL_bgl_string1762za700za7za7_1829za7);
		BGL_BIND_L_PROCEDURE(BGl_proc1753z00zz__rgc_treez00,
			BgL_bgl_za762sequence2za7d2za71828za7);
		BGL_BIND_L_PROCEDURE(BGl_proc1752z00zz__rgc_treez00,
			BgL_bgl_za762or2za7d2za7e3node1827za7);
		BGL_BIND_PROCEDURE(BGl_resetzd2treez12zd2envz12zz__rgc_treez00,
			BgL_bgl_za762resetza7d2treeza71826za7);
		BGL_BIND_STRING(BGl_string1758z00zz__rgc_treez00,
			BgL_bgl_string1758za700za7za7_1825za7);
		BGL_BIND_STRING(BGl_string1755z00zz__rgc_treez00,
			BgL_bgl_string1755za700za7za7_1824za7);
		BGL_BIND_STRING(BGl_string1754z00zz__rgc_treez00,
			BgL_bgl_string1754za700za7za7_1823za7);
		BGL_BIND_STRING(BGl_string1751z00zz__rgc_treez00,
			BgL_bgl_string1751za700za7za7_1822za7);
		BGL_BIND_STRING(BGl_string1750z00zz__rgc_treez00,
			BgL_bgl_string1750za700za7za7_1821za7);
		BGL_BIND_STRING(BGl_string1749z00zz__rgc_treez00,
			BgL_bgl_string1749za700za7za7_1820za7);
		BGL_BIND_STRING(BGl_string1747z00zz__rgc_treez00,
			BgL_bgl_string1747za700za7za7_1819za7);
		BGL_BIND_STRING(BGl_string1745z00zz__rgc_treez00,
			BgL_bgl_string1745za700za7za7_1818za7);
		BGL_BIND_STRING(BGl_string1743z00zz__rgc_treez00,
			BgL_bgl_string1743za700za7za7_1817za7);
		BGL_BIND_STRING(BGl_string1741z00zz__rgc_treez00,
			BgL_bgl_string1741za700za7za7_1816za7);
		BGL_BIND_STRING(BGl_string1739z00zz__rgc_treez00,
			BgL_bgl_string1739za700za7za7_1815za7);
		BGL_BIND_STRING(BGl_string1737z00zz__rgc_treez00,
			BgL_bgl_string1737za700za7za7_1814za7);
		BGL_BIND_PROCEDURE(BGl_printzd2followposzd2envz00zz__rgc_treez00,
			BgL_bgl_za762printza7d2follo1813z00);
		BGL_BIND_STRING(BGl_string1804z00zz__rgc_treez00,
			BgL_bgl_string1804za700za7za7_1812za7);
		BGL_BIND_STRING(BGl_string1803z00zz__rgc_treez00,
			BgL_bgl_string1803za700za7za7_1811za7);
		BGL_BIND_STRING(BGl_string1801z00zz__rgc_treez00,
			BgL_bgl_string1801za700za7za7_1810za7);
		BGL_BIND_STRING(BGl_string1800z00zz__rgc_treez00,
			BgL_bgl_string1800za700za7za7_1809za7);
		BGL_BIND_PROCEDURE(BGl_regularzd2treezd2ze3nodezd2envz31zz__rgc_treez00,
			BgL_bgl_za762regularza7d2tre1808z00);
		BGL_BIND_STRING(BGl_string1796z00zz__rgc_treez00,
			BgL_bgl_string1796za700za7za7_1807za7);
		BGL_BIND_STRING(BGl_string1793z00zz__rgc_treez00,
			BgL_bgl_string1793za700za7za7_1806za7);
		BGL_BIND_STRING(BGl_string1790z00zz__rgc_treez00,
			BgL_bgl_string1790za700za7za7_1805za7);
	}

/* 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_symbol1757z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_za2positionzd2numberza2zd2zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1761z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1764z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1766z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1769z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_requirezd2initializa7ationz75zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1773z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1776z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1779z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1782z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1785z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1789z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1756z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1759z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1792z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1760z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1795z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1763z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1799z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1768z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1771z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1772z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1775z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1778z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1781z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1784z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1788z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_za2followposza2z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_za2currentzd2positionza2zd2zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_za2submatchesza2z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1791z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1794z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1797z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_list1798z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_za2positionsza2z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1802z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1736z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1738z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1740z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1742z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1744z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1746z00zz__rgc_treez00));
		ADD_ROOT((void *) (&BGl_symbol1748z00zz__rgc_treez00));
#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__rgc_treez00(long
		BgL_checksumz00_2311, char *BgL_fromz00_2312)
	{
		{
			if (CBOOL(BGl_requirezd2initializa7ationz75zz__rgc_treez00))
				{
					BGl_requirezd2initializa7ationz75zz__rgc_treez00 =
						BBOOL(((bool_t) 0));
					bgl_constant_bindings();
					BGl_gczd2rootszd2initz00zz__rgc_treez00();
					BGl_cnstzd2initzd2zz__rgc_treez00();
					BGl_importedzd2moduleszd2initz00zz__rgc_treez00();
					return BGl_toplevelzd2initzd2zz__rgc_treez00();
				}
			else
				{
					return BUNSPEC;
				}
		}

	}



/* cnst-init */
	obj_t BGl_cnstzd2initzd2zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			BGl_symbol1736z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1737z00zz__rgc_treez00);
			BGl_symbol1738z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1739z00zz__rgc_treez00);
			BGl_symbol1740z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1741z00zz__rgc_treez00);
			BGl_symbol1742z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1743z00zz__rgc_treez00);
			BGl_symbol1744z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1745z00zz__rgc_treez00);
			BGl_symbol1746z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1747z00zz__rgc_treez00);
			BGl_symbol1748z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1749z00zz__rgc_treez00);
			BGl_symbol1757z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1758z00zz__rgc_treez00);
			BGl_symbol1761z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1762z00zz__rgc_treez00);
			BGl_symbol1764z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1765z00zz__rgc_treez00);
			BGl_symbol1766z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1767z00zz__rgc_treez00);
			BGl_list1763z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1764z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1766z00zz__rgc_treez00, BNIL));
			BGl_list1760z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1761z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1763z00zz__rgc_treez00, BNIL));
			BGl_list1759z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_list1760z00zz__rgc_treez00, BNIL);
			BGl_symbol1769z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1770z00zz__rgc_treez00);
			BGl_symbol1773z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1774z00zz__rgc_treez00);
			BGl_list1772z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1773z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BINT(0L), BNIL));
			BGl_list1771z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_list1772z00zz__rgc_treez00, BNIL);
			BGl_symbol1776z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1777z00zz__rgc_treez00);
			BGl_symbol1779z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1780z00zz__rgc_treez00);
			BGl_list1778z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1779z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1773z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_symbol1761z00zz__rgc_treez00, BNIL)));
			BGl_symbol1782z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1783z00zz__rgc_treez00);
			BGl_symbol1785z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1786z00zz__rgc_treez00);
			BGl_symbol1789z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1790z00zz__rgc_treez00);
			BGl_symbol1792z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1793z00zz__rgc_treez00);
			BGl_symbol1795z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1796z00zz__rgc_treez00);
			BGl_list1794z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1795z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1766z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_symbol1773z00zz__rgc_treez00, BNIL)));
			BGl_list1791z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1792z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1794z00zz__rgc_treez00, BNIL));
			BGl_list1788z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1789z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1791z00zz__rgc_treez00, BNIL));
			BGl_list1784z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1785z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1773z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_string1787z00zz__rgc_treez00,
						MAKE_YOUNG_PAIR(BGl_list1788z00zz__rgc_treez00, BNIL))));
			BGl_symbol1799z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1800z00zz__rgc_treez00);
			BGl_list1798z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1799z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1773z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BINT(1L), BNIL)));
			BGl_list1797z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1769z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1798z00zz__rgc_treez00, BNIL));
			BGl_list1781z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1782z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1784z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_list1797z00zz__rgc_treez00, BNIL)));
			BGl_list1775z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1776z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1778z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_list1781z00zz__rgc_treez00, BNIL)));
			BGl_list1768z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1757z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_symbol1769z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_list1771z00zz__rgc_treez00,
						MAKE_YOUNG_PAIR(BGl_list1775z00zz__rgc_treez00, BNIL))));
			BGl_list1756z00zz__rgc_treez00 =
				MAKE_YOUNG_PAIR(BGl_symbol1757z00zz__rgc_treez00,
				MAKE_YOUNG_PAIR(BGl_list1759z00zz__rgc_treez00,
					MAKE_YOUNG_PAIR(BGl_list1768z00zz__rgc_treez00, BNIL)));
			return (BGl_symbol1802z00zz__rgc_treez00 =
				bstring_to_symbol(BGl_string1803z00zz__rgc_treez00), BUNSPEC);
		}

	}



/* gc-roots-init */
	obj_t BGl_gczd2rootszd2initz00zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			return bgl_gc_roots_register();
		}

	}



/* toplevel-init */
	obj_t BGl_toplevelzd2initzd2zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			BGl_za2positionzd2numberza2zd2zz__rgc_treez00 = BUNSPEC;
			BGl_za2positionsza2z00zz__rgc_treez00 = BUNSPEC;
			BGl_za2submatchesza2z00zz__rgc_treez00 = BUNSPEC;
			BGl_za2currentzd2positionza2zd2zz__rgc_treez00 = BUNSPEC;
			return (BGl_za2followposza2z00zz__rgc_treez00 = BUNSPEC, BUNSPEC);
		}

	}



/* regular-tree->node */
	BGL_EXPORTED_DEF obj_t BGl_regularzd2treezd2ze3nodeze3zz__rgc_treez00(obj_t
		BgL_treez00_17)
	{
		{	/* Rgc/rgctree.scm 59 */
			BGl_za2positionzd2numberza2zd2zz__rgc_treez00 =
				BINT(BGl_regularzd2treezd2positionzd2numberzd2zz__rgc_treez00
				(BgL_treez00_17));
			BGl_initzd2positionsz12zc0zz__rgc_treez00();
			BGl_initzd2followposz12zc0zz__rgc_treez00();
			{	/* Rgc/rgctree.scm 67 */
				obj_t BgL_treez00_1230;

				BgL_treez00_1230 = BGl_treezd2ze3nodez31zz__rgc_treez00(BgL_treez00_17);
				{	/* Rgc/rgctree.scm 69 */
					obj_t BgL_val1_1089z00_1232;
					obj_t BgL_val2_1090z00_1233;
					obj_t BgL_val3_1091z00_1234;

					BgL_val1_1089z00_1232 = BGl_za2followposza2z00zz__rgc_treez00;
					BgL_val2_1090z00_1233 = BGl_za2positionsza2z00zz__rgc_treez00;
					BgL_val3_1091z00_1234 = BGl_za2submatchesza2z00zz__rgc_treez00;
					{	/* Rgc/rgctree.scm 69 */
						int BgL_tmpz00_2391;

						BgL_tmpz00_2391 = (int) (4L);
						BGL_MVALUES_NUMBER_SET(BgL_tmpz00_2391);
					}
					{	/* Rgc/rgctree.scm 69 */
						int BgL_tmpz00_2394;

						BgL_tmpz00_2394 = (int) (1L);
						BGL_MVALUES_VAL_SET(BgL_tmpz00_2394, BgL_val1_1089z00_1232);
					}
					{	/* Rgc/rgctree.scm 69 */
						int BgL_tmpz00_2397;

						BgL_tmpz00_2397 = (int) (2L);
						BGL_MVALUES_VAL_SET(BgL_tmpz00_2397, BgL_val2_1090z00_1233);
					}
					{	/* Rgc/rgctree.scm 69 */
						int BgL_tmpz00_2400;

						BgL_tmpz00_2400 = (int) (3L);
						BGL_MVALUES_VAL_SET(BgL_tmpz00_2400, BgL_val3_1091z00_1234);
					}
					return BgL_treez00_1230;
				}
			}
		}

	}



/* &regular-tree->node */
	obj_t BGl_z62regularzd2treezd2ze3nodez81zz__rgc_treez00(obj_t BgL_envz00_2232,
		obj_t BgL_treez00_2233)
	{
		{	/* Rgc/rgctree.scm 59 */
			return BGl_regularzd2treezd2ze3nodeze3zz__rgc_treez00(BgL_treez00_2233);
		}

	}



/* regular-tree-position-number */
	long BGl_regularzd2treezd2positionzd2numberzd2zz__rgc_treez00(obj_t
		BgL_treez00_18)
	{
		{	/* Rgc/rgctree.scm 85 */
			return BGl_loopze71ze7zz__rgc_treez00(BgL_treez00_18, 0L);
		}

	}



/* loop~1 */
	long BGl_loopze71ze7zz__rgc_treez00(obj_t BgL_treez00_1236,
		long BgL_numz00_1237)
	{
		{	/* Rgc/rgctree.scm 86 */
		BGl_loopze71ze7zz__rgc_treez00:
			if (NULLP(BgL_treez00_1236))
				{	/* Rgc/rgctree.scm 89 */
					return BgL_numz00_1237;
				}
			else
				{	/* Rgc/rgctree.scm 91 */
					bool_t BgL_test1842z00_2407;

					{	/* Rgc/rgctree.scm 91 */
						obj_t BgL_tmpz00_2408;

						BgL_tmpz00_2408 = CAR(((obj_t) BgL_treez00_1236));
						BgL_test1842z00_2407 = PAIRP(BgL_tmpz00_2408);
					}
					if (BgL_test1842z00_2407)
						{
							long BgL_numz00_2415;
							obj_t BgL_treez00_2412;

							BgL_treez00_2412 = CDR(((obj_t) BgL_treez00_1236));
							BgL_numz00_2415 =
								BGl_loopze71ze7zz__rgc_treez00(CAR(
									((obj_t) BgL_treez00_1236)), BgL_numz00_1237);
							BgL_numz00_1237 = BgL_numz00_2415;
							BgL_treez00_1236 = BgL_treez00_2412;
							goto BGl_loopze71ze7zz__rgc_treez00;
						}
					else
						{	/* Rgc/rgctree.scm 91 */
							if (INTEGERP(CAR(((obj_t) BgL_treez00_1236))))
								{
									long BgL_numz00_2426;
									obj_t BgL_treez00_2423;

									BgL_treez00_2423 = CDR(((obj_t) BgL_treez00_1236));
									BgL_numz00_2426 = (BgL_numz00_1237 + 1L);
									BgL_numz00_1237 = BgL_numz00_2426;
									BgL_treez00_1236 = BgL_treez00_2423;
									goto BGl_loopze71ze7zz__rgc_treez00;
								}
							else
								{
									obj_t BgL_treez00_2428;

									BgL_treez00_2428 = CDR(((obj_t) BgL_treez00_1236));
									BgL_treez00_1236 = BgL_treez00_2428;
									goto BGl_loopze71ze7zz__rgc_treez00;
								}
						}
				}
		}

	}



/* init-positions! */
	obj_t BGl_initzd2positionsz12zc0zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 101 */
			BGl_za2currentzd2positionza2zd2zz__rgc_treez00 = BINT((-1L));
			BGl_za2positionsza2z00zz__rgc_treez00 =
				make_vector(
				(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00),
				BINT((-1L)));
			return (BGl_za2submatchesza2z00zz__rgc_treez00 =
				make_vector(
					(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00), BNIL),
				BUNSPEC);
		}

	}



/* tree->node */
	obj_t BGl_treezd2ze3nodez31zz__rgc_treez00(obj_t BgL_treez00_20)
	{
		{	/* Rgc/rgctree.scm 122 */
			if (INTEGERP(BgL_treez00_20))
				{	/* Rgc/rgctree.scm 124 */
					return BGl_integerzd2ze3nodez31zz__rgc_treez00(BgL_treez00_20);
				}
			else
				{	/* Rgc/rgctree.scm 124 */
					if ((BgL_treez00_20 == BGl_symbol1736z00zz__rgc_treez00))
						{	/* Rgc/rgctree.scm 154 */
							obj_t BgL_firstposz00_1852;
							obj_t BgL_lastposz00_1853;

							BgL_firstposz00_1852 =
								BGl_makezd2rgcsetzd2zz__rgc_setz00(
								(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00));
							BgL_lastposz00_1853 =
								BGl_makezd2rgcsetzd2zz__rgc_setz00(
								(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00));
							{	/* Rgc/rgctree.scm 156 */
								obj_t BgL_newz00_1854;

								BgL_newz00_1854 =
									create_struct(BGl_symbol1738z00zz__rgc_treez00, (int) (3L));
								{	/* Rgc/rgctree.scm 156 */
									int BgL_tmpz00_2448;

									BgL_tmpz00_2448 = (int) (2L);
									STRUCT_SET(BgL_newz00_1854, BgL_tmpz00_2448, BTRUE);
								}
								{	/* Rgc/rgctree.scm 156 */
									int BgL_tmpz00_2451;

									BgL_tmpz00_2451 = (int) (1L);
									STRUCT_SET(BgL_newz00_1854, BgL_tmpz00_2451,
										BgL_lastposz00_1853);
								}
								{	/* Rgc/rgctree.scm 156 */
									int BgL_tmpz00_2454;

									BgL_tmpz00_2454 = (int) (0L);
									STRUCT_SET(BgL_newz00_1854, BgL_tmpz00_2454,
										BgL_firstposz00_1852);
								}
								return BgL_newz00_1854;
							}
						}
					else
						{	/* Rgc/rgctree.scm 126 */
							if (PAIRP(BgL_treez00_20))
								{	/* Rgc/rgctree.scm 131 */
									obj_t BgL_casezd2valuezd2_1255;

									BgL_casezd2valuezd2_1255 = CAR(BgL_treez00_20);
									if (
										(BgL_casezd2valuezd2_1255 ==
											BGl_symbol1740z00zz__rgc_treez00))
										{	/* Rgc/rgctree.scm 131 */
											BGL_TAIL return
												BGl_orzd2ze3nodez31zz__rgc_treez00(CDR(BgL_treez00_20));
										}
									else
										{	/* Rgc/rgctree.scm 131 */
											if (
												(BgL_casezd2valuezd2_1255 ==
													BGl_symbol1742z00zz__rgc_treez00))
												{	/* Rgc/rgctree.scm 131 */
													BGL_TAIL return
														BGl_sequencezd2ze3nodez31zz__rgc_treez00(CDR
														(BgL_treez00_20));
												}
											else
												{	/* Rgc/rgctree.scm 131 */
													if (
														(BgL_casezd2valuezd2_1255 ==
															BGl_symbol1744z00zz__rgc_treez00))
														{	/* Rgc/rgctree.scm 131 */
															BGL_TAIL return
																BGl_za2zd2ze3nodez93zz__rgc_treez00(CAR(CDR
																	(BgL_treez00_20)));
														}
													else
														{	/* Rgc/rgctree.scm 131 */
															if (
																(BgL_casezd2valuezd2_1255 ==
																	BGl_symbol1746z00zz__rgc_treez00))
																{	/* Rgc/rgctree.scm 131 */
																	BGL_TAIL return
																		BGl_submatchzd2ze3nodez31zz__rgc_treez00(CDR
																		(BgL_treez00_20));
																}
															else
																{	/* Rgc/rgctree.scm 131 */
																	if (
																		(BgL_casezd2valuezd2_1255 ==
																			BGl_symbol1748z00zz__rgc_treez00))
																		{	/* Rgc/rgctree.scm 136 */
																			obj_t BgL_arg1248z00_1265;

																			BgL_arg1248z00_1265 = CDR(BgL_treez00_20);
																			{	/* Rgc/rgctree.scm 242 */
																				obj_t BgL_nodez00_1872;

																				BgL_nodez00_1872 =
																					BGl_treezd2ze3nodez31zz__rgc_treez00
																					(BgL_arg1248z00_1265);
																				{	/* Rgc/rgctree.scm 242 */
																					obj_t BgL_firstposz00_1873;

																					BgL_firstposz00_1873 =
																						STRUCT_REF(
																						((obj_t) BgL_nodez00_1872),
																						(int) (0L));
																					{	/* Rgc/rgctree.scm 243 */
																						obj_t BgL_lastposz00_1874;

																						BgL_lastposz00_1874 =
																							STRUCT_REF(
																							((obj_t) BgL_nodez00_1872),
																							(int) (1L));
																						{	/* Rgc/rgctree.scm 244 */

																							return
																								BGL_PROCEDURE_CALL3
																								(BgL_nodez00_1872,
																								BgL_firstposz00_1873,
																								BgL_lastposz00_1874, BFALSE);
																						}
																					}
																				}
																			}
																		}
																	else
																		{	/* Rgc/rgctree.scm 131 */
																			return
																				BGl_errorz00zz__errorz00(BFALSE,
																				BGl_string1750z00zz__rgc_treez00,
																				BgL_treez00_20);
																		}
																}
														}
												}
										}
								}
							else
								{	/* Rgc/rgctree.scm 128 */
									return
										BGl_errorz00zz__errorz00(BFALSE,
										BGl_string1751z00zz__rgc_treez00, BgL_treez00_20);
								}
						}
				}
		}

	}



/* integer->node */
	obj_t BGl_integerzd2ze3nodez31zz__rgc_treez00(obj_t BgL_treez00_21)
	{
		{	/* Rgc/rgctree.scm 142 */
			{	/* Rgc/rgctree.scm 143 */
				obj_t BgL_positionz00_1266;
				obj_t BgL_firstposz00_1267;
				obj_t BgL_lastposz00_1268;

				BGl_za2currentzd2positionza2zd2zz__rgc_treez00 =
					ADDFX(BGl_za2currentzd2positionza2zd2zz__rgc_treez00, BINT(1L));
				VECTOR_SET(BGl_za2positionsza2z00zz__rgc_treez00,
					(long) CINT(BGl_za2currentzd2positionza2zd2zz__rgc_treez00),
					BgL_treez00_21);
				BgL_positionz00_1266 = BGl_za2currentzd2positionza2zd2zz__rgc_treez00;
				BgL_firstposz00_1267 =
					BGl_makezd2rgcsetzd2zz__rgc_setz00(
					(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00));
				BgL_lastposz00_1268 =
					BGl_makezd2rgcsetzd2zz__rgc_setz00(
					(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00));
				BGl_rgcsetzd2addz12zc0zz__rgc_setz00(BgL_firstposz00_1267,
					(long) CINT(BgL_positionz00_1266));
				BGl_rgcsetzd2addz12zc0zz__rgc_setz00(BgL_lastposz00_1268,
					(long) CINT(BgL_positionz00_1266));
				{	/* Rgc/rgctree.scm 148 */
					obj_t BgL_newz00_1880;

					BgL_newz00_1880 =
						create_struct(BGl_symbol1738z00zz__rgc_treez00, (int) (3L));
					{	/* Rgc/rgctree.scm 148 */
						int BgL_tmpz00_2509;

						BgL_tmpz00_2509 = (int) (2L);
						STRUCT_SET(BgL_newz00_1880, BgL_tmpz00_2509, BFALSE);
					}
					{	/* Rgc/rgctree.scm 148 */
						int BgL_tmpz00_2512;

						BgL_tmpz00_2512 = (int) (1L);
						STRUCT_SET(BgL_newz00_1880, BgL_tmpz00_2512, BgL_lastposz00_1268);
					}
					{	/* Rgc/rgctree.scm 148 */
						int BgL_tmpz00_2515;

						BgL_tmpz00_2515 = (int) (0L);
						STRUCT_SET(BgL_newz00_1880, BgL_tmpz00_2515, BgL_firstposz00_1267);
					}
					return BgL_newz00_1880;
				}
			}
		}

	}



/* binary->node */
	obj_t BGl_binaryzd2ze3nodez31zz__rgc_treez00(obj_t BgL_binzd2opzd2_23,
		obj_t BgL_tsz00_24)
	{
		{	/* Rgc/rgctree.scm 161 */
			if (NULLP(BgL_tsz00_24))
				{	/* Rgc/rgctree.scm 162 */
					return
						BGl_treezd2ze3nodez31zz__rgc_treez00
						(BGl_symbol1736z00zz__rgc_treez00);
				}
			else
				{	/* Rgc/rgctree.scm 162 */
					BGL_TAIL return
						BGl_loopze70ze7zz__rgc_treez00(BgL_binzd2opzd2_23, BgL_tsz00_24);
				}
		}

	}



/* loop~0 */
	obj_t BGl_loopze70ze7zz__rgc_treez00(obj_t BgL_binzd2opzd2_2266,
		obj_t BgL_tsz00_1273)
	{
		{	/* Rgc/rgctree.scm 164 */
			if (NULLP(CDR(((obj_t) BgL_tsz00_1273))))
				{	/* Rgc/rgctree.scm 166 */
					obj_t BgL_arg1254z00_1277;

					BgL_arg1254z00_1277 = CAR(((obj_t) BgL_tsz00_1273));
					return BGl_treezd2ze3nodez31zz__rgc_treez00(BgL_arg1254z00_1277);
				}
			else
				{	/* Rgc/rgctree.scm 167 */
					obj_t BgL_arg1258z00_1278;
					obj_t BgL_arg1259z00_1279;

					{	/* Rgc/rgctree.scm 167 */
						obj_t BgL_arg1261z00_1280;

						BgL_arg1261z00_1280 = CAR(((obj_t) BgL_tsz00_1273));
						BgL_arg1258z00_1278 =
							BGl_treezd2ze3nodez31zz__rgc_treez00(BgL_arg1261z00_1280);
					}
					{	/* Rgc/rgctree.scm 167 */
						obj_t BgL_arg1262z00_1281;

						BgL_arg1262z00_1281 = CDR(((obj_t) BgL_tsz00_1273));
						BgL_arg1259z00_1279 =
							BGl_loopze70ze7zz__rgc_treez00(BgL_binzd2opzd2_2266,
							BgL_arg1262z00_1281);
					}
					return
						((obj_t(*)(obj_t, obj_t,
								obj_t))
						PROCEDURE_L_ENTRY(BgL_binzd2opzd2_2266)) (BgL_binzd2opzd2_2266,
						BgL_arg1258z00_1278, BgL_arg1259z00_1279);
				}
		}

	}



/* or->node */
	obj_t BGl_orzd2ze3nodez31zz__rgc_treez00(obj_t BgL_tsz00_25)
	{
		{	/* Rgc/rgctree.scm 172 */
			return
				BGl_binaryzd2ze3nodez31zz__rgc_treez00(BGl_proc1752z00zz__rgc_treez00,
				BgL_tsz00_25);
		}

	}



/* &or2->node */
	obj_t BGl_z62or2zd2ze3nodez53zz__rgc_treez00(obj_t BgL_envz00_2235,
		obj_t BgL_n1z00_2236, obj_t BgL_n2z00_2237)
	{
		{	/* Rgc/rgctree.scm 177 */
			{	/* Rgc/rgctree.scm 174 */
				obj_t BgL_firstposz00_2291;

				{	/* Rgc/rgctree.scm 174 */
					obj_t BgL_arg1267z00_2292;
					obj_t BgL_arg1269z00_2293;

					BgL_arg1267z00_2292 =
						STRUCT_REF(((obj_t) BgL_n1z00_2236), (int) (0L));
					BgL_arg1269z00_2293 =
						STRUCT_REF(((obj_t) BgL_n2z00_2237), (int) (0L));
					BgL_firstposz00_2291 =
						BGl_rgcsetzd2orzd2zz__rgc_setz00(BgL_arg1267z00_2292,
						BgL_arg1269z00_2293);
				}
				{	/* Rgc/rgctree.scm 174 */
					obj_t BgL_lastposz00_2294;

					{	/* Rgc/rgctree.scm 175 */
						obj_t BgL_arg1265z00_2295;
						obj_t BgL_arg1266z00_2296;

						BgL_arg1265z00_2295 =
							STRUCT_REF(((obj_t) BgL_n1z00_2236), (int) (1L));
						BgL_arg1266z00_2296 =
							STRUCT_REF(((obj_t) BgL_n2z00_2237), (int) (1L));
						BgL_lastposz00_2294 =
							BGl_rgcsetzd2orzd2zz__rgc_setz00(BgL_arg1265z00_2295,
							BgL_arg1266z00_2296);
					}
					{	/* Rgc/rgctree.scm 175 */
						obj_t BgL_nullablezf3zf3_2297;

						{	/* Rgc/rgctree.scm 176 */
							obj_t BgL__ortest_1039z00_2298;

							BgL__ortest_1039z00_2298 =
								STRUCT_REF(((obj_t) BgL_n1z00_2236), (int) (2L));
							if (CBOOL(BgL__ortest_1039z00_2298))
								{	/* Rgc/rgctree.scm 176 */
									BgL_nullablezf3zf3_2297 = BgL__ortest_1039z00_2298;
								}
							else
								{	/* Rgc/rgctree.scm 176 */
									BgL_nullablezf3zf3_2297 =
										STRUCT_REF(((obj_t) BgL_n2z00_2237), (int) (2L));
						}}
						{	/* Rgc/rgctree.scm 176 */

							{	/* Rgc/rgctree.scm 177 */
								obj_t BgL_newz00_2299;

								BgL_newz00_2299 =
									create_struct(BGl_symbol1738z00zz__rgc_treez00, (int) (3L));
								{	/* Rgc/rgctree.scm 177 */
									int BgL_tmpz00_2565;

									BgL_tmpz00_2565 = (int) (2L);
									STRUCT_SET(BgL_newz00_2299, BgL_tmpz00_2565,
										BgL_nullablezf3zf3_2297);
								}
								{	/* Rgc/rgctree.scm 177 */
									int BgL_tmpz00_2568;

									BgL_tmpz00_2568 = (int) (1L);
									STRUCT_SET(BgL_newz00_2299, BgL_tmpz00_2568,
										BgL_lastposz00_2294);
								}
								{	/* Rgc/rgctree.scm 177 */
									int BgL_tmpz00_2571;

									BgL_tmpz00_2571 = (int) (0L);
									STRUCT_SET(BgL_newz00_2299, BgL_tmpz00_2571,
										BgL_firstposz00_2291);
								}
								return BgL_newz00_2299;
							}
						}
					}
				}
			}
		}

	}



/* sequence->node */
	obj_t BGl_sequencezd2ze3nodez31zz__rgc_treez00(obj_t BgL_tsz00_26)
	{
		{	/* Rgc/rgctree.scm 183 */
			return
				BGl_binaryzd2ze3nodez31zz__rgc_treez00(BGl_proc1753z00zz__rgc_treez00,
				BgL_tsz00_26);
		}

	}



/* &sequence2->node */
	obj_t BGl_z62sequence2zd2ze3nodez53zz__rgc_treez00(obj_t BgL_envz00_2240,
		obj_t BgL_n1z00_2241, obj_t BgL_n2z00_2242)
	{
		{	/* Rgc/rgctree.scm 197 */
			{	/* Rgc/rgctree.scm 185 */
				obj_t BgL_firstposz00_2300;
				obj_t BgL_lastposz00_2301;
				obj_t BgL_nullablezf3zf3_2302;

				if (CBOOL(STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (2L))))
					{	/* Rgc/rgctree.scm 186 */
						obj_t BgL_arg1278z00_2303;
						obj_t BgL_arg1279z00_2304;

						BgL_arg1278z00_2303 =
							STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (0L));
						BgL_arg1279z00_2304 =
							STRUCT_REF(((obj_t) BgL_n2z00_2242), (int) (0L));
						BgL_firstposz00_2300 =
							BGl_rgcsetzd2orzd2zz__rgc_setz00(BgL_arg1278z00_2303,
							BgL_arg1279z00_2304);
					}
				else
					{	/* Rgc/rgctree.scm 185 */
						BgL_firstposz00_2300 =
							STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (0L));
					}
				if (CBOOL(STRUCT_REF(((obj_t) BgL_n2z00_2242), (int) (2L))))
					{	/* Rgc/rgctree.scm 189 */
						obj_t BgL_arg1281z00_2305;
						obj_t BgL_arg1282z00_2306;

						BgL_arg1281z00_2305 =
							STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (1L));
						BgL_arg1282z00_2306 =
							STRUCT_REF(((obj_t) BgL_n2z00_2242), (int) (1L));
						BgL_lastposz00_2301 =
							BGl_rgcsetzd2orzd2zz__rgc_setz00(BgL_arg1281z00_2305,
							BgL_arg1282z00_2306);
					}
				else
					{	/* Rgc/rgctree.scm 188 */
						BgL_lastposz00_2301 =
							STRUCT_REF(((obj_t) BgL_n2z00_2242), (int) (1L));
					}
				if (CBOOL(STRUCT_REF(((obj_t) BgL_n2z00_2242), (int) (2L))))
					{	/* Rgc/rgctree.scm 191 */
						BgL_nullablezf3zf3_2302 =
							STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (2L));
					}
				else
					{	/* Rgc/rgctree.scm 191 */
						BgL_nullablezf3zf3_2302 = BFALSE;
					}
				{	/* Rgc/rgctree.scm 193 */
					obj_t BgL_arg1274z00_2307;

					BgL_arg1274z00_2307 =
						STRUCT_REF(((obj_t) BgL_n1z00_2241), (int) (1L));
					{	/* Rgc/rgctree.scm 194 */
						obj_t BgL_zc3z04anonymousza31275ze3z87_2308;

						BgL_zc3z04anonymousza31275ze3z87_2308 =
							MAKE_FX_PROCEDURE
							(BGl_z62zc3z04anonymousza31275ze3ze5zz__rgc_treez00, (int) (1L),
							(int) (1L));
						PROCEDURE_SET(BgL_zc3z04anonymousza31275ze3z87_2308, (int) (0L),
							BgL_n2z00_2242);
						BGl_forzd2eachzd2rgcsetz00zz__rgc_setz00
							(BgL_zc3z04anonymousza31275ze3z87_2308, BgL_arg1274z00_2307);
				}}
				{	/* Rgc/rgctree.scm 197 */
					obj_t BgL_newz00_2309;

					BgL_newz00_2309 =
						create_struct(BGl_symbol1738z00zz__rgc_treez00, (int) (3L));
					{	/* Rgc/rgctree.scm 197 */
						int BgL_tmpz00_2624;

						BgL_tmpz00_2624 = (int) (2L);
						STRUCT_SET(BgL_newz00_2309, BgL_tmpz00_2624,
							BgL_nullablezf3zf3_2302);
					}
					{	/* Rgc/rgctree.scm 197 */
						int BgL_tmpz00_2627;

						BgL_tmpz00_2627 = (int) (1L);
						STRUCT_SET(BgL_newz00_2309, BgL_tmpz00_2627, BgL_lastposz00_2301);
					}
					{	/* Rgc/rgctree.scm 197 */
						int BgL_tmpz00_2630;

						BgL_tmpz00_2630 = (int) (0L);
						STRUCT_SET(BgL_newz00_2309, BgL_tmpz00_2630, BgL_firstposz00_2300);
					}
					return BgL_newz00_2309;
				}
			}
		}

	}



/* &<@anonymous:1275> */
	obj_t BGl_z62zc3z04anonymousza31275ze3ze5zz__rgc_treez00(obj_t
		BgL_envz00_2243, obj_t BgL_iz00_2245)
	{
		{	/* Rgc/rgctree.scm 193 */
			{	/* Rgc/rgctree.scm 194 */
				obj_t BgL_n2z00_2244;

				BgL_n2z00_2244 = PROCEDURE_REF(BgL_envz00_2243, (int) (0L));
				{	/* Rgc/rgctree.scm 194 */
					obj_t BgL_arg1276z00_2310;

					BgL_arg1276z00_2310 =
						STRUCT_REF(((obj_t) BgL_n2z00_2244), (int) (0L));
					return
						BGl_rgcsetzd2orz12zc0zz__rgc_setz00(VECTOR_REF
						(BGl_za2followposza2z00zz__rgc_treez00, (long) CINT(BgL_iz00_2245)),
						BgL_arg1276z00_2310);
		}}}

	}



/* *->node */
	obj_t BGl_za2zd2ze3nodez93zz__rgc_treez00(obj_t BgL_exprz00_27)
	{
		{	/* Rgc/rgctree.scm 203 */
			{	/* Rgc/rgctree.scm 204 */
				obj_t BgL_subzd2nodezd2_1318;

				BgL_subzd2nodezd2_1318 =
					BGl_treezd2ze3nodez31zz__rgc_treez00(BgL_exprz00_27);
				{	/* Rgc/rgctree.scm 204 */
					obj_t BgL_firstposz00_1319;

					BgL_firstposz00_1319 =
						STRUCT_REF(((obj_t) BgL_subzd2nodezd2_1318), (int) (0L));
					{	/* Rgc/rgctree.scm 205 */
						obj_t BgL_lastposz00_1320;

						BgL_lastposz00_1320 =
							STRUCT_REF(((obj_t) BgL_subzd2nodezd2_1318), (int) (1L));
						{	/* Rgc/rgctree.scm 206 */

							{	/* Rgc/rgctree.scm 209 */
								obj_t BgL_zc3z04anonymousza31284ze3z87_2246;

								BgL_zc3z04anonymousza31284ze3z87_2246 =
									MAKE_FX_PROCEDURE
									(BGl_z62zc3z04anonymousza31284ze3ze5zz__rgc_treez00,
									(int) (1L), (int) (1L));
								PROCEDURE_SET(BgL_zc3z04anonymousza31284ze3z87_2246, (int) (0L),
									BgL_firstposz00_1319);
								BGl_forzd2eachzd2rgcsetz00zz__rgc_setz00
									(BgL_zc3z04anonymousza31284ze3z87_2246, BgL_lastposz00_1320);
							}
							{	/* Rgc/rgctree.scm 212 */
								obj_t BgL_newz00_1929;

								BgL_newz00_1929 =
									create_struct(BGl_symbol1738z00zz__rgc_treez00, (int) (3L));
								{	/* Rgc/rgctree.scm 212 */
									int BgL_tmpz00_2656;

									BgL_tmpz00_2656 = (int) (2L);
									STRUCT_SET(BgL_newz00_1929, BgL_tmpz00_2656, BTRUE);
								}
								{	/* Rgc/rgctree.scm 212 */
									int BgL_tmpz00_2659;

									BgL_tmpz00_2659 = (int) (1L);
									STRUCT_SET(BgL_newz00_1929, BgL_tmpz00_2659,
										BgL_lastposz00_1320);
								}
								{	/* Rgc/rgctree.scm 212 */
									int BgL_tmpz00_2662;

									BgL_tmpz00_2662 = (int) (0L);
									STRUCT_SET(BgL_newz00_1929, BgL_tmpz00_2662,
										BgL_firstposz00_1319);
								}
								return BgL_newz00_1929;
							}
						}
					}
				}
			}
		}

	}



/* &<@anonymous:1284> */
	obj_t BGl_z62zc3z04anonymousza31284ze3ze5zz__rgc_treez00(obj_t
		BgL_envz00_2247, obj_t BgL_iz00_2249)
	{
		{	/* Rgc/rgctree.scm 208 */
			{	/* Rgc/rgctree.scm 268 */
				obj_t BgL_firstposz00_2248;

				BgL_firstposz00_2248 = PROCEDURE_REF(BgL_envz00_2247, (int) (0L));
				return
					BGl_rgcsetzd2orz12zc0zz__rgc_setz00(VECTOR_REF
					(BGl_za2followposza2z00zz__rgc_treez00, (long) CINT(BgL_iz00_2249)),
					BgL_firstposz00_2248);
		}}

	}



/* submatch->node */
	obj_t BGl_submatchzd2ze3nodez31zz__rgc_treez00(obj_t BgL_exprz00_28)
	{
		{	/* Rgc/rgctree.scm 217 */
			if (PAIRP(BgL_exprz00_28))
				{	/* Rgc/rgctree.scm 218 */
					obj_t BgL_cdrzd2111zd2_1332;

					BgL_cdrzd2111zd2_1332 = CDR(((obj_t) BgL_exprz00_28));
					if (PAIRP(BgL_cdrzd2111zd2_1332))
						{	/* Rgc/rgctree.scm 218 */
							obj_t BgL_cdrzd2116zd2_1334;

							BgL_cdrzd2116zd2_1334 = CDR(BgL_cdrzd2111zd2_1332);
							if (PAIRP(BgL_cdrzd2116zd2_1334))
								{	/* Rgc/rgctree.scm 218 */
									if (NULLP(CDR(BgL_cdrzd2116zd2_1334)))
										{	/* Rgc/rgctree.scm 218 */
											obj_t BgL_arg1293z00_1338;
											obj_t BgL_arg1295z00_1339;
											obj_t BgL_arg1296z00_1340;

											BgL_arg1293z00_1338 = CAR(((obj_t) BgL_exprz00_28));
											BgL_arg1295z00_1339 = CAR(BgL_cdrzd2111zd2_1332);
											BgL_arg1296z00_1340 = CAR(BgL_cdrzd2116zd2_1334);
											{	/* Rgc/rgctree.scm 220 */
												obj_t BgL_nodez00_1950;

												BgL_nodez00_1950 =
													BGl_treezd2ze3nodez31zz__rgc_treez00
													(BgL_arg1296z00_1340);
												{	/* Rgc/rgctree.scm 220 */
													obj_t BgL_firstposz00_1951;

													BgL_firstposz00_1951 =
														STRUCT_REF(((obj_t) BgL_nodez00_1950), (int) (0L));
													{	/* Rgc/rgctree.scm 221 */
														obj_t BgL_lastposz00_1952;

														BgL_lastposz00_1952 =
															STRUCT_REF(
															((obj_t) BgL_nodez00_1950), (int) (1L));
														{	/* Rgc/rgctree.scm 222 */
															obj_t BgL_nullablezf3zf3_1953;

															BgL_nullablezf3zf3_1953 =
																STRUCT_REF(
																((obj_t) BgL_nodez00_1950), (int) (2L));
															{	/* Rgc/rgctree.scm 223 */

																{	/* Rgc/rgctree.scm 229 */
																	obj_t BgL_zc3z04anonymousza31302ze3z87_2251;

																	BgL_zc3z04anonymousza31302ze3z87_2251 =
																		MAKE_FX_PROCEDURE
																		(BGl_z62zc3z04anonymousza31302ze3ze5zz__rgc_treez00,
																		(int) (1L), (int) (3L));
																	PROCEDURE_SET
																		(BgL_zc3z04anonymousza31302ze3z87_2251,
																		(int) (0L), BgL_nullablezf3zf3_1953);
																	PROCEDURE_SET
																		(BgL_zc3z04anonymousza31302ze3z87_2251,
																		(int) (1L), BgL_arg1293z00_1338);
																	PROCEDURE_SET
																		(BgL_zc3z04anonymousza31302ze3z87_2251,
																		(int) (2L), BgL_arg1295z00_1339);
																	BGl_forzd2eachzd2rgcsetz00zz__rgc_setz00
																		(BgL_zc3z04anonymousza31302ze3z87_2251,
																		BgL_firstposz00_1951);
																}
																{	/* Rgc/rgctree.scm 232 */
																	obj_t BgL_zc3z04anonymousza31323ze3z87_2250;

																	BgL_zc3z04anonymousza31323ze3z87_2250 =
																		MAKE_FX_PROCEDURE
																		(BGl_z62zc3z04anonymousza31323ze3ze5zz__rgc_treez00,
																		(int) (1L), (int) (2L));
																	PROCEDURE_SET
																		(BgL_zc3z04anonymousza31323ze3z87_2250,
																		(int) (0L), BgL_arg1293z00_1338);
																	PROCEDURE_SET
																		(BgL_zc3z04anonymousza31323ze3z87_2250,
																		(int) (1L), BgL_arg1295z00_1339);
																	BGl_forzd2eachzd2rgcsetz00zz__rgc_setz00
																		(BgL_zc3z04anonymousza31323ze3z87_2250,
																		BgL_lastposz00_1952);
																}
																return BgL_nodez00_1950;
															}
														}
													}
												}
											}
										}
									else
										{	/* Rgc/rgctree.scm 218 */
											return
												BGl_errorz00zz__errorz00(BFALSE,
												BGl_string1750z00zz__rgc_treez00, BgL_exprz00_28);
										}
								}
							else
								{	/* Rgc/rgctree.scm 218 */
									return
										BGl_errorz00zz__errorz00(BFALSE,
										BGl_string1750z00zz__rgc_treez00, BgL_exprz00_28);
								}
						}
					else
						{	/* Rgc/rgctree.scm 218 */
							return
								BGl_errorz00zz__errorz00(BFALSE,
								BGl_string1750z00zz__rgc_treez00, BgL_exprz00_28);
						}
				}
			else
				{	/* Rgc/rgctree.scm 218 */
					return
						BGl_errorz00zz__errorz00(BFALSE, BGl_string1750z00zz__rgc_treez00,
						BgL_exprz00_28);
				}
		}

	}



/* &<@anonymous:1323> */
	obj_t BGl_z62zc3z04anonymousza31323ze3ze5zz__rgc_treez00(obj_t
		BgL_envz00_2252, obj_t BgL_iz00_2255)
	{
		{	/* Rgc/rgctree.scm 231 */
			return
				BGl_submatchzd2stopzd2addz12z12zz__rgc_treez00(BgL_iz00_2255,
				PROCEDURE_REF(BgL_envz00_2252,
					(int) (0L)), PROCEDURE_REF(BgL_envz00_2252, (int) (1L)));
		}

	}



/* &<@anonymous:1302> */
	obj_t BGl_z62zc3z04anonymousza31302ze3ze5zz__rgc_treez00(obj_t
		BgL_envz00_2256, obj_t BgL_iz00_2260)
	{
		{	/* Rgc/rgctree.scm 228 */
			return
				BGl_submatchzd2startzd2addz12z12zz__rgc_treez00(BgL_iz00_2260,
				PROCEDURE_REF(BgL_envz00_2256,
					(int) (0L)),
				PROCEDURE_REF(BgL_envz00_2256,
					(int) (1L)), PROCEDURE_REF(BgL_envz00_2256, (int) (2L)));
		}

	}



/* init-followpos! */
	obj_t BGl_initzd2followposz12zc0zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 250 */
			{	/* Rgc/rgctree.scm 251 */
				obj_t BgL_followposz00_1357;

				BgL_followposz00_1357 =
					make_vector(
					(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00), BUNSPEC);
				{
					long BgL_iz00_1973;

					BgL_iz00_1973 = 0L;
				BgL_loopz00_1972:
					if (
						((long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00) ==
							BgL_iz00_1973))
						{	/* Rgc/rgctree.scm 253 */
							return (BGl_za2followposza2z00zz__rgc_treez00 =
								BgL_followposz00_1357, BUNSPEC);
						}
					else
						{	/* Rgc/rgctree.scm 253 */
							VECTOR_SET(BgL_followposz00_1357, BgL_iz00_1973,
								BGl_makezd2rgcsetzd2zz__rgc_setz00(
									(long) CINT(BGl_za2positionzd2numberza2zd2zz__rgc_treez00)));
							{
								long BgL_iz00_2738;

								BgL_iz00_2738 = (BgL_iz00_1973 + 1L);
								BgL_iz00_1973 = BgL_iz00_2738;
								goto BgL_loopz00_1972;
							}
						}
				}
			}
		}

	}



/* submatch-start-add! */
	obj_t BGl_submatchzd2startzd2addz12z12zz__rgc_treez00(obj_t
		BgL_positionz00_32, obj_t BgL_nullablezf3zf3_33, obj_t BgL_matchz00_34,
		obj_t BgL_submatchz00_35)
	{
		{	/* Rgc/rgctree.scm 273 */
			{	/* Rgc/rgctree.scm 274 */
				obj_t BgL_cellz00_1367;

				BgL_cellz00_1367 =
					VECTOR_REF(BGl_za2submatchesza2z00zz__rgc_treez00,
					(long) CINT(BgL_positionz00_32));
				if (PAIRP(BgL_cellz00_1367))
					{	/* Rgc/rgctree.scm 279 */
						obj_t BgL_arg1334z00_1369;

						{	/* Rgc/rgctree.scm 279 */
							obj_t BgL_arg1335z00_1370;
							obj_t BgL_arg1336z00_1371;

							{	/* Rgc/rgctree.scm 279 */
								obj_t BgL_list1337z00_1372;

								{	/* Rgc/rgctree.scm 279 */
									obj_t BgL_arg1338z00_1373;

									{	/* Rgc/rgctree.scm 279 */
										obj_t BgL_arg1339z00_1374;

										BgL_arg1339z00_1374 =
											MAKE_YOUNG_PAIR(BgL_submatchz00_35, BNIL);
										BgL_arg1338z00_1373 =
											MAKE_YOUNG_PAIR(BgL_matchz00_34, BgL_arg1339z00_1374);
									}
									BgL_list1337z00_1372 =
										MAKE_YOUNG_PAIR(BgL_nullablezf3zf3_33, BgL_arg1338z00_1373);
								}
								BgL_arg1335z00_1370 = BgL_list1337z00_1372;
							}
							BgL_arg1336z00_1371 = CAR(BgL_cellz00_1367);
							BgL_arg1334z00_1369 =
								MAKE_YOUNG_PAIR(BgL_arg1335z00_1370, BgL_arg1336z00_1371);
						}
						return SET_CAR(BgL_cellz00_1367, BgL_arg1334z00_1369);
					}
				else
					{	/* Rgc/rgctree.scm 278 */
						obj_t BgL_arg1341z00_1375;

						{	/* Rgc/rgctree.scm 278 */
							obj_t BgL_arg1342z00_1376;

							{	/* Rgc/rgctree.scm 278 */
								obj_t BgL_arg1343z00_1377;

								{	/* Rgc/rgctree.scm 278 */
									obj_t BgL_list1345z00_1379;

									{	/* Rgc/rgctree.scm 278 */
										obj_t BgL_arg1346z00_1380;

										{	/* Rgc/rgctree.scm 278 */
											obj_t BgL_arg1347z00_1381;

											BgL_arg1347z00_1381 =
												MAKE_YOUNG_PAIR(BgL_submatchz00_35, BNIL);
											BgL_arg1346z00_1380 =
												MAKE_YOUNG_PAIR(BgL_matchz00_34, BgL_arg1347z00_1381);
										}
										BgL_list1345z00_1379 =
											MAKE_YOUNG_PAIR(BgL_nullablezf3zf3_33,
											BgL_arg1346z00_1380);
									}
									BgL_arg1343z00_1377 = BgL_list1345z00_1379;
								}
								{	/* Rgc/rgctree.scm 278 */
									obj_t BgL_list1344z00_1378;

									BgL_list1344z00_1378 =
										MAKE_YOUNG_PAIR(BgL_arg1343z00_1377, BNIL);
									BgL_arg1342z00_1376 = BgL_list1344z00_1378;
								}
							}
							BgL_arg1341z00_1375 = MAKE_YOUNG_PAIR(BgL_arg1342z00_1376, BNIL);
						}
						return
							VECTOR_SET(BGl_za2submatchesza2z00zz__rgc_treez00,
							(long) CINT(BgL_positionz00_32), BgL_arg1341z00_1375);
		}}}

	}



/* submatch-stop-add! */
	obj_t BGl_submatchzd2stopzd2addz12z12zz__rgc_treez00(obj_t BgL_positionz00_36,
		obj_t BgL_matchz00_37, obj_t BgL_submatchz00_38)
	{
		{	/* Rgc/rgctree.scm 284 */
			{	/* Rgc/rgctree.scm 285 */
				obj_t BgL_cellz00_1382;

				BgL_cellz00_1382 =
					VECTOR_REF(BGl_za2submatchesza2z00zz__rgc_treez00,
					(long) CINT(BgL_positionz00_36));
				if (PAIRP(BgL_cellz00_1382))
					{	/* Rgc/rgctree.scm 290 */
						obj_t BgL_arg1349z00_1384;

						{	/* Rgc/rgctree.scm 290 */
							obj_t BgL_arg1351z00_1385;
							obj_t BgL_arg1352z00_1386;

							BgL_arg1351z00_1385 =
								MAKE_YOUNG_PAIR(BgL_matchz00_37, BgL_submatchz00_38);
							BgL_arg1352z00_1386 = CDR(BgL_cellz00_1382);
							BgL_arg1349z00_1384 =
								MAKE_YOUNG_PAIR(BgL_arg1351z00_1385, BgL_arg1352z00_1386);
						}
						return SET_CDR(BgL_cellz00_1382, BgL_arg1349z00_1384);
					}
				else
					{	/* Rgc/rgctree.scm 289 */
						obj_t BgL_arg1353z00_1387;

						{	/* Rgc/rgctree.scm 289 */
							obj_t BgL_arg1355z00_1388;

							{	/* Rgc/rgctree.scm 289 */
								obj_t BgL_arg1356z00_1389;

								BgL_arg1356z00_1389 =
									MAKE_YOUNG_PAIR(BgL_matchz00_37, BgL_submatchz00_38);
								{	/* Rgc/rgctree.scm 289 */
									obj_t BgL_list1357z00_1390;

									BgL_list1357z00_1390 =
										MAKE_YOUNG_PAIR(BgL_arg1356z00_1389, BNIL);
									BgL_arg1355z00_1388 = BgL_list1357z00_1390;
								}
							}
							BgL_arg1353z00_1387 = MAKE_YOUNG_PAIR(BNIL, BgL_arg1355z00_1388);
						}
						return
							VECTOR_SET(BGl_za2submatchesza2z00zz__rgc_treez00,
							(long) CINT(BgL_positionz00_36), BgL_arg1353z00_1387);
		}}}

	}



/* reset-tree! */
	BGL_EXPORTED_DEF obj_t BGl_resetzd2treez12zc0zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 295 */
			BGl_za2followposza2z00zz__rgc_treez00 = BUNSPEC;
			BGl_za2positionsza2z00zz__rgc_treez00 = BUNSPEC;
			BGl_za2submatchesza2z00zz__rgc_treez00 = BUNSPEC;
			return (BGl_za2positionzd2numberza2zd2zz__rgc_treez00 = BUNSPEC, BUNSPEC);
		}

	}



/* &reset-tree! */
	obj_t BGl_z62resetzd2treez12za2zz__rgc_treez00(obj_t BgL_envz00_2261)
	{
		{	/* Rgc/rgctree.scm 295 */
			return BGl_resetzd2treez12zc0zz__rgc_treez00();
		}

	}



/* print-followpos */
	BGL_EXPORTED_DEF obj_t BGl_printzd2followposzd2zz__rgc_treez00(obj_t
		BgL_fpz00_39)
	{
		{	/* Rgc/rgctree.scm 304 */
			{	/* Rgc/rgctree.scm 305 */
				obj_t BgL_port1092z00_1391;

				{	/* Rgc/rgctree.scm 305 */
					obj_t BgL_tmpz00_2771;

					BgL_tmpz00_2771 = BGL_CURRENT_DYNAMIC_ENV();
					BgL_port1092z00_1391 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2771);
				}
				bgl_display_string(BGl_string1754z00zz__rgc_treez00,
					BgL_port1092z00_1391);
				bgl_display_char(((unsigned char) 10), BgL_port1092z00_1391);
			}
			{	/* Rgc/rgctree.scm 306 */
				obj_t BgL_port1093z00_1392;

				{	/* Rgc/rgctree.scm 306 */
					obj_t BgL_tmpz00_2776;

					BgL_tmpz00_2776 = BGL_CURRENT_DYNAMIC_ENV();
					BgL_port1093z00_1392 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2776);
				}
				bgl_display_string(BGl_string1755z00zz__rgc_treez00,
					BgL_port1093z00_1392);
				bgl_display_obj(BINT(VECTOR_LENGTH(((obj_t) BgL_fpz00_39))),
					BgL_port1093z00_1392);
				bgl_display_char(((unsigned char) 10), BgL_port1093z00_1392);
			} BGl_list1756z00zz__rgc_treez00;
			{	/* Rgc/rgctree.scm 313 */
				obj_t BgL_port1094z00_1394;

				{	/* Rgc/rgctree.scm 313 */
					obj_t BgL_tmpz00_2785;

					BgL_tmpz00_2785 = BGL_CURRENT_DYNAMIC_ENV();
					BgL_port1094z00_1394 = BGL_ENV_CURRENT_OUTPUT_PORT(BgL_tmpz00_2785);
				}
				bgl_display_string(BGl_string1801z00zz__rgc_treez00,
					BgL_port1094z00_1394);
				return bgl_display_char(((unsigned char) 10), BgL_port1094z00_1394);
		}}

	}



/* &print-followpos */
	obj_t BGl_z62printzd2followposzb0zz__rgc_treez00(obj_t BgL_envz00_2262,
		obj_t BgL_fpz00_2263)
	{
		{	/* Rgc/rgctree.scm 304 */
			return BGl_printzd2followposzd2zz__rgc_treez00(BgL_fpz00_2263);
		}

	}



/* print-node */
	BGL_EXPORTED_DEF obj_t BGl_printzd2nodezd2zz__rgc_treez00(obj_t
		BgL_nodez00_40)
	{
		{	/* Rgc/rgctree.scm 318 */
			return BGl_symbol1802z00zz__rgc_treez00;
		}

	}



/* &print-node */
	obj_t BGl_z62printzd2nodezb0zz__rgc_treez00(obj_t BgL_envz00_2264,
		obj_t BgL_nodez00_2265)
	{
		{	/* Rgc/rgctree.scm 318 */
			return BGl_printzd2nodezd2zz__rgc_treez00(BgL_nodez00_2265);
		}

	}



/* object-init */
	obj_t BGl_objectzd2initzd2zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			return BUNSPEC;
		}

	}



/* generic-init */
	obj_t BGl_genericzd2initzd2zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			return BUNSPEC;
		}

	}



/* method-init */
	obj_t BGl_methodzd2initzd2zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			return BUNSPEC;
		}

	}



/* imported-modules-init */
	obj_t BGl_importedzd2moduleszd2initz00zz__rgc_treez00(void)
	{
		{	/* Rgc/rgctree.scm 14 */
			BGl_modulezd2initializa7ationz75zz__rgc_setz00(225075643L,
				BSTRING_TO_STRING(BGl_string1804z00zz__rgc_treez00));
			BGl_modulezd2initializa7ationz75zz__rgc_configz00(428274736L,
				BSTRING_TO_STRING(BGl_string1804z00zz__rgc_treez00));
			return
				BGl_modulezd2initializa7ationz75zz__errorz00(88804785L,
				BSTRING_TO_STRING(BGl_string1804z00zz__rgc_treez00));
		}

	}

#ifdef __cplusplus
}
#endif
