/*===========================================================================*/
/*   (Match/compiler.scm)                                                    */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -O4 -mklib -cc gcc-2.95 -fsharing -q -s -copt -DBGL_NO_PIC -unsafe -c Match/compiler.scm -indent -o objs/obj_u/Match/compiler.c)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>
#include <signal.h>

static obj_t BGl_symbol3688z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_extendza2z72z72za2zz__match_compilerz00(obj_t, obj_t);
extern bool_t BGl_2ze3ze3zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_compilezd2structzd2patz00zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3685z00zz__match_compilerz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__match_compilerz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__match_s2cfunz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__match_descriptionsz00(long, char *);
static obj_t BGl_symbol3682z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3681z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3678z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3677z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3675z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza32129ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3674z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza31464ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
extern obj_t BGl_patternzd2variableszd2zz__match_descriptionsz00(obj_t);
static obj_t BGl_symbol3673z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3672z00zz__match_compilerz00 = BUNSPEC;
extern obj_t BGl_extendzd2vectorzd2zz__match_descriptionsz00(obj_t, obj_t, obj_t);
static obj_t BGl_symbol3671z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3670z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3669z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3668z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3667z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3666z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3664z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_succeszd2conszd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3662z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3661z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_list3638z00zz__match_compilerz00 = BUNSPEC;
extern obj_t BGl_assqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_symbol3660z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3659z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3658z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3657z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3653z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3652z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3651z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3650z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3649z00zz__match_compilerz00 = BUNSPEC;
extern long bgl_list_length(obj_t);
static obj_t BGl_symbol3648z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3647z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_rze2initze2zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3646z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3645z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3644z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza32196ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_symbol3643z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3642z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza32028ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_symbol3641z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3639z00zz__match_compilerz00 = BUNSPEC;
extern obj_t BGl_morezd2precisezf3z21zz__match_descriptionsz00(obj_t, obj_t);
static obj_t BGl_integersz72z72zz__match_compilerz00(long, long);
static obj_t BGl_unfoldz00zz__match_compilerz00(obj_t, obj_t, obj_t);
static obj_t BGl_cnstzd2initzd2zz__match_compilerz00();
extern bool_t BGl_2ze3zd3z30zz__r4_numbers_6_5z00(obj_t, obj_t);
extern bool_t bigloo_strcmp(obj_t, obj_t);
static obj_t BGl__mze2initze2zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_list3691z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_list3692z00zz__match_compilerz00 = BUNSPEC;
extern obj_t string_to_symbol(char *);
static obj_t BGl_compilezd2vectorzd2beginz00zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_extendza2z72zd0zz__match_compilerz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_pcompilez00zz__match_compilerz00(obj_t);
static obj_t BGl_zc3anonymousza31410ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_vectorzd2pluszd2zz__match_descriptionsz00(obj_t, obj_t, obj_t);
static obj_t BGl_compilezd2vectorzd2consz00zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t c_substring(obj_t, int, int);
static obj_t BGl_zc3anonymousza31411ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31370ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_compilez00zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_jimzd2gensymzd2zz__match_s2cfunz00;
extern obj_t BGl_patternzd2minuszd2zz__match_descriptionsz00(obj_t, obj_t);
extern obj_t string_append(obj_t, obj_t);
static obj_t BGl_instanciatezd2tryzd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza31801ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl__pcompilez00zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_buildzd2atomzd2equalityzd2testzd2zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31372ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31970ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31655ze3z83zz__match_compilerz00(obj_t, obj_t);
extern obj_t make_vector(int, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zz__match_compilerz00();
static obj_t BGl_zc3anonymousza32007ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza31415ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza32176ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_compilezd2timeszd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_atomzf3zf3zz__match_s2cfunz00(obj_t);
static obj_t BGl_buildzd2letzd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_compilezd2varzd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern bool_t BGl_equalzf3zf3zz__r4_equivalence_6_2z00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31452ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_patternzd2cdrzd2zz__match_descriptionsz00(obj_t);
extern obj_t BGl_compatiblezf3zf3zz__match_descriptionsz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31379ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza31380ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31633ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
extern bool_t BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(obj_t, obj_t);
extern obj_t BGl_patternzd2carzd2zz__match_descriptionsz00(obj_t);
static obj_t BGl_buildzd2ifzd2zz__match_compilerz00(obj_t, obj_t, obj_t);
static obj_t BGl_compilezd2orzd2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza31739ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_countzd2occurrenceszd2zz__match_compilerz00(obj_t, obj_t, long);
static obj_t BGl_zc3anonymousza31384ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_zc3anonymousza31457ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_mze2initze2zz__match_compilerz00(obj_t);
static obj_t BGl_zc3anonymousza32018ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31741ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl__za7ze2initz45zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza32083ze3z83zz__match_compilerz00(obj_t, obj_t);
static obj_t BGl_dze2initze2zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_toplevelzd2initzd2zz__match_compilerz00();
static obj_t BGl_zc3anonymousza31670ze3z83zz__match_compilerz00(obj_t, obj_t);
extern obj_t BGl_2zb2zb2zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza32053ze3z83zz__match_compilerz00(obj_t, obj_t);
extern obj_t BGl_patternzd2pluszd2zz__match_descriptionsz00(obj_t, obj_t);
extern obj_t BGl_2zd2zd2zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl__kze2initze2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3698z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3697z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza31639ze3z83zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3695z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3693z00zz__match_compilerz00 = BUNSPEC;
static bool_t BGl_isDirectCallzf3zf3zz__match_compilerz00(obj_t);
static obj_t BGl_symbol3690z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_symbol3689z00zz__match_compilerz00 = BUNSPEC;
static obj_t BGl_compileza2_3281za2zz__match_compilerz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t *__cnst;


DEFINE_STATIC_PROCEDURE( BGl_kze2initzd2envz30zz__match_compilerz00, BgL_bgl__kza7e2initza7e2za7za7__match_compilerza7003707za7, BGl__kze2initze2zz__match_compilerz00, 0L, 3 );
DEFINE_STRING( BGl_string3696z00zz__match_compilerz00, BgL_bgl_string3696za700za7za7__match_compilerza7003708z00, "No current repetition named", 27 );
DEFINE_STRING( BGl_string3694z00zz__match_compilerz00, BgL_bgl_string3694za700za7za7__match_compilerza7003709z00, "?", 1 );
DEFINE_STRING( BGl_string3687z00zz__match_compilerz00, BgL_bgl_string3687za700za7za7__match_compilerza7003710z00, "TRY-", 4 );
DEFINE_STRING( BGl_string3686z00zz__match_compilerz00, BgL_bgl_string3686za700za7za7__match_compilerza7003711z00, "G-", 2 );
DEFINE_STRING( BGl_string3684z00zz__match_compilerz00, BgL_bgl_string3684za700za7za7__match_compilerza7003712z00, "CDR-", 4 );
DEFINE_STRING( BGl_string3683z00zz__match_compilerz00, BgL_bgl_string3683za700za7za7__match_compilerza7003713z00, "CAR-", 4 );
DEFINE_STRING( BGl_string3680z00zz__match_compilerz00, BgL_bgl_string3680za700za7za7__match_compilerza7003714z00, "TAG", 3 );
DEFINE_STRING( BGl_string3679z00zz__match_compilerz00, BgL_bgl_string3679za700za7za7__match_compilerza7003715z00, "KAP", 3 );
DEFINE_STRING( BGl_string3676z00zz__match_compilerz00, BgL_bgl_string3676za700za7za7__match_compilerza7003716z00, "KAP-", 4 );
DEFINE_STRING( BGl_string3665z00zz__match_compilerz00, BgL_bgl_string3665za700za7za7__match_compilerza7003717z00, "Unrecognized pattern", 20 );
DEFINE_STRING( BGl_string3663z00zz__match_compilerz00, BgL_bgl_string3663za700za7za7__match_compilerza7003718z00, "Not yet allowed", 15 );
DEFINE_STRING( BGl_string3656z00zz__match_compilerz00, BgL_bgl_string3656za700za7za7__match_compilerza7003719z00, " *** ", 5 );
DEFINE_STRING( BGl_string3655z00zz__match_compilerz00, BgL_bgl_string3655za700za7za7__match_compilerza7003720z00, "Incorrect pattern: ", 19 );
DEFINE_STRING( BGl_string3654z00zz__match_compilerz00, BgL_bgl_string3654za700za7za7__match_compilerza7003721z00, "Tree not yet allowed", 20 );
DEFINE_STRING( BGl_string3640z00zz__match_compilerz00, BgL_bgl_string3640za700za7za7__match_compilerza7003722z00, "E-", 2 );
DEFINE_EXPORT_PROCEDURE( BGl_pcompilezd2envzd2zz__match_compilerz00, BgL_bgl__pcompileza700za7za7__match_compilerza7003723z00, BGl__pcompilez00zz__match_compilerz00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_za7ze2initzd2envz97zz__match_compilerz00, BgL_bgl__za7a7za7e2initza745za7za7__match_compilerza7003724z00, BGl__za7ze2initz45zz__match_compilerz00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_mze2initzd2envz30zz__match_compilerz00, BgL_bgl__mza7e2initza7e2za7za7__match_compilerza7003725za7, BGl__mze2initze2zz__match_compilerz00, 0L, 1 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__match_compilerz00(long BgL_checksumz00_2690, char * BgL_fromz00_2691)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__match_compilerz00))
{ 
BGl_requirezd2initializa7ationz75zz__match_compilerz00 = 
BBOOL(((bool_t)0)); 
BGl_cnstzd2initzd2zz__match_compilerz00(); 
BGl_importedzd2moduleszd2initz00zz__match_compilerz00(); 
BGl_toplevelzd2initzd2zz__match_compilerz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zz__match_compilerz00()
{ AN_OBJECT;
{ /* ./Match/compiler.scm 26 */
BGl_symbol3639z00zz__match_compilerz00 = 
string_to_symbol("any"); 
BGl_list3638z00zz__match_compilerz00 = 
MAKE_PAIR(BGl_symbol3639z00zz__match_compilerz00, BNIL); 
BGl_symbol3641z00zz__match_compilerz00 = 
string_to_symbol("lambda"); 
BGl_symbol3642z00zz__match_compilerz00 = 
string_to_symbol("check"); 
BGl_symbol3643z00zz__match_compilerz00 = 
string_to_symbol("if"); 
BGl_symbol3644z00zz__match_compilerz00 = 
string_to_symbol("quote"); 
BGl_symbol3645z00zz__match_compilerz00 = 
string_to_symbol("var"); 
BGl_symbol3646z00zz__match_compilerz00 = 
string_to_symbol("not"); 
BGl_symbol3647z00zz__match_compilerz00 = 
string_to_symbol("or"); 
BGl_symbol3648z00zz__match_compilerz00 = 
string_to_symbol("tagged-or"); 
BGl_symbol3649z00zz__match_compilerz00 = 
string_to_symbol("and"); 
BGl_symbol3650z00zz__match_compilerz00 = 
string_to_symbol("cons"); 
BGl_symbol3651z00zz__match_compilerz00 = 
string_to_symbol("pair?"); 
BGl_symbol3652z00zz__match_compilerz00 = 
string_to_symbol("times"); 
BGl_symbol3653z00zz__match_compilerz00 = 
string_to_symbol("tree"); 
BGl_symbol3657z00zz__match_compilerz00 = 
string_to_symbol("hole"); 
BGl_symbol3658z00zz__match_compilerz00 = 
string_to_symbol("vector-begin"); 
BGl_symbol3659z00zz__match_compilerz00 = 
string_to_symbol("vector-end"); 
BGl_symbol3660z00zz__match_compilerz00 = 
string_to_symbol("vector-any"); 
BGl_symbol3661z00zz__match_compilerz00 = 
string_to_symbol("vector-cons"); 
BGl_symbol3662z00zz__match_compilerz00 = 
string_to_symbol("vector-times"); 
BGl_symbol3664z00zz__match_compilerz00 = 
string_to_symbol("struct-pat"); 
BGl_symbol3666z00zz__match_compilerz00 = 
string_to_symbol("eq?"); 
BGl_symbol3667z00zz__match_compilerz00 = 
string_to_symbol("vector-length"); 
BGl_symbol3668z00zz__match_compilerz00 = 
string_to_symbol("null?"); 
BGl_symbol3669z00zz__match_compilerz00 = 
string_to_symbol("flonum?"); 
BGl_symbol3670z00zz__match_compilerz00 = 
string_to_symbol("=fl"); 
BGl_symbol3671z00zz__match_compilerz00 = 
string_to_symbol("number?"); 
BGl_symbol3672z00zz__match_compilerz00 = 
string_to_symbol("="); 
BGl_symbol3673z00zz__match_compilerz00 = 
string_to_symbol("string?"); 
BGl_symbol3674z00zz__match_compilerz00 = 
string_to_symbol("string=?"); 
BGl_symbol3675z00zz__match_compilerz00 = 
string_to_symbol("equal?"); 
BGl_symbol3677z00zz__match_compilerz00 = 
string_to_symbol("labels"); 
BGl_symbol3678z00zz__match_compilerz00 = 
string_to_symbol("dummy"); 
BGl_symbol3681z00zz__match_compilerz00 = 
string_to_symbol("unbound"); 
BGl_symbol3682z00zz__match_compilerz00 = 
string_to_symbol("let"); 
BGl_symbol3685z00zz__match_compilerz00 = 
string_to_symbol("letrec"); 
BGl_symbol3688z00zz__match_compilerz00 = 
string_to_symbol("vector"); 
BGl_symbol3689z00zz__match_compilerz00 = 
string_to_symbol(">="); 
BGl_symbol3690z00zz__match_compilerz00 = 
string_to_symbol("vector?"); 
BGl_list3692z00zz__match_compilerz00 = 
MAKE_PAIR(BGl_symbol3688z00zz__match_compilerz00, BNIL); 
{ /* ./Match/compiler.scm 357 */
obj_t BgL_auxz00_2739;
BgL_auxz00_2739 = 
MAKE_PAIR(BGl_list3692z00zz__match_compilerz00, BNIL); 
BGl_list3691z00zz__match_compilerz00 = 
MAKE_PAIR(BGl_symbol3646z00zz__match_compilerz00, BgL_auxz00_2739); } 
BGl_symbol3693z00zz__match_compilerz00 = 
string_to_symbol("vector-ref"); 
BGl_symbol3695z00zz__match_compilerz00 = 
string_to_symbol("struct-ref"); 
BGl_symbol3697z00zz__match_compilerz00 = 
string_to_symbol("car"); 
return ( 
BGl_symbol3698z00zz__match_compilerz00 = 
string_to_symbol("cdr"), BUNSPEC) ;} 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zz__match_compilerz00()
{ AN_OBJECT;
{ /* ./Match/compiler.scm 26 */
BGl_dze2initze2zz__match_compilerz00 = BGl_list3638z00zz__match_compilerz00; 
return ( 
BGl_rze2initze2zz__match_compilerz00 = BNIL, BUNSPEC) ;} 
}



/* pcompile */
BGL_EXPORTED_DEF obj_t BGl_pcompilez00zz__match_compilerz00(obj_t BgL_fz00_1)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 56 */
{ /* ./Match/compiler.scm 57 */
obj_t BgL_sz00_575;
BgL_sz00_575 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3640z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 58 */
obj_t BgL_arg1014z00_576;obj_t BgL_arg1015z00_577;
BgL_arg1014z00_576 = BGl_symbol3641z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 58 */
obj_t BgL_arg1018z00_578;obj_t BgL_arg1019z00_579;
BgL_arg1018z00_578 = 
MAKE_PAIR(BgL_sz00_575, BNIL); 
{ /* ./Match/compiler.scm 58 */
obj_t BgL_auxz00_2749;
BgL_auxz00_2749 = 
BGl_compilez00zz__match_compilerz00(BgL_fz00_1, BgL_sz00_575, BNIL, BGl_mze2initzd2envz30zz__match_compilerz00, BGl_kze2initzd2envz30zz__match_compilerz00, BGl_za7ze2initzd2envz97zz__match_compilerz00, BGl_dze2initze2zz__match_compilerz00); 
BgL_arg1019z00_579 = 
MAKE_PAIR(BgL_auxz00_2749, BNIL); } 
BgL_arg1015z00_577 = 
MAKE_PAIR(BgL_arg1018z00_578, BgL_arg1019z00_579); } 
return 
MAKE_PAIR(BgL_arg1014z00_576, BgL_arg1015z00_577);} } } 
}



/* _pcompile */
obj_t BGl__pcompilez00zz__match_compilerz00(obj_t BgL_envz00_2423, obj_t BgL_fz00_2424)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 56 */
return 
BGl_pcompilez00zz__match_compilerz00(BgL_fz00_2424);} 
}



/* compile */
obj_t BGl_compilez00zz__match_compilerz00(obj_t BgL_fz00_2, obj_t BgL_ez00_3, obj_t BgL_rz00_4, obj_t BgL_mz00_5, obj_t BgL_kz00_6, obj_t BgL_za7za7_7, obj_t BgL_dz00_8)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 62 */
BGl_compilez00zz__match_compilerz00:
{ /* ./Match/compiler.scm 64 */
bool_t BgL_testz00_2755;
{ /* ./Match/compiler.scm 64 */
obj_t BgL_auxz00_2756;
BgL_auxz00_2756 = 
BGl_morezd2precisezf3z21zz__match_descriptionsz00(BgL_dz00_8, BgL_fz00_2); 
BgL_testz00_2755 = 
CBOOL(BgL_auxz00_2756); } 
if(BgL_testz00_2755)
{ /* ./Match/compiler.scm 64 */
return 
PROCEDURE_ENTRY(BgL_kz00_6)(BgL_kz00_6, BgL_rz00_4, BgL_za7za7_7, BgL_dz00_8, BEOA);}  else 
{ /* ./Match/compiler.scm 65 */
bool_t BgL_testz00_2761;
{ /* ./Match/compiler.scm 65 */
obj_t BgL_auxz00_2762;
BgL_auxz00_2762 = 
BGl_compatiblezf3zf3zz__match_descriptionsz00(BgL_dz00_8, BgL_fz00_2); 
BgL_testz00_2761 = 
CBOOL(BgL_auxz00_2762); } 
if(BgL_testz00_2761)
{ /* ./Match/compiler.scm 65 */
{ /* ./Match/compiler.scm 66 */
obj_t BgL_casezd2valuezd2_584;
BgL_casezd2valuezd2_584 = 
CAR(BgL_fz00_2); 
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3639z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 66 */
return 
PROCEDURE_ENTRY(BgL_kz00_6)(BgL_kz00_6, BgL_rz00_4, BgL_za7za7_7, BgL_dz00_8, BEOA);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3642z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1035z00_587;
{ /* ./Match/compiler.scm 68 */
obj_t BgL_auxz00_2772;
BgL_auxz00_2772 = 
CDR(BgL_fz00_2); 
BgL_arg1035z00_587 = 
CAR(BgL_auxz00_2772); } 
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1171z00_1473;obj_t BgL_arg1172z00_1474;
BgL_arg1171z00_1473 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1175z00_1475;obj_t BgL_arg1177z00_1476;
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1180z00_1477;
BgL_arg1180z00_1477 = 
MAKE_PAIR(BgL_ez00_3, BNIL); 
BgL_arg1175z00_1475 = 
MAKE_PAIR(BgL_arg1035z00_587, BgL_arg1180z00_1477); } 
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1184z00_1478;obj_t BgL_arg1187z00_1479;
BgL_arg1184z00_1478 = 
PROCEDURE_ENTRY(BgL_kz00_6)(BgL_kz00_6, BgL_rz00_4, BgL_za7za7_7, BgL_dz00_8, BEOA); 
{ /* ./Match/compiler.scm 68 */
obj_t BgL_arg1191z00_1480;
BgL_arg1191z00_1480 = 
PROCEDURE_ENTRY(BgL_za7za7_7)(BgL_za7za7_7, BgL_dz00_8, BEOA); 
BgL_arg1187z00_1479 = 
MAKE_PAIR(BgL_arg1191z00_1480, BNIL); } 
BgL_arg1177z00_1476 = 
MAKE_PAIR(BgL_arg1184z00_1478, BgL_arg1187z00_1479); } 
BgL_arg1172z00_1474 = 
MAKE_PAIR(BgL_arg1175z00_1475, BgL_arg1177z00_1476); } 
return 
MAKE_PAIR(BgL_arg1171z00_1473, BgL_arg1172z00_1474);} }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3644z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 69 */
obj_t BgL_arg1337z00_1489;obj_t BgL_arg1338z00_1490;obj_t BgL_arg1340z00_1491;
{ /* ./Match/compiler.scm 69 */
obj_t BgL_auxz00_2787;
{ /* ./Match/compiler.scm 69 */
obj_t BgL_auxz00_2788;
BgL_auxz00_2788 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2787 = 
CAR(BgL_auxz00_2788); } 
BgL_arg1337z00_1489 = 
BGl_buildzd2atomzd2equalityzd2testzd2zz__match_compilerz00(BgL_ez00_3, BgL_auxz00_2787); } 
{ /* ./Match/compiler.scm 69 */
obj_t BgL_arg1347z00_1493;
{ /* ./Match/compiler.scm 69 */
obj_t BgL_arg1352z00_1494;obj_t BgL_arg1354z00_1495;
BgL_arg1352z00_1494 = BGl_symbol3644z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 69 */
obj_t BgL_auxz00_2792;
{ /* ./Match/compiler.scm 69 */
obj_t BgL_auxz00_2793;
BgL_auxz00_2793 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2792 = 
CAR(BgL_auxz00_2793); } 
BgL_arg1354z00_1495 = 
MAKE_PAIR(BgL_auxz00_2792, BNIL); } 
BgL_arg1347z00_1493 = 
MAKE_PAIR(BgL_arg1352z00_1494, BgL_arg1354z00_1495); } 
BgL_arg1338z00_1490 = 
PROCEDURE_ENTRY(BgL_kz00_6)(BgL_kz00_6, BgL_rz00_4, BgL_za7za7_7, BgL_arg1347z00_1493, BEOA); } 
{ /* ./Match/compiler.scm 69 */
obj_t BgL_arg1362z00_1498;
BgL_arg1362z00_1498 = 
BGl_patternzd2minuszd2zz__match_descriptionsz00(BgL_dz00_8, BgL_fz00_2); 
BgL_arg1340z00_1491 = 
PROCEDURE_ENTRY(BgL_za7za7_7)(BgL_za7za7_7, BgL_arg1362z00_1498, BEOA); } 
return 
BGl_buildzd2ifzd2zz__match_compilerz00(BgL_arg1337z00_1489, BgL_arg1338z00_1490, BgL_arg1340z00_1491);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3645z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 70 */
obj_t BgL_auxz00_2806;
{ /* ./Match/compiler.scm 70 */
obj_t BgL_auxz00_2807;
BgL_auxz00_2807 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2806 = 
CAR(BgL_auxz00_2807); } 
return 
BGl_compilezd2varzd2zz__match_compilerz00(BgL_auxz00_2806, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3646z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 71 */
obj_t BgL_arg1047z00_592;
{ /* ./Match/compiler.scm 71 */
obj_t BgL_auxz00_2813;
BgL_auxz00_2813 = 
CDR(BgL_fz00_2); 
BgL_arg1047z00_592 = 
CAR(BgL_auxz00_2813); } 
{ /* ./Match/compiler.scm 71 */
obj_t BgL_zc3anonymousza31372ze3z83_2433;obj_t BgL_zc3anonymousza31370ze3z83_2434;
{ 
int BgL_auxz00_2818;int BgL_auxz00_2816;
BgL_auxz00_2818 = 
(int)(((long)3)); 
BgL_auxz00_2816 = 
(int)(((long)1)); 
BgL_zc3anonymousza31372ze3z83_2433 = 
make_fx_procedure(BGl_zc3anonymousza31372ze3z83zz__match_compilerz00, BgL_auxz00_2816, BgL_auxz00_2818); } 
{ 
int BgL_auxz00_2823;int BgL_auxz00_2821;
BgL_auxz00_2823 = 
(int)(((long)1)); 
BgL_auxz00_2821 = 
(int)(((long)3)); 
BgL_zc3anonymousza31370ze3z83_2434 = 
make_fx_procedure(BGl_zc3anonymousza31370ze3z83zz__match_compilerz00, BgL_auxz00_2821, BgL_auxz00_2823); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_2826;
BgL_auxz00_2826 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31372ze3z83_2433, BgL_auxz00_2826, BgL_kz00_6); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_2829;
BgL_auxz00_2829 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31372ze3z83_2433, BgL_auxz00_2829, BgL_rz00_4); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_2832;
BgL_auxz00_2832 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31372ze3z83_2433, BgL_auxz00_2832, BgL_za7za7_7); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_2835;
BgL_auxz00_2835 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31370ze3z83_2434, BgL_auxz00_2835, BgL_za7za7_7); } 
{ 
obj_t BgL_za7za7_2840;obj_t BgL_kz00_2839;obj_t BgL_fz00_2838;
BgL_fz00_2838 = BgL_arg1047z00_592; 
BgL_kz00_2839 = BgL_zc3anonymousza31370ze3z83_2434; 
BgL_za7za7_2840 = BgL_zc3anonymousza31372ze3z83_2433; 
BgL_za7za7_7 = BgL_za7za7_2840; 
BgL_kz00_6 = BgL_kz00_2839; 
BgL_fz00_2 = BgL_fz00_2838; 
goto BGl_compilez00zz__match_compilerz00;} } }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3647z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 72 */
obj_t BgL_auxz00_2847;obj_t BgL_auxz00_2843;
{ /* ./Match/compiler.scm 72 */
obj_t BgL_auxz00_2848;
{ /* ./Match/compiler.scm 72 */
obj_t BgL_auxz00_2849;
BgL_auxz00_2849 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2848 = 
CDR(BgL_auxz00_2849); } 
BgL_auxz00_2847 = 
CAR(BgL_auxz00_2848); } 
{ /* ./Match/compiler.scm 72 */
obj_t BgL_auxz00_2844;
BgL_auxz00_2844 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2843 = 
CAR(BgL_auxz00_2844); } 
return 
BGl_compilezd2orzd2zz__match_compilerz00(BgL_auxz00_2843, BgL_auxz00_2847, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3648z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 73 */
obj_t BgL_arg1059z00_597;obj_t BgL_arg1061z00_598;obj_t BgL_arg1064z00_599;
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2856;
BgL_auxz00_2856 = 
CDR(BgL_fz00_2); 
BgL_arg1059z00_597 = 
CAR(BgL_auxz00_2856); } 
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2859;
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2860;
BgL_auxz00_2860 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2859 = 
CDR(BgL_auxz00_2860); } 
BgL_arg1061z00_598 = 
CAR(BgL_auxz00_2859); } 
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2864;
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2865;
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_2866;
BgL_auxz00_2866 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2865 = 
CDR(BgL_auxz00_2866); } 
BgL_auxz00_2864 = 
CDR(BgL_auxz00_2865); } 
BgL_arg1064z00_599 = 
CAR(BgL_auxz00_2864); } 
{ /* ./Match/compiler.scm 73 */
obj_t BgL_za2varsza2z00_1565;
BgL_za2varsza2z00_1565 = 
BGl_patternzd2variableszd2zz__match_descriptionsz00(BgL_arg1059z00_597); 
{ /* ./Match/compiler.scm 73 */
obj_t BgL_zc3anonymousza31457ze3z83_2435;obj_t BgL_zc3anonymousza31452ze3z83_2436;
{ 
int BgL_auxz00_2874;int BgL_auxz00_2872;
BgL_auxz00_2874 = 
(int)(((long)6)); 
BgL_auxz00_2872 = 
(int)(((long)1)); 
BgL_zc3anonymousza31457ze3z83_2435 = 
make_fx_procedure(BGl_zc3anonymousza31457ze3z83zz__match_compilerz00, BgL_auxz00_2872, BgL_auxz00_2874); } 
{ 
int BgL_auxz00_2879;int BgL_auxz00_2877;
BgL_auxz00_2879 = 
(int)(((long)2)); 
BgL_auxz00_2877 = 
(int)(((long)3)); 
BgL_zc3anonymousza31452ze3z83_2436 = 
make_fx_procedure(BGl_zc3anonymousza31452ze3z83zz__match_compilerz00, BgL_auxz00_2877, BgL_auxz00_2879); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2882;
BgL_auxz00_2882 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2882, BgL_arg1064z00_599); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2885;
BgL_auxz00_2885 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2885, BgL_ez00_3); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2888;
BgL_auxz00_2888 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2888, BgL_rz00_4); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2891;
BgL_auxz00_2891 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2891, BgL_mz00_5); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2894;
BgL_auxz00_2894 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2894, BgL_kz00_6); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2897;
BgL_auxz00_2897 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31457ze3z83_2435, BgL_auxz00_2897, BgL_za7za7_7); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2900;
BgL_auxz00_2900 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31452ze3z83_2436, BgL_auxz00_2900, BgL_za2varsza2z00_1565); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_2903;
BgL_auxz00_2903 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31452ze3z83_2436, BgL_auxz00_2903, BgL_arg1061z00_598); } 
{ 
obj_t BgL_za7za7_2908;obj_t BgL_kz00_2907;obj_t BgL_fz00_2906;
BgL_fz00_2906 = BgL_arg1059z00_597; 
BgL_kz00_2907 = BgL_zc3anonymousza31452ze3z83_2436; 
BgL_za7za7_2908 = BgL_zc3anonymousza31457ze3z83_2435; 
BgL_za7za7_7 = BgL_za7za7_2908; 
BgL_kz00_6 = BgL_kz00_2907; 
BgL_fz00_2 = BgL_fz00_2906; 
goto BGl_compilez00zz__match_compilerz00;} } } }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3649z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 75 */
obj_t BgL_arg1073z00_601;obj_t BgL_arg1075z00_602;
{ /* ./Match/compiler.scm 75 */
obj_t BgL_auxz00_2911;
BgL_auxz00_2911 = 
CDR(BgL_fz00_2); 
BgL_arg1073z00_601 = 
CAR(BgL_auxz00_2911); } 
{ /* ./Match/compiler.scm 75 */
obj_t BgL_auxz00_2914;
{ /* ./Match/compiler.scm 75 */
obj_t BgL_auxz00_2915;
BgL_auxz00_2915 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2914 = 
CDR(BgL_auxz00_2915); } 
BgL_arg1075z00_602 = 
CAR(BgL_auxz00_2914); } 
{ /* ./Match/compiler.scm 75 */
bool_t BgL_testz00_2919;
{ /* ./Match/compiler.scm 75 */
obj_t BgL_auxz00_2920;
BgL_auxz00_2920 = 
BGl_compatiblezf3zf3zz__match_descriptionsz00(BgL_arg1073z00_601, BgL_arg1075z00_602); 
BgL_testz00_2919 = 
CBOOL(BgL_auxz00_2920); } 
if(BgL_testz00_2919)
{ /* ./Match/compiler.scm 75 */
obj_t BgL_zc3anonymousza31464ze3z83_2437;
{ 
int BgL_auxz00_2925;int BgL_auxz00_2923;
BgL_auxz00_2925 = 
(int)(((long)4)); 
BgL_auxz00_2923 = 
(int)(((long)3)); 
BgL_zc3anonymousza31464ze3z83_2437 = 
make_fx_procedure(BGl_zc3anonymousza31464ze3z83zz__match_compilerz00, BgL_auxz00_2923, BgL_auxz00_2925); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_2928;
BgL_auxz00_2928 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31464ze3z83_2437, BgL_auxz00_2928, BgL_arg1075z00_602); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_2931;
BgL_auxz00_2931 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31464ze3z83_2437, BgL_auxz00_2931, BgL_ez00_3); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_2934;
BgL_auxz00_2934 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31464ze3z83_2437, BgL_auxz00_2934, BgL_mz00_5); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_2937;
BgL_auxz00_2937 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31464ze3z83_2437, BgL_auxz00_2937, BgL_kz00_6); } 
{ 
obj_t BgL_kz00_2941;obj_t BgL_fz00_2940;
BgL_fz00_2940 = BgL_arg1073z00_601; 
BgL_kz00_2941 = BgL_zc3anonymousza31464ze3z83_2437; 
BgL_kz00_6 = BgL_kz00_2941; 
BgL_fz00_2 = BgL_fz00_2940; 
goto BGl_compilez00zz__match_compilerz00;} }  else 
{ /* ./Match/compiler.scm 75 */
return 
PROCEDURE_ENTRY(BgL_za7za7_7)(BgL_za7za7_7, BgL_dz00_8, BEOA);} } }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3650z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1081z00_604;obj_t BgL_arg1083z00_605;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_auxz00_2946;
BgL_auxz00_2946 = 
CDR(BgL_fz00_2); 
BgL_arg1081z00_604 = 
CAR(BgL_auxz00_2946); } 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_auxz00_2949;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_auxz00_2950;
BgL_auxz00_2950 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2949 = 
CDR(BgL_auxz00_2950); } 
BgL_arg1083z00_605 = 
CAR(BgL_auxz00_2949); } 
{ /* ./Match/compiler.scm 76 */
bool_t BgL_testz00_2954;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_auxz00_2955;
BgL_auxz00_2955 = 
CAR(BgL_dz00_8); 
BgL_testz00_2954 = 
(BgL_auxz00_2955==BGl_symbol3650z00zz__match_compilerz00); } 
if(BgL_testz00_2954)
{ /* ./Match/compiler.scm 76 */
return 
BGl_succeszd2conszd2zz__match_compilerz00(BgL_arg1081z00_604, BgL_arg1083z00_605, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1587z00_1616;obj_t BgL_arg1588z00_1617;
BgL_arg1587z00_1616 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1591z00_1618;obj_t BgL_arg1593z00_1619;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1596z00_1620;obj_t BgL_arg1597z00_1621;
BgL_arg1596z00_1620 = BGl_symbol3651z00zz__match_compilerz00; 
BgL_arg1597z00_1621 = 
MAKE_PAIR(BgL_ez00_3, BNIL); 
BgL_arg1591z00_1618 = 
MAKE_PAIR(BgL_arg1596z00_1620, BgL_arg1597z00_1621); } 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1601z00_1622;obj_t BgL_arg1602z00_1623;
BgL_arg1601z00_1622 = 
BGl_succeszd2conszd2zz__match_compilerz00(BgL_arg1081z00_604, BgL_arg1083z00_605, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8); 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1606z00_1624;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1610z00_1626;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1613z00_1627;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_list1616z00_1628;
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1618z00_1629;obj_t BgL_arg1619z00_1630;
BgL_arg1618z00_1629 = BGl_symbol3650z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 76 */
obj_t BgL_arg1622z00_1631;obj_t BgL_arg1623z00_1632;
BgL_arg1622z00_1631 = BGl_list3638z00zz__match_compilerz00; 
BgL_arg1623z00_1632 = 
MAKE_PAIR(BGl_list3638z00zz__match_compilerz00, BNIL); 
BgL_arg1619z00_1630 = 
MAKE_PAIR(BgL_arg1622z00_1631, BgL_arg1623z00_1632); } 
BgL_list1616z00_1628 = 
MAKE_PAIR(BgL_arg1618z00_1629, BgL_arg1619z00_1630); } 
BgL_arg1613z00_1627 = BgL_list1616z00_1628; } 
BgL_arg1610z00_1626 = 
BGl_patternzd2minuszd2zz__match_descriptionsz00(BgL_dz00_8, BgL_arg1613z00_1627); } 
BgL_arg1606z00_1624 = 
PROCEDURE_ENTRY(BgL_za7za7_7)(BgL_za7za7_7, BgL_arg1610z00_1626, BEOA); } 
BgL_arg1602z00_1623 = 
MAKE_PAIR(BgL_arg1606z00_1624, BNIL); } 
BgL_arg1593z00_1619 = 
MAKE_PAIR(BgL_arg1601z00_1622, BgL_arg1602z00_1623); } 
BgL_arg1588z00_1617 = 
MAKE_PAIR(BgL_arg1591z00_1618, BgL_arg1593z00_1619); } 
return 
MAKE_PAIR(BgL_arg1587z00_1616, BgL_arg1588z00_1617);} } }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3652z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 77 */
obj_t BgL_auxz00_2984;obj_t BgL_auxz00_2978;obj_t BgL_auxz00_2974;
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2985;
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2986;
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2987;
BgL_auxz00_2987 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2986 = 
CDR(BgL_auxz00_2987); } 
BgL_auxz00_2985 = 
CDR(BgL_auxz00_2986); } 
BgL_auxz00_2984 = 
CAR(BgL_auxz00_2985); } 
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2979;
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2980;
BgL_auxz00_2980 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2979 = 
CDR(BgL_auxz00_2980); } 
BgL_auxz00_2978 = 
CAR(BgL_auxz00_2979); } 
{ /* ./Match/compiler.scm 78 */
obj_t BgL_auxz00_2975;
BgL_auxz00_2975 = 
CDR(BgL_fz00_2); 
BgL_auxz00_2974 = 
CAR(BgL_auxz00_2975); } 
return 
BGl_compilezd2timeszd2zz__match_compilerz00(BgL_auxz00_2974, BgL_auxz00_2978, BgL_auxz00_2984, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3653z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 79 */
obj_t BgL_list1819z00_1684;
BgL_list1819z00_1684 = 
MAKE_PAIR(BGl_string3654z00zz__match_compilerz00, BNIL); 
FAILURE(BGl_string3655z00zz__match_compilerz00,BgL_list1819z00_1684,BGl_string3656z00zz__match_compilerz00);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3657z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 81 */
obj_t BgL_arg1107z00_615;
{ /* ./Match/compiler.scm 81 */
obj_t BgL_auxz00_2999;
BgL_auxz00_2999 = 
CDR(BgL_fz00_2); 
BgL_arg1107z00_615 = 
CAR(BgL_auxz00_2999); } 
{ /* ./Match/compiler.scm 81 */
obj_t BgL_arg1810z00_1700;obj_t BgL_arg1811z00_1701;
{ /* ./Match/compiler.scm 81 */
obj_t BgL_fun1815z00_1702;
BgL_fun1815z00_1702 = 
PROCEDURE_ENTRY(BgL_mz00_5)(BgL_mz00_5, BgL_arg1107z00_615, BEOA); 
BgL_arg1810z00_1700 = 
PROCEDURE_ENTRY(BgL_fun1815z00_1702)(BgL_fun1815z00_1702, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8, BEOA); } 
BgL_arg1811z00_1701 = 
MAKE_PAIR(BgL_ez00_3, BNIL); 
return 
MAKE_PAIR(BgL_arg1810z00_1700, BgL_arg1811z00_1701);} }  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3658z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 83 */
obj_t BgL_auxz00_3014;obj_t BgL_auxz00_3010;
{ /* ./Match/compiler.scm 83 */
obj_t BgL_auxz00_3015;
{ /* ./Match/compiler.scm 83 */
obj_t BgL_auxz00_3016;
BgL_auxz00_3016 = 
CDR(BgL_fz00_2); 
BgL_auxz00_3015 = 
CDR(BgL_auxz00_3016); } 
BgL_auxz00_3014 = 
CAR(BgL_auxz00_3015); } 
{ /* ./Match/compiler.scm 83 */
obj_t BgL_auxz00_3011;
BgL_auxz00_3011 = 
CDR(BgL_fz00_2); 
BgL_auxz00_3010 = 
CAR(BgL_auxz00_3011); } 
return 
BGl_compilezd2vectorzd2beginz00zz__match_compilerz00(BgL_auxz00_3010, BgL_auxz00_3014, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3659z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 85 */
obj_t BgL_zc3anonymousza32028ze3z83_2438;
{ 
int BgL_auxz00_3025;int BgL_auxz00_3023;
BgL_auxz00_3025 = 
(int)(((long)5)); 
BgL_auxz00_3023 = 
(int)(((long)1)); 
BgL_zc3anonymousza32028ze3z83_2438 = 
make_fx_procedure(BGl_zc3anonymousza32028ze3z83zz__match_compilerz00, BgL_auxz00_3023, BgL_auxz00_3025); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3028;
BgL_auxz00_3028 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32028ze3z83_2438, BgL_auxz00_3028, BgL_ez00_3); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3031;
BgL_auxz00_3031 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32028ze3z83_2438, BgL_auxz00_3031, BgL_kz00_6); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3034;
BgL_auxz00_3034 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32028ze3z83_2438, BgL_auxz00_3034, BgL_rz00_4); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3037;
BgL_auxz00_3037 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza32028ze3z83_2438, BgL_auxz00_3037, BgL_za7za7_7); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3040;
BgL_auxz00_3040 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza32028ze3z83_2438, BgL_auxz00_3040, BgL_dz00_8); } 
return BgL_zc3anonymousza32028ze3z83_2438;}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3660z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 86 */
obj_t BgL_zc3anonymousza32053ze3z83_2439;
{ 
int BgL_auxz00_3047;int BgL_auxz00_3045;
BgL_auxz00_3047 = 
(int)(((long)4)); 
BgL_auxz00_3045 = 
(int)(((long)1)); 
BgL_zc3anonymousza32053ze3z83_2439 = 
make_fx_procedure(BGl_zc3anonymousza32053ze3z83zz__match_compilerz00, BgL_auxz00_3045, BgL_auxz00_3047); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3050;
BgL_auxz00_3050 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32053ze3z83_2439, BgL_auxz00_3050, BgL_kz00_6); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3053;
BgL_auxz00_3053 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32053ze3z83_2439, BgL_auxz00_3053, BgL_rz00_4); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3056;
BgL_auxz00_3056 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32053ze3z83_2439, BgL_auxz00_3056, BgL_za7za7_7); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3059;
BgL_auxz00_3059 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza32053ze3z83_2439, BgL_auxz00_3059, BgL_dz00_8); } 
return BgL_zc3anonymousza32053ze3z83_2439;}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3661z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 87 */
obj_t BgL_auxz00_3068;obj_t BgL_auxz00_3064;
{ /* ./Match/compiler.scm 87 */
obj_t BgL_auxz00_3069;
{ /* ./Match/compiler.scm 87 */
obj_t BgL_auxz00_3070;
BgL_auxz00_3070 = 
CDR(BgL_fz00_2); 
BgL_auxz00_3069 = 
CDR(BgL_auxz00_3070); } 
BgL_auxz00_3068 = 
CAR(BgL_auxz00_3069); } 
{ /* ./Match/compiler.scm 87 */
obj_t BgL_auxz00_3065;
BgL_auxz00_3065 = 
CDR(BgL_fz00_2); 
BgL_auxz00_3064 = 
CAR(BgL_auxz00_3065); } 
return 
BGl_compilezd2vectorzd2consz00zz__match_compilerz00(BgL_auxz00_3064, BgL_auxz00_3068, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3662z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 89 */
obj_t BgL_list2056z00_1776;
BgL_list2056z00_1776 = 
MAKE_PAIR(BGl_string3663z00zz__match_compilerz00, BNIL); 
FAILURE(BGl_string3655z00zz__match_compilerz00,BgL_list2056z00_1776,BGl_string3656z00zz__match_compilerz00);}  else 
{ /* ./Match/compiler.scm 66 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_584, BGl_symbol3664z00zz__match_compilerz00))
{ /* ./Match/compiler.scm 66 */
return 
BGl_compilezd2structzd2patz00zz__match_compilerz00(BgL_fz00_2, BgL_ez00_3, BgL_rz00_4, BgL_mz00_5, BgL_kz00_6, BgL_za7za7_7, BgL_dz00_8);}  else 
{ /* ./Match/compiler.scm 92 */
obj_t BgL_list1140z00_629;
{ /* ./Match/compiler.scm 92 */
obj_t BgL_arg1144z00_631;
BgL_arg1144z00_631 = 
MAKE_PAIR(BgL_fz00_2, BNIL); 
BgL_list1140z00_629 = 
MAKE_PAIR(BGl_string3665z00zz__match_compilerz00, BgL_arg1144z00_631); } 
FAILURE(BGl_string3655z00zz__match_compilerz00,BgL_list1140z00_629,BGl_string3656z00zz__match_compilerz00);} } } } } } } } } } } } } } } } } } } }  else 
{ /* ./Match/compiler.scm 65 */
return 
PROCEDURE_ENTRY(BgL_za7za7_7)(BgL_za7za7_7, BgL_dz00_8, BEOA);} } } } 
}



/* <anonymous:1372> */
obj_t BGl_zc3anonymousza31372ze3z83zz__match_compilerz00(obj_t BgL_envz00_2440, obj_t BgL_d2z00_2444)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 136 */
{ /* ./Match/compiler.scm 71 */
obj_t BgL_kz00_2441;obj_t BgL_rz00_2442;obj_t BgL_za7za7_2443;
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_3087;
BgL_auxz00_3087 = 
(int)(((long)0)); 
BgL_kz00_2441 = 
PROCEDURE_REF(BgL_envz00_2440, BgL_auxz00_3087); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_3090;
BgL_auxz00_3090 = 
(int)(((long)1)); 
BgL_rz00_2442 = 
PROCEDURE_REF(BgL_envz00_2440, BgL_auxz00_3090); } 
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_3093;
BgL_auxz00_3093 = 
(int)(((long)2)); 
BgL_za7za7_2443 = 
PROCEDURE_REF(BgL_envz00_2440, BgL_auxz00_3093); } 
{ 
obj_t BgL_d2z00_1527;
BgL_d2z00_1527 = BgL_d2z00_2444; 
return 
PROCEDURE_ENTRY(BgL_kz00_2441)(BgL_kz00_2441, BgL_rz00_2442, BgL_za7za7_2443, BgL_d2z00_1527, BEOA);} } } 
}



/* <anonymous:1370> */
obj_t BGl_zc3anonymousza31370ze3z83zz__match_compilerz00(obj_t BgL_envz00_2445, obj_t BgL_r2z00_2447, obj_t BgL_za72za7_2448, obj_t BgL_d2z00_2449)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 135 */
{ /* ./Match/compiler.scm 71 */
obj_t BgL_za7za7_2446;
{ /* ./Match/compiler.scm 71 */
int BgL_auxz00_3098;
BgL_auxz00_3098 = 
(int)(((long)0)); 
BgL_za7za7_2446 = 
PROCEDURE_REF(BgL_envz00_2445, BgL_auxz00_3098); } 
return 
PROCEDURE_ENTRY(BgL_za7za7_2446)(BgL_za7za7_2446, BgL_d2z00_2449, BEOA);} } 
}



/* <anonymous:1457> */
obj_t BGl_zc3anonymousza31457ze3z83zz__match_compilerz00(obj_t BgL_envz00_2450, obj_t BgL_dz00_2457)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 192 */
{ /* ./Match/compiler.scm 73 */
obj_t BgL_f2z00_2451;obj_t BgL_ez00_2452;obj_t BgL_rz00_2453;obj_t BgL_mz00_2454;obj_t BgL_kz00_2455;obj_t BgL_za7za7_2456;
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3103;
BgL_auxz00_3103 = 
(int)(((long)0)); 
BgL_f2z00_2451 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3103); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3106;
BgL_auxz00_3106 = 
(int)(((long)1)); 
BgL_ez00_2452 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3106); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3109;
BgL_auxz00_3109 = 
(int)(((long)2)); 
BgL_rz00_2453 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3109); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3112;
BgL_auxz00_3112 = 
(int)(((long)3)); 
BgL_mz00_2454 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3112); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3115;
BgL_auxz00_3115 = 
(int)(((long)4)); 
BgL_kz00_2455 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3115); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3118;
BgL_auxz00_3118 = 
(int)(((long)5)); 
BgL_za7za7_2456 = 
PROCEDURE_REF(BgL_envz00_2450, BgL_auxz00_3118); } 
{ 
obj_t BgL_dz00_1572;
BgL_dz00_1572 = BgL_dz00_2457; 
return 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2451, BgL_ez00_2452, BgL_rz00_2453, BgL_mz00_2454, BgL_kz00_2455, BgL_za7za7_2456, BgL_dz00_1572);} } } 
}



/* <anonymous:1452> */
obj_t BGl_zc3anonymousza31452ze3z83zz__match_compilerz00(obj_t BgL_envz00_2458, obj_t BgL_rz00_2461, obj_t BgL_za7za7_2462, obj_t BgL_cz00_2463)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 190 */
{ /* ./Match/compiler.scm 73 */
obj_t BgL_za2varsza2z00_2459;obj_t BgL_t1z00_2460;
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3122;
BgL_auxz00_3122 = 
(int)(((long)0)); 
BgL_za2varsza2z00_2459 = 
PROCEDURE_REF(BgL_envz00_2458, BgL_auxz00_3122); } 
{ /* ./Match/compiler.scm 73 */
int BgL_auxz00_3125;
BgL_auxz00_3125 = 
(int)(((long)1)); 
BgL_t1z00_2460 = 
PROCEDURE_REF(BgL_envz00_2458, BgL_auxz00_3125); } 
{ 
obj_t BgL_rz00_1568;obj_t BgL_za7za7_1569;obj_t BgL_cz00_1570;
BgL_rz00_1568 = BgL_rz00_2461; 
BgL_za7za7_1569 = BgL_za7za7_2462; 
BgL_cz00_1570 = BgL_cz00_2463; 
{ /* ./Match/compiler.scm 73 */
obj_t BgL_auxz00_3128;
BgL_auxz00_3128 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_za2varsza2z00_2459, BNIL); 
return 
MAKE_PAIR(BgL_t1z00_2460, BgL_auxz00_3128);} } } } 
}



/* <anonymous:1464> */
obj_t BGl_zc3anonymousza31464ze3z83zz__match_compilerz00(obj_t BgL_envz00_2464, obj_t BgL_r2z00_2469, obj_t BgL_za72za7_2470, obj_t BgL_c2z00_2471)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 199 */
{ /* ./Match/compiler.scm 75 */
obj_t BgL_f2z00_2465;obj_t BgL_ez00_2466;obj_t BgL_mz00_2467;obj_t BgL_kz00_2468;
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_3131;
BgL_auxz00_3131 = 
(int)(((long)0)); 
BgL_f2z00_2465 = 
PROCEDURE_REF(BgL_envz00_2464, BgL_auxz00_3131); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_3134;
BgL_auxz00_3134 = 
(int)(((long)1)); 
BgL_ez00_2466 = 
PROCEDURE_REF(BgL_envz00_2464, BgL_auxz00_3134); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_3137;
BgL_auxz00_3137 = 
(int)(((long)2)); 
BgL_mz00_2467 = 
PROCEDURE_REF(BgL_envz00_2464, BgL_auxz00_3137); } 
{ /* ./Match/compiler.scm 75 */
int BgL_auxz00_3140;
BgL_auxz00_3140 = 
(int)(((long)3)); 
BgL_kz00_2468 = 
PROCEDURE_REF(BgL_envz00_2464, BgL_auxz00_3140); } 
{ 
obj_t BgL_r2z00_1594;obj_t BgL_za72za7_1595;obj_t BgL_c2z00_1596;
BgL_r2z00_1594 = BgL_r2z00_2469; 
BgL_za72za7_1595 = BgL_za72za7_2470; 
BgL_c2z00_1596 = BgL_c2z00_2471; 
return 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2465, BgL_ez00_2466, BgL_r2z00_1594, BgL_mz00_2467, BgL_kz00_2468, BgL_za72za7_1595, BgL_c2z00_1596);} } } 
}



/* <anonymous:2028> */
obj_t BGl_zc3anonymousza32028ze3z83zz__match_compilerz00(obj_t BgL_envz00_2472, obj_t BgL_iz00_2478)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 378 */
{ /* ./Match/compiler.scm 85 */
obj_t BgL_ez00_2473;obj_t BgL_kz00_2474;obj_t BgL_rz00_2475;obj_t BgL_za7za7_2476;obj_t BgL_dz00_2477;
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3144;
BgL_auxz00_3144 = 
(int)(((long)0)); 
BgL_ez00_2473 = 
PROCEDURE_REF(BgL_envz00_2472, BgL_auxz00_3144); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3147;
BgL_auxz00_3147 = 
(int)(((long)1)); 
BgL_kz00_2474 = 
PROCEDURE_REF(BgL_envz00_2472, BgL_auxz00_3147); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3150;
BgL_auxz00_3150 = 
(int)(((long)2)); 
BgL_rz00_2475 = 
PROCEDURE_REF(BgL_envz00_2472, BgL_auxz00_3150); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3153;
BgL_auxz00_3153 = 
(int)(((long)3)); 
BgL_za7za7_2476 = 
PROCEDURE_REF(BgL_envz00_2472, BgL_auxz00_3153); } 
{ /* ./Match/compiler.scm 85 */
int BgL_auxz00_3156;
BgL_auxz00_3156 = 
(int)(((long)4)); 
BgL_dz00_2477 = 
PROCEDURE_REF(BgL_envz00_2472, BgL_auxz00_3156); } 
{ 
obj_t BgL_iz00_1720;
BgL_iz00_1720 = BgL_iz00_2478; 
{ /* ./Match/compiler.scm 85 */
obj_t BgL_arg2030z00_1721;obj_t BgL_arg2032z00_1722;obj_t BgL_arg2033z00_1723;
{ /* ./Match/compiler.scm 85 */
obj_t BgL_arg2036z00_1724;obj_t BgL_arg2037z00_1725;
BgL_arg2036z00_1724 = BGl_symbol3666z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 85 */
obj_t BgL_arg2040z00_1726;
{ /* ./Match/compiler.scm 85 */
obj_t BgL_arg2043z00_1727;
{ /* ./Match/compiler.scm 85 */
obj_t BgL_arg2047z00_1729;obj_t BgL_arg2048z00_1730;
BgL_arg2047z00_1729 = BGl_symbol3667z00zz__match_compilerz00; 
BgL_arg2048z00_1730 = 
MAKE_PAIR(BgL_ez00_2473, BNIL); 
BgL_arg2043z00_1727 = 
MAKE_PAIR(BgL_arg2047z00_1729, BgL_arg2048z00_1730); } 
BgL_arg2040z00_1726 = 
MAKE_PAIR(BgL_arg2043z00_1727, BNIL); } 
BgL_arg2037z00_1725 = 
MAKE_PAIR(BgL_iz00_1720, BgL_arg2040z00_1726); } 
BgL_arg2030z00_1721 = 
MAKE_PAIR(BgL_arg2036z00_1724, BgL_arg2037z00_1725); } 
BgL_arg2032z00_1722 = 
PROCEDURE_ENTRY(BgL_kz00_2474)(BgL_kz00_2474, BgL_rz00_2475, BgL_za7za7_2476, BgL_dz00_2477, BEOA); 
BgL_arg2033z00_1723 = 
PROCEDURE_ENTRY(BgL_za7za7_2476)(BgL_za7za7_2476, BgL_dz00_2477, BEOA); 
return 
BGl_buildzd2ifzd2zz__match_compilerz00(BgL_arg2030z00_1721, BgL_arg2032z00_1722, BgL_arg2033z00_1723);} } } } 
}



/* <anonymous:2053> */
obj_t BGl_zc3anonymousza32053ze3z83zz__match_compilerz00(obj_t BgL_envz00_2479, obj_t BgL_iz00_2484)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 384 */
{ /* ./Match/compiler.scm 86 */
obj_t BgL_kz00_2480;obj_t BgL_rz00_2481;obj_t BgL_za7za7_2482;obj_t BgL_dz00_2483;
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3169;
BgL_auxz00_3169 = 
(int)(((long)0)); 
BgL_kz00_2480 = 
PROCEDURE_REF(BgL_envz00_2479, BgL_auxz00_3169); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3172;
BgL_auxz00_3172 = 
(int)(((long)1)); 
BgL_rz00_2481 = 
PROCEDURE_REF(BgL_envz00_2479, BgL_auxz00_3172); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3175;
BgL_auxz00_3175 = 
(int)(((long)2)); 
BgL_za7za7_2482 = 
PROCEDURE_REF(BgL_envz00_2479, BgL_auxz00_3175); } 
{ /* ./Match/compiler.scm 86 */
int BgL_auxz00_3178;
BgL_auxz00_3178 = 
(int)(((long)3)); 
BgL_dz00_2483 = 
PROCEDURE_REF(BgL_envz00_2479, BgL_auxz00_3178); } 
{ 
obj_t BgL_iz00_1738;
BgL_iz00_1738 = BgL_iz00_2484; 
return 
PROCEDURE_ENTRY(BgL_kz00_2480)(BgL_kz00_2480, BgL_rz00_2481, BgL_za7za7_2482, BgL_dz00_2483, BEOA);} } } 
}



/* build-atom-equality-test */
obj_t BGl_buildzd2atomzd2equalityzd2testzd2zz__match_compilerz00(obj_t BgL_ez00_22, obj_t BgL_constz00_23)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 108 */
if(
NULLP(BgL_constz00_23))
{ /* ./Match/compiler.scm 111 */
{ /* ./Match/compiler.scm 112 */
obj_t BgL_arg1197z00_642;obj_t BgL_arg1198z00_643;
BgL_arg1197z00_642 = BGl_symbol3668z00zz__match_compilerz00; 
BgL_arg1198z00_643 = 
MAKE_PAIR(BgL_ez00_22, BNIL); 
return 
MAKE_PAIR(BgL_arg1197z00_642, BgL_arg1198z00_643);} }  else 
{ /* ./Match/compiler.scm 113 */
bool_t BgL_test1201z00_644;
if(
INTEGERP(BgL_constz00_23))
{ /* ./Match/compiler.scm 113 */
BgL_test1201z00_644 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 113 */
if(
CHARP(BgL_constz00_23))
{ /* ./Match/compiler.scm 114 */
BgL_test1201z00_644 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 114 */
if(
BOOLEANP(BgL_constz00_23))
{ /* ./Match/compiler.scm 115 */
BgL_test1201z00_644 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 115 */
BgL_test1201z00_644 = 
SYMBOLP(BgL_constz00_23); } } } 
if(BgL_test1201z00_644)
{ /* ./Match/compiler.scm 113 */
{ /* ./Match/compiler.scm 117 */
obj_t BgL_arg1203z00_645;obj_t BgL_arg1204z00_646;
BgL_arg1203z00_645 = BGl_symbol3666z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 117 */
obj_t BgL_arg1207z00_647;
{ /* ./Match/compiler.scm 117 */
obj_t BgL_arg1210z00_648;
{ /* ./Match/compiler.scm 117 */
obj_t BgL_arg1214z00_650;obj_t BgL_arg1215z00_651;
BgL_arg1214z00_650 = BGl_symbol3644z00zz__match_compilerz00; 
BgL_arg1215z00_651 = 
MAKE_PAIR(BgL_constz00_23, BNIL); 
BgL_arg1210z00_648 = 
MAKE_PAIR(BgL_arg1214z00_650, BgL_arg1215z00_651); } 
BgL_arg1207z00_647 = 
MAKE_PAIR(BgL_arg1210z00_648, BNIL); } 
BgL_arg1204z00_646 = 
MAKE_PAIR(BgL_ez00_22, BgL_arg1207z00_647); } 
return 
MAKE_PAIR(BgL_arg1203z00_645, BgL_arg1204z00_646);} }  else 
{ /* ./Match/compiler.scm 118 */
bool_t BgL_test1218z00_652;
BgL_test1218z00_652 = 
REALP(BgL_constz00_23); 
if(BgL_test1218z00_652)
{ /* ./Match/compiler.scm 118 */
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1220z00_653;obj_t BgL_arg1221z00_654;
BgL_arg1220z00_653 = BGl_symbol3649z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1224z00_655;obj_t BgL_arg1225z00_656;
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1228z00_657;obj_t BgL_arg1229z00_658;
BgL_arg1228z00_657 = BGl_symbol3669z00zz__match_compilerz00; 
BgL_arg1229z00_658 = 
MAKE_PAIR(BgL_ez00_22, BNIL); 
BgL_arg1224z00_655 = 
MAKE_PAIR(BgL_arg1228z00_657, BgL_arg1229z00_658); } 
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1233z00_659;
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1237z00_661;obj_t BgL_arg1238z00_662;
BgL_arg1237z00_661 = BGl_symbol3670z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 119 */
obj_t BgL_arg1241z00_663;
BgL_arg1241z00_663 = 
MAKE_PAIR(BgL_constz00_23, BNIL); 
BgL_arg1238z00_662 = 
MAKE_PAIR(BgL_ez00_22, BgL_arg1241z00_663); } 
BgL_arg1233z00_659 = 
MAKE_PAIR(BgL_arg1237z00_661, BgL_arg1238z00_662); } 
BgL_arg1225z00_656 = 
MAKE_PAIR(BgL_arg1233z00_659, BNIL); } 
BgL_arg1221z00_654 = 
MAKE_PAIR(BgL_arg1224z00_655, BgL_arg1225z00_656); } 
return 
MAKE_PAIR(BgL_arg1220z00_653, BgL_arg1221z00_654);} }  else 
{ /* ./Match/compiler.scm 120 */
bool_t BgL_test1244z00_664;
if(
INTEGERP(BgL_constz00_23))
{ /* ./Match/compiler.scm 120 */
BgL_test1244z00_664 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 120 */
BgL_test1244z00_664 = BgL_test1218z00_652; } 
if(BgL_test1244z00_664)
{ /* ./Match/compiler.scm 120 */
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1246z00_665;obj_t BgL_arg1249z00_666;
BgL_arg1246z00_665 = BGl_symbol3649z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1252z00_667;obj_t BgL_arg1254z00_668;
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1258z00_669;obj_t BgL_arg1259z00_670;
BgL_arg1258z00_669 = BGl_symbol3671z00zz__match_compilerz00; 
BgL_arg1259z00_670 = 
MAKE_PAIR(BgL_ez00_22, BNIL); 
BgL_arg1252z00_667 = 
MAKE_PAIR(BgL_arg1258z00_669, BgL_arg1259z00_670); } 
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1265z00_671;
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1269z00_673;obj_t BgL_arg1270z00_674;
BgL_arg1269z00_673 = BGl_symbol3672z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 121 */
obj_t BgL_arg1273z00_675;
BgL_arg1273z00_675 = 
MAKE_PAIR(BgL_constz00_23, BNIL); 
BgL_arg1270z00_674 = 
MAKE_PAIR(BgL_ez00_22, BgL_arg1273z00_675); } 
BgL_arg1265z00_671 = 
MAKE_PAIR(BgL_arg1269z00_673, BgL_arg1270z00_674); } 
BgL_arg1254z00_668 = 
MAKE_PAIR(BgL_arg1265z00_671, BNIL); } 
BgL_arg1249z00_666 = 
MAKE_PAIR(BgL_arg1252z00_667, BgL_arg1254z00_668); } 
return 
MAKE_PAIR(BgL_arg1246z00_665, BgL_arg1249z00_666);} }  else 
{ /* ./Match/compiler.scm 120 */
if(
STRINGP(BgL_constz00_23))
{ /* ./Match/compiler.scm 122 */
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1278z00_677;obj_t BgL_arg1279z00_678;
BgL_arg1278z00_677 = BGl_symbol3649z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1282z00_679;obj_t BgL_arg1283z00_680;
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1286z00_681;obj_t BgL_arg1287z00_682;
BgL_arg1286z00_681 = BGl_symbol3673z00zz__match_compilerz00; 
BgL_arg1287z00_682 = 
MAKE_PAIR(BgL_ez00_22, BNIL); 
BgL_arg1282z00_679 = 
MAKE_PAIR(BgL_arg1286z00_681, BgL_arg1287z00_682); } 
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1291z00_683;
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1295z00_685;obj_t BgL_arg1296z00_686;
BgL_arg1295z00_685 = BGl_symbol3674z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 123 */
obj_t BgL_arg1299z00_687;
BgL_arg1299z00_687 = 
MAKE_PAIR(BgL_constz00_23, BNIL); 
BgL_arg1296z00_686 = 
MAKE_PAIR(BgL_ez00_22, BgL_arg1299z00_687); } 
BgL_arg1291z00_683 = 
MAKE_PAIR(BgL_arg1295z00_685, BgL_arg1296z00_686); } 
BgL_arg1283z00_680 = 
MAKE_PAIR(BgL_arg1291z00_683, BNIL); } 
BgL_arg1279z00_678 = 
MAKE_PAIR(BgL_arg1282z00_679, BgL_arg1283z00_680); } 
return 
MAKE_PAIR(BgL_arg1278z00_677, BgL_arg1279z00_678);} }  else 
{ /* ./Match/compiler.scm 122 */
if(
NULLP(BgL_constz00_23))
{ /* ./Match/compiler.scm 124 */
{ /* ./Match/compiler.scm 125 */
obj_t BgL_arg1304z00_689;obj_t BgL_arg1305z00_690;
BgL_arg1304z00_689 = BGl_symbol3668z00zz__match_compilerz00; 
BgL_arg1305z00_690 = 
MAKE_PAIR(BgL_ez00_22, BNIL); 
return 
MAKE_PAIR(BgL_arg1304z00_689, BgL_arg1305z00_690);} }  else 
{ /* ./Match/compiler.scm 124 */
{ /* ./Match/compiler.scm 127 */
obj_t BgL_arg1309z00_691;obj_t BgL_arg1310z00_692;
BgL_arg1309z00_691 = BGl_symbol3675z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 127 */
obj_t BgL_arg1313z00_693;
{ /* ./Match/compiler.scm 127 */
obj_t BgL_arg1316z00_694;
{ /* ./Match/compiler.scm 127 */
obj_t BgL_arg1320z00_696;obj_t BgL_arg1321z00_697;
BgL_arg1320z00_696 = BGl_symbol3644z00zz__match_compilerz00; 
BgL_arg1321z00_697 = 
MAKE_PAIR(BgL_constz00_23, BNIL); 
BgL_arg1316z00_694 = 
MAKE_PAIR(BgL_arg1320z00_696, BgL_arg1321z00_697); } 
BgL_arg1313z00_693 = 
MAKE_PAIR(BgL_arg1316z00_694, BNIL); } 
BgL_arg1310z00_692 = 
MAKE_PAIR(BgL_ez00_22, BgL_arg1313z00_693); } 
return 
MAKE_PAIR(BgL_arg1309z00_691, BgL_arg1310z00_692);} } } } } } } } 
}



/* compile-or */
obj_t BGl_compilezd2orzd2zz__match_compilerz00(obj_t BgL_f1z00_38, obj_t BgL_f2z00_39, obj_t BgL_ez00_40, obj_t BgL_rz00_41, obj_t BgL_mz00_42, obj_t BgL_kz00_43, obj_t BgL_za7za7_44, obj_t BgL_dz00_45)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 143 */
{ /* ./Match/compiler.scm 144 */
obj_t BgL_za2kza2z00_721;
BgL_za2kza2z00_721 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3676z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 144 */
obj_t BgL_za2varsza2z00_722;
BgL_za2varsza2z00_722 = 
BGl_patternzd2variableszd2zz__match_descriptionsz00(BgL_f1z00_38); 
{ /* ./Match/compiler.scm 145 */
obj_t BgL_za2callza2z00_723;
{ /* ./Match/compiler.scm 146 */
obj_t BgL_auxz00_3243;
BgL_auxz00_3243 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_za2varsza2z00_722, BNIL); 
BgL_za2callza2z00_723 = 
MAKE_PAIR(BgL_za2kza2z00_721, BgL_auxz00_3243); } 
{ /* ./Match/compiler.scm 146 */
obj_t BgL_successzd2formzd2_724;
{ /* ./Match/compiler.scm 147 */
obj_t BgL_arg1427z00_771;
BgL_arg1427z00_771 = 
BGl_extendza2z72z72za2zz__match_compilerz00(BgL_rz00_41, BgL_za2varsza2z00_722); 
BgL_successzd2formzd2_724 = 
PROCEDURE_ENTRY(BgL_kz00_43)(BgL_kz00_43, BgL_arg1427z00_771, BgL_za7za7_44, BgL_dz00_45, BEOA); } 
{ /* ./Match/compiler.scm 147 */

{ /* ./Match/compiler.scm 149 */
bool_t BgL_test1374z00_725;
if(
(BgL_successzd2formzd2_724==BFALSE))
{ /* ./Match/compiler.scm 149 */
BgL_test1374z00_725 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 149 */
if(
BGl_equalzf3zf3zz__r4_equivalence_6_2z00(
CDR(BgL_za2callza2z00_723), 
CDR(BgL_successzd2formzd2_724)))
{ /* ./Match/compiler.scm 151 */
BgL_test1374z00_725 = ((bool_t)1); }  else 
{ /* ./Match/compiler.scm 151 */
BgL_test1374z00_725 = 
BGl_isDirectCallzf3zf3zz__match_compilerz00(BgL_successzd2formzd2_724); } } 
if(BgL_test1374z00_725)
{ /* ./Match/compiler.scm 153 */
obj_t BgL_zc3anonymousza31380ze3z83_2486;obj_t BgL_zc3anonymousza31379ze3z83_2487;
{ 
int BgL_auxz00_3259;int BgL_auxz00_3257;
BgL_auxz00_3259 = 
(int)(((long)6)); 
BgL_auxz00_3257 = 
(int)(((long)1)); 
BgL_zc3anonymousza31380ze3z83_2486 = 
make_fx_procedure(BGl_zc3anonymousza31380ze3z83zz__match_compilerz00, BgL_auxz00_3257, BgL_auxz00_3259); } 
{ 
int BgL_auxz00_3264;int BgL_auxz00_3262;
BgL_auxz00_3264 = 
(int)(((long)1)); 
BgL_auxz00_3262 = 
(int)(((long)3)); 
BgL_zc3anonymousza31379ze3z83_2487 = 
make_fx_procedure(BGl_zc3anonymousza31379ze3z83zz__match_compilerz00, BgL_auxz00_3262, BgL_auxz00_3264); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3267;
BgL_auxz00_3267 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3267, BgL_successzd2formzd2_724); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3270;
BgL_auxz00_3270 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3270, BgL_f2z00_39); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3273;
BgL_auxz00_3273 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3273, BgL_ez00_40); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3276;
BgL_auxz00_3276 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3276, BgL_rz00_41); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3279;
BgL_auxz00_3279 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3279, BgL_mz00_42); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3282;
BgL_auxz00_3282 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31380ze3z83_2486, BgL_auxz00_3282, BgL_za7za7_44); } 
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3285;
BgL_auxz00_3285 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31379ze3z83_2487, BgL_auxz00_3285, BgL_successzd2formzd2_724); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f1z00_38, BgL_ez00_40, BgL_rz00_41, BgL_mz00_42, BgL_zc3anonymousza31379ze3z83_2487, BgL_zc3anonymousza31380ze3z83_2486, BgL_dz00_45);}  else 
{ /* ./Match/compiler.scm 159 */
obj_t BgL_resz00_742;
{ /* ./Match/compiler.scm 160 */
obj_t BgL_zc3anonymousza31411ze3z83_2489;obj_t BgL_zc3anonymousza31410ze3z83_2490;
{ 
int BgL_auxz00_3291;int BgL_auxz00_3289;
BgL_auxz00_3291 = 
(int)(((long)6)); 
BgL_auxz00_3289 = 
(int)(((long)1)); 
BgL_zc3anonymousza31411ze3z83_2489 = 
make_fx_procedure(BGl_zc3anonymousza31411ze3z83zz__match_compilerz00, BgL_auxz00_3289, BgL_auxz00_3291); } 
{ 
int BgL_auxz00_3296;int BgL_auxz00_3294;
BgL_auxz00_3296 = 
(int)(((long)1)); 
BgL_auxz00_3294 = 
(int)(((long)3)); 
BgL_zc3anonymousza31410ze3z83_2490 = 
make_fx_procedure(BGl_zc3anonymousza31410ze3z83zz__match_compilerz00, BgL_auxz00_3294, BgL_auxz00_3296); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3299;
BgL_auxz00_3299 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3299, BgL_za2callza2z00_723); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3302;
BgL_auxz00_3302 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3302, BgL_f2z00_39); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3305;
BgL_auxz00_3305 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3305, BgL_ez00_40); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3308;
BgL_auxz00_3308 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3308, BgL_rz00_41); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3311;
BgL_auxz00_3311 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3311, BgL_mz00_42); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3314;
BgL_auxz00_3314 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31411ze3z83_2489, BgL_auxz00_3314, BgL_za7za7_44); } 
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3317;
BgL_auxz00_3317 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31410ze3z83_2490, BgL_auxz00_3317, BgL_za2callza2z00_723); } 
BgL_resz00_742 = 
BGl_compilez00zz__match_compilerz00(BgL_f1z00_38, BgL_ez00_40, BgL_rz00_41, BgL_mz00_42, BgL_zc3anonymousza31410ze3z83_2490, BgL_zc3anonymousza31411ze3z83_2489, BgL_dz00_45); } 
if(
CBOOL(BgL_resz00_742))
{ /* ./Match/compiler.scm 168 */
obj_t BgL_arg1386z00_743;obj_t BgL_arg1387z00_744;
BgL_arg1386z00_743 = BGl_symbol3677z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 167 */
obj_t BgL_arg1390z00_745;obj_t BgL_arg1392z00_746;
{ /* ./Match/compiler.scm 167 */
obj_t BgL_arg1395z00_747;
{ /* ./Match/compiler.scm 167 */
obj_t BgL_arg1399z00_749;
{ /* ./Match/compiler.scm 167 */
obj_t BgL_arg1402z00_750;
BgL_arg1402z00_750 = 
MAKE_PAIR(BgL_successzd2formzd2_724, BNIL); 
BgL_arg1399z00_749 = 
MAKE_PAIR(BgL_za2varsza2z00_722, BgL_arg1402z00_750); } 
BgL_arg1395z00_747 = 
MAKE_PAIR(BgL_za2kza2z00_721, BgL_arg1399z00_749); } 
BgL_arg1390z00_745 = 
MAKE_PAIR(BgL_arg1395z00_747, BNIL); } 
BgL_arg1392z00_746 = 
MAKE_PAIR(BgL_resz00_742, BNIL); 
BgL_arg1387z00_744 = 
MAKE_PAIR(BgL_arg1390z00_745, BgL_arg1392z00_746); } 
return 
MAKE_PAIR(BgL_arg1386z00_743, BgL_arg1387z00_744);}  else 
{ /* ./Match/compiler.scm 166 */
return BgL_resz00_742;} } } } } } } } } 
}



/* extend*'' */
obj_t BGl_extendza2z72z72za2zz__match_compilerz00(obj_t BgL_rz00_2667, obj_t BgL_vza2za2_1832)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 449 */
if(
NULLP(BgL_vza2za2_1832))
{ /* ./Match/compiler.scm 147 */
return BgL_rz00_2667;}  else 
{ /* ./Match/compiler.scm 147 */
obj_t BgL_arg2166z00_1834;obj_t BgL_arg2167z00_1835;obj_t BgL_arg2168z00_1836;
BgL_arg2166z00_1834 = 
BGl_extendza2z72z72za2zz__match_compilerz00(BgL_rz00_2667, 
CDR(BgL_vza2za2_1832)); 
BgL_arg2167z00_1835 = 
CAR(BgL_vza2za2_1832); 
BgL_arg2168z00_1836 = BGl_symbol3678z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 147 */
obj_t BgL_arg2153z00_1844;obj_t BgL_arg2154z00_1845;
BgL_arg2153z00_1844 = 
MAKE_PAIR(BgL_arg2167z00_1835, BgL_arg2168z00_1836); 
BgL_arg2154z00_1845 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg2166z00_1834, BNIL); 
return 
MAKE_PAIR(BgL_arg2153z00_1844, BgL_arg2154z00_1845);} } } 
}



/* <anonymous:1380> */
obj_t BGl_zc3anonymousza31380ze3z83zz__match_compilerz00(obj_t BgL_envz00_2491, obj_t BgL_dz00_2498)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 154 */
{ /* ./Match/compiler.scm 156 */
obj_t BgL_successzd2formzd2_2492;obj_t BgL_f2z00_2493;obj_t BgL_ez00_2494;obj_t BgL_rz00_2495;obj_t BgL_mz00_2496;obj_t BgL_za7za7_2497;
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3338;
BgL_auxz00_3338 = 
(int)(((long)0)); 
BgL_successzd2formzd2_2492 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3338); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3341;
BgL_auxz00_3341 = 
(int)(((long)1)); 
BgL_f2z00_2493 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3341); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3344;
BgL_auxz00_3344 = 
(int)(((long)2)); 
BgL_ez00_2494 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3344); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3347;
BgL_auxz00_3347 = 
(int)(((long)3)); 
BgL_rz00_2495 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3347); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3350;
BgL_auxz00_3350 = 
(int)(((long)4)); 
BgL_mz00_2496 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3350); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3353;
BgL_auxz00_3353 = 
(int)(((long)5)); 
BgL_za7za7_2497 = 
PROCEDURE_REF(BgL_envz00_2491, BgL_auxz00_3353); } 
{ 
obj_t BgL_dz00_732;
BgL_dz00_732 = BgL_dz00_2498; 
{ /* ./Match/compiler.scm 156 */
obj_t BgL_zc3anonymousza31384ze3z83_2485;
{ 
int BgL_auxz00_3358;int BgL_auxz00_3356;
BgL_auxz00_3358 = 
(int)(((long)1)); 
BgL_auxz00_3356 = 
(int)(((long)3)); 
BgL_zc3anonymousza31384ze3z83_2485 = 
make_fx_procedure(BGl_zc3anonymousza31384ze3z83zz__match_compilerz00, BgL_auxz00_3356, BgL_auxz00_3358); } 
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3361;
BgL_auxz00_3361 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31384ze3z83_2485, BgL_auxz00_3361, BgL_successzd2formzd2_2492); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2493, BgL_ez00_2494, BgL_rz00_2495, BgL_mz00_2496, BgL_zc3anonymousza31384ze3z83_2485, BgL_za7za7_2497, BgL_dz00_732);} } } } 
}



/* <anonymous:1379> */
obj_t BGl_zc3anonymousza31379ze3z83zz__match_compilerz00(obj_t BgL_envz00_2499, obj_t BgL_rz00_2501, obj_t BgL_za7za7_2502, obj_t BgL_dz00_2503)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 153 */
{ /* ./Match/compiler.scm 153 */
int BgL_auxz00_3365;
BgL_auxz00_3365 = 
(int)(((long)0)); 
return 
PROCEDURE_REF(BgL_envz00_2499, BgL_auxz00_3365);} } 
}



/* <anonymous:1384> */
obj_t BGl_zc3anonymousza31384ze3z83zz__match_compilerz00(obj_t BgL_envz00_2504, obj_t BgL_rz00_2506, obj_t BgL_za7za7_2507, obj_t BgL_dz00_2508)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 156 */
{ /* ./Match/compiler.scm 156 */
int BgL_auxz00_3368;
BgL_auxz00_3368 = 
(int)(((long)0)); 
return 
PROCEDURE_REF(BgL_envz00_2504, BgL_auxz00_3368);} } 
}



/* <anonymous:1411> */
obj_t BGl_zc3anonymousza31411ze3z83zz__match_compilerz00(obj_t BgL_envz00_2509, obj_t BgL_dz00_2516)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 161 */
{ /* ./Match/compiler.scm 163 */
obj_t BgL_za2callza2z00_2510;obj_t BgL_f2z00_2511;obj_t BgL_ez00_2512;obj_t BgL_rz00_2513;obj_t BgL_mz00_2514;obj_t BgL_za7za7_2515;
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3371;
BgL_auxz00_3371 = 
(int)(((long)0)); 
BgL_za2callza2z00_2510 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3371); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3374;
BgL_auxz00_3374 = 
(int)(((long)1)); 
BgL_f2z00_2511 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3374); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3377;
BgL_auxz00_3377 = 
(int)(((long)2)); 
BgL_ez00_2512 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3377); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3380;
BgL_auxz00_3380 = 
(int)(((long)3)); 
BgL_rz00_2513 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3380); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3383;
BgL_auxz00_3383 = 
(int)(((long)4)); 
BgL_mz00_2514 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3383); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3386;
BgL_auxz00_3386 = 
(int)(((long)5)); 
BgL_za7za7_2515 = 
PROCEDURE_REF(BgL_envz00_2509, BgL_auxz00_3386); } 
{ 
obj_t BgL_dz00_757;
BgL_dz00_757 = BgL_dz00_2516; 
{ /* ./Match/compiler.scm 163 */
obj_t BgL_zc3anonymousza31415ze3z83_2488;
{ 
int BgL_auxz00_3391;int BgL_auxz00_3389;
BgL_auxz00_3391 = 
(int)(((long)1)); 
BgL_auxz00_3389 = 
(int)(((long)3)); 
BgL_zc3anonymousza31415ze3z83_2488 = 
make_fx_procedure(BGl_zc3anonymousza31415ze3z83zz__match_compilerz00, BgL_auxz00_3389, BgL_auxz00_3391); } 
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3394;
BgL_auxz00_3394 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31415ze3z83_2488, BgL_auxz00_3394, BgL_za2callza2z00_2510); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2511, BgL_ez00_2512, BgL_rz00_2513, BgL_mz00_2514, BgL_zc3anonymousza31415ze3z83_2488, BgL_za7za7_2515, BgL_dz00_757);} } } } 
}



/* <anonymous:1410> */
obj_t BGl_zc3anonymousza31410ze3z83zz__match_compilerz00(obj_t BgL_envz00_2517, obj_t BgL_rz00_2519, obj_t BgL_za7za7_2520, obj_t BgL_dz00_2521)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 160 */
{ /* ./Match/compiler.scm 160 */
int BgL_auxz00_3398;
BgL_auxz00_3398 = 
(int)(((long)0)); 
return 
PROCEDURE_REF(BgL_envz00_2517, BgL_auxz00_3398);} } 
}



/* <anonymous:1415> */
obj_t BGl_zc3anonymousza31415ze3z83zz__match_compilerz00(obj_t BgL_envz00_2522, obj_t BgL_rz00_2524, obj_t BgL_za7za7_2525, obj_t BgL_dz00_2526)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 163 */
{ /* ./Match/compiler.scm 163 */
int BgL_auxz00_3401;
BgL_auxz00_3401 = 
(int)(((long)0)); 
return 
PROCEDURE_REF(BgL_envz00_2522, BgL_auxz00_3401);} } 
}



/* isDirectCall? */
bool_t BGl_isDirectCallzf3zf3zz__match_compilerz00(obj_t BgL_ez00_46)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 174 */
if(
PAIRP(BgL_ez00_46))
{ /* ./Match/compiler.scm 176 */
obj_t BgL_prz00_774;
BgL_prz00_774 = 
CAR(BgL_ez00_46); 
if(
SYMBOLP(BgL_ez00_46))
{ /* ./Match/compiler.scm 178 */
obj_t BgL_sz00_776;
BgL_sz00_776 = 
SYMBOL_TO_STRING(BgL_prz00_774); 
{ /* ./Match/compiler.scm 179 */
bool_t BgL_testz00_3410;
{ /* ./Match/compiler.scm 179 */
long BgL_auxz00_3411;
{ /* ./Match/compiler.scm 179 */
int BgL_auxz00_3412;
BgL_auxz00_3412 = 
STRING_LENGTH(BgL_sz00_776); 
BgL_auxz00_3411 = 
(long)(BgL_auxz00_3412); } 
BgL_testz00_3410 = 
(BgL_auxz00_3411>((long)3)); } 
if(BgL_testz00_3410)
{ /* ./Match/compiler.scm 180 */
obj_t BgL_sz00_778;
{ /* ./Match/compiler.scm 180 */
int BgL_auxz00_3418;int BgL_auxz00_3416;
BgL_auxz00_3418 = 
(int)(((long)3)); 
BgL_auxz00_3416 = 
(int)(((long)0)); 
BgL_sz00_778 = 
c_substring(BgL_sz00_776, BgL_auxz00_3416, BgL_auxz00_3418); } 
{ /* ./Match/compiler.scm 181 */
bool_t BgL__ortest_1006z00_779;
BgL__ortest_1006z00_779 = 
bigloo_strcmp(BgL_sz00_778, BGl_string3679z00zz__match_compilerz00); 
if(BgL__ortest_1006z00_779)
{ /* ./Match/compiler.scm 181 */
return BgL__ortest_1006z00_779;}  else 
{ /* ./Match/compiler.scm 181 */
return 
bigloo_strcmp(BgL_sz00_778, BGl_string3680z00zz__match_compilerz00);} } }  else 
{ /* ./Match/compiler.scm 179 */
return ((bool_t)0);} } }  else 
{ /* ./Match/compiler.scm 177 */
return ((bool_t)0);} }  else 
{ /* ./Match/compiler.scm 175 */
return ((bool_t)0);} } 
}



/* compile-var */
obj_t BGl_compilezd2varzd2zz__match_compilerz00(obj_t BgL_nz00_64, obj_t BgL_ez00_65, obj_t BgL_rz00_66, obj_t BgL_mz00_67, obj_t BgL_kz00_68, obj_t BgL_za7za7_69, obj_t BgL_cz00_70)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 207 */
{ /* ./Match/compiler.scm 208 */
bool_t BgL_test1468z00_801;
{ /* ./Match/compiler.scm 208 */
bool_t BgL_testz00_3424;
{ /* ./Match/compiler.scm 208 */
obj_t BgL_auxz00_3425;
{ /* ./Match/compiler.scm 208 */
bool_t BgL_testz00_3426;
{ /* ./Match/compiler.scm 208 */
obj_t BgL_auxz00_3427;
BgL_auxz00_3427 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_nz00_64, BgL_rz00_66); 
BgL_testz00_3426 = 
CBOOL(BgL_auxz00_3427); } 
if(BgL_testz00_3426)
{ /* ./Match/compiler.scm 208 */
obj_t BgL_auxz00_3430;
BgL_auxz00_3430 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_nz00_64, BgL_rz00_66); 
BgL_auxz00_3425 = 
CDR(BgL_auxz00_3430); }  else 
{ /* ./Match/compiler.scm 208 */
BgL_auxz00_3425 = BGl_symbol3681z00zz__match_compilerz00
; } } 
BgL_testz00_3424 = 
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_auxz00_3425, BGl_symbol3681z00zz__match_compilerz00); } 
if(BgL_testz00_3424)
{ /* ./Match/compiler.scm 208 */
BgL_test1468z00_801 = ((bool_t)0); }  else 
{ /* ./Match/compiler.scm 208 */
BgL_test1468z00_801 = ((bool_t)1); } } 
if(BgL_test1468z00_801)
{ /* ./Match/compiler.scm 209 */
obj_t BgL_arg1470z00_802;obj_t BgL_arg1471z00_803;obj_t BgL_arg1472z00_804;
{ /* ./Match/compiler.scm 209 */
obj_t BgL_arg1475z00_805;obj_t BgL_arg1476z00_806;
BgL_arg1475z00_805 = BGl_symbol3666z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 209 */
obj_t BgL_arg1479z00_807;
BgL_arg1479z00_807 = 
MAKE_PAIR(BgL_ez00_65, BNIL); 
BgL_arg1476z00_806 = 
MAKE_PAIR(BgL_nz00_64, BgL_arg1479z00_807); } 
BgL_arg1470z00_802 = 
MAKE_PAIR(BgL_arg1475z00_805, BgL_arg1476z00_806); } 
{ /* ./Match/compiler.scm 210 */
obj_t BgL_arg1483z00_808;
{ /* ./Match/compiler.scm 210 */
obj_t BgL_arg1486z00_809;
{ /* ./Match/compiler.scm 210 */
obj_t BgL_list1489z00_810;
{ /* ./Match/compiler.scm 210 */
obj_t BgL_arg1491z00_811;obj_t BgL_arg1492z00_812;
BgL_arg1491z00_811 = BGl_symbol3645z00zz__match_compilerz00; 
BgL_arg1492z00_812 = 
MAKE_PAIR(BgL_nz00_64, BNIL); 
BgL_list1489z00_810 = 
MAKE_PAIR(BgL_arg1491z00_811, BgL_arg1492z00_812); } 
BgL_arg1486z00_809 = BgL_list1489z00_810; } 
BgL_arg1483z00_808 = 
BGl_patternzd2pluszd2zz__match_descriptionsz00(BgL_cz00_70, BgL_arg1486z00_809); } 
BgL_arg1471z00_803 = 
PROCEDURE_ENTRY(BgL_kz00_68)(BgL_kz00_68, BgL_rz00_66, BgL_za7za7_69, BgL_arg1483z00_808, BEOA); } 
{ /* ./Match/compiler.scm 211 */
obj_t BgL_arg1496z00_813;
{ /* ./Match/compiler.scm 211 */
obj_t BgL_arg1499z00_814;
{ /* ./Match/compiler.scm 211 */
obj_t BgL_list1502z00_815;
{ /* ./Match/compiler.scm 211 */
obj_t BgL_arg1504z00_816;obj_t BgL_arg1505z00_817;
BgL_arg1504z00_816 = BGl_symbol3645z00zz__match_compilerz00; 
BgL_arg1505z00_817 = 
MAKE_PAIR(BgL_nz00_64, BNIL); 
BgL_list1502z00_815 = 
MAKE_PAIR(BgL_arg1504z00_816, BgL_arg1505z00_817); } 
BgL_arg1499z00_814 = BgL_list1502z00_815; } 
BgL_arg1496z00_813 = 
BGl_patternzd2minuszd2zz__match_descriptionsz00(BgL_cz00_70, BgL_arg1499z00_814); } 
BgL_arg1472z00_804 = 
PROCEDURE_ENTRY(BgL_za7za7_69)(BgL_za7za7_69, BgL_arg1496z00_813, BEOA); } 
return 
BGl_buildzd2ifzd2zz__match_compilerz00(BgL_arg1470z00_802, BgL_arg1471z00_803, BgL_arg1472z00_804);}  else 
{ /* ./Match/compiler.scm 212 */
obj_t BgL_bodyz00_818;
{ /* ./Match/compiler.scm 212 */
obj_t BgL_arg1535z00_829;obj_t BgL_arg1537z00_830;
{ /* ./Match/compiler.scm 212 */
obj_t BgL_arg2153z00_1901;obj_t BgL_arg2154z00_1902;
BgL_arg2153z00_1901 = 
MAKE_PAIR(BgL_nz00_64, BgL_ez00_65); 
BgL_arg2154z00_1902 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_rz00_66, BNIL); 
BgL_arg1535z00_829 = 
MAKE_PAIR(BgL_arg2153z00_1901, BgL_arg2154z00_1902); } 
{ /* ./Match/compiler.scm 213 */
obj_t BgL_arg1541z00_831;
{ /* ./Match/compiler.scm 213 */
obj_t BgL_list1544z00_832;
{ /* ./Match/compiler.scm 213 */
obj_t BgL_arg1546z00_833;obj_t BgL_arg1547z00_834;
BgL_arg1546z00_833 = BGl_symbol3645z00zz__match_compilerz00; 
BgL_arg1547z00_834 = 
MAKE_PAIR(BgL_nz00_64, BNIL); 
BgL_list1544z00_832 = 
MAKE_PAIR(BgL_arg1546z00_833, BgL_arg1547z00_834); } 
BgL_arg1541z00_831 = BgL_list1544z00_832; } 
BgL_arg1537z00_830 = 
BGl_patternzd2pluszd2zz__match_descriptionsz00(BgL_cz00_70, BgL_arg1541z00_831); } 
BgL_bodyz00_818 = 
PROCEDURE_ENTRY(BgL_kz00_68)(BgL_kz00_68, BgL_arg1535z00_829, BgL_za7za7_69, BgL_arg1537z00_830, BEOA); } 
if(
BGl_2ze3ze3zz__r4_numbers_6_5z00(
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_nz00_64, BgL_bodyz00_818, ((long)0)), 
BINT(((long)1))))
{ /* ./Match/compiler.scm 216 */
obj_t BgL_arg1511z00_820;obj_t BgL_arg1512z00_821;
BgL_arg1511z00_820 = BGl_symbol3682z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 215 */
obj_t BgL_arg1515z00_822;obj_t BgL_arg1516z00_823;
{ /* ./Match/compiler.scm 215 */
obj_t BgL_arg1519z00_824;
{ /* ./Match/compiler.scm 215 */
obj_t BgL_arg1524z00_826;
BgL_arg1524z00_826 = 
MAKE_PAIR(BgL_ez00_65, BNIL); 
BgL_arg1519z00_824 = 
MAKE_PAIR(BgL_nz00_64, BgL_arg1524z00_826); } 
BgL_arg1515z00_822 = 
MAKE_PAIR(BgL_arg1519z00_824, BNIL); } 
BgL_arg1516z00_823 = 
MAKE_PAIR(BgL_bodyz00_818, BNIL); 
BgL_arg1512z00_821 = 
MAKE_PAIR(BgL_arg1515z00_822, BgL_arg1516z00_823); } 
return 
MAKE_PAIR(BgL_arg1511z00_820, BgL_arg1512z00_821);}  else 
{ /* ./Match/compiler.scm 214 */
return 
BGl_unfoldz00zz__match_compilerz00(BgL_nz00_64, BgL_ez00_65, BgL_bodyz00_818);} } } } 
}



/* count-occurrences */
obj_t BGl_countzd2occurrenceszd2zz__match_compilerz00(obj_t BgL_sz00_71, obj_t BgL_ez00_72, long BgL_accz00_73)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 219 */
if(
NULLP(BgL_ez00_72))
{ /* ./Match/compiler.scm 220 */
return 
BINT(BgL_accz00_73);}  else 
{ /* ./Match/compiler.scm 222 */
bool_t BgL_testz00_3471;
{ /* ./Match/compiler.scm 222 */
obj_t BgL_auxz00_3472;
BgL_auxz00_3472 = 
BGl_atomzf3zf3zz__match_s2cfunz00(BgL_ez00_72); 
BgL_testz00_3471 = 
CBOOL(BgL_auxz00_3472); } 
if(BgL_testz00_3471)
{ /* ./Match/compiler.scm 222 */
if(
(BgL_sz00_71==BgL_ez00_72))
{ /* ./Match/compiler.scm 223 */
return 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(BgL_accz00_73), 
BINT(((long)1)));}  else 
{ /* ./Match/compiler.scm 223 */
return 
BINT(BgL_accz00_73);} }  else 
{ /* ./Match/compiler.scm 222 */
if(
PAIRP(BgL_ez00_72))
{ /* ./Match/compiler.scm 227 */
bool_t BgL_testz00_3483;
{ /* ./Match/compiler.scm 227 */
obj_t BgL_auxz00_3484;
BgL_auxz00_3484 = 
CAR(BgL_ez00_72); 
BgL_testz00_3483 = 
(BgL_auxz00_3484==BGl_symbol3644z00zz__match_compilerz00); } 
if(BgL_testz00_3483)
{ /* ./Match/compiler.scm 227 */
return 
BINT(BgL_accz00_73);}  else 
{ /* ./Match/compiler.scm 227 */
return 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_sz00_71, 
CAR(BgL_ez00_72), BgL_accz00_73), 
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_sz00_71, 
CDR(BgL_ez00_72), BgL_accz00_73));} }  else 
{ /* ./Match/compiler.scm 226 */
return BFALSE;} } } } 
}



/* succes-cons */
obj_t BGl_succeszd2conszd2zz__match_compilerz00(obj_t BgL_f1z00_83, obj_t BgL_f2z00_84, obj_t BgL_ez00_85, obj_t BgL_rz00_86, obj_t BgL_mz00_87, obj_t BgL_kz00_88, obj_t BgL_za7za7_89, obj_t BgL_cz00_90)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 248 */
{ /* ./Match/compiler.scm 249 */
obj_t BgL_za2carza2z00_865;
BgL_za2carza2z00_865 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3683z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 249 */
obj_t BgL_za2cdrza2z00_866;
BgL_za2cdrza2z00_866 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3684z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 250 */
obj_t BgL_bodyz00_867;
{ /* ./Match/compiler.scm 253 */
obj_t BgL_arg1631z00_870;
BgL_arg1631z00_870 = 
BGl_patternzd2carzd2zz__match_descriptionsz00(BgL_cz00_90); 
{ /* ./Match/compiler.scm 255 */
obj_t BgL_zc3anonymousza31670ze3z83_2527;obj_t BgL_zc3anonymousza31633ze3z83_2530;
{ 
int BgL_auxz00_3500;int BgL_auxz00_3498;
BgL_auxz00_3500 = 
(int)(((long)2)); 
BgL_auxz00_3498 = 
(int)(((long)1)); 
BgL_zc3anonymousza31670ze3z83_2527 = 
make_fx_procedure(BGl_zc3anonymousza31670ze3z83zz__match_compilerz00, BgL_auxz00_3498, BgL_auxz00_3500); } 
{ 
int BgL_auxz00_3505;int BgL_auxz00_3503;
BgL_auxz00_3505 = 
(int)(((long)6)); 
BgL_auxz00_3503 = 
(int)(((long)3)); 
BgL_zc3anonymousza31633ze3z83_2530 = 
make_fx_procedure(BGl_zc3anonymousza31633ze3z83zz__match_compilerz00, BgL_auxz00_3503, BgL_auxz00_3505); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3508;
BgL_auxz00_3508 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31670ze3z83_2527, BgL_auxz00_3508, BgL_cz00_90); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3511;
BgL_auxz00_3511 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31670ze3z83_2527, BgL_auxz00_3511, BgL_za7za7_89); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3514;
BgL_auxz00_3514 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3514, BgL_cz00_90); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3517;
BgL_auxz00_3517 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3517, BgL_kz00_88); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3520;
BgL_auxz00_3520 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3520, BgL_za7za7_89); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3523;
BgL_auxz00_3523 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3523, BgL_f2z00_84); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3526;
BgL_auxz00_3526 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3526, BgL_za2cdrza2z00_866); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3529;
BgL_auxz00_3529 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31633ze3z83_2530, BgL_auxz00_3529, BgL_mz00_87); } 
BgL_bodyz00_867 = 
BGl_compilez00zz__match_compilerz00(BgL_f1z00_83, BgL_za2carza2z00_865, BgL_rz00_86, BgL_mz00_87, BgL_zc3anonymousza31633ze3z83_2530, BgL_zc3anonymousza31670ze3z83_2527, BgL_arg1631z00_870); } } 
{ /* ./Match/compiler.scm 251 */

return 
BGl_buildzd2letzd2zz__match_compilerz00(BgL_za2carza2z00_865, BgL_za2cdrza2z00_866, BgL_ez00_85, BgL_bodyz00_867);} } } } } 
}



/* <anonymous:1670> */
obj_t BGl_zc3anonymousza31670ze3z83zz__match_compilerz00(obj_t BgL_envz00_2531, obj_t BgL_c2z00_2534)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 259 */
{ /* ./Match/compiler.scm 259 */
obj_t BgL_cz00_2532;obj_t BgL_za7za7_2533;
{ /* ./Match/compiler.scm 259 */
int BgL_auxz00_3534;
BgL_auxz00_3534 = 
(int)(((long)0)); 
BgL_cz00_2532 = 
PROCEDURE_REF(BgL_envz00_2531, BgL_auxz00_3534); } 
{ /* ./Match/compiler.scm 259 */
int BgL_auxz00_3537;
BgL_auxz00_3537 = 
(int)(((long)1)); 
BgL_za7za7_2533 = 
PROCEDURE_REF(BgL_envz00_2531, BgL_auxz00_3537); } 
{ 
obj_t BgL_c2z00_896;
BgL_c2z00_896 = BgL_c2z00_2534; 
{ /* ./Match/compiler.scm 259 */
obj_t BgL_arg1672z00_898;
{ /* ./Match/compiler.scm 259 */
obj_t BgL_arg1675z00_899;obj_t BgL_arg1676z00_900;
BgL_arg1675z00_899 = BGl_symbol3650z00zz__match_compilerz00; 
BgL_arg1676z00_900 = 
BGl_patternzd2cdrzd2zz__match_descriptionsz00(BgL_cz00_2532); 
{ /* ./Match/compiler.scm 259 */
obj_t BgL_list1678z00_901;
{ /* ./Match/compiler.scm 259 */
obj_t BgL_arg1680z00_902;
{ /* ./Match/compiler.scm 259 */
obj_t BgL_arg1683z00_903;
BgL_arg1683z00_903 = 
MAKE_PAIR(BgL_arg1676z00_900, BNIL); 
BgL_arg1680z00_902 = 
MAKE_PAIR(BgL_c2z00_896, BgL_arg1683z00_903); } 
BgL_list1678z00_901 = 
MAKE_PAIR(BgL_arg1675z00_899, BgL_arg1680z00_902); } 
BgL_arg1672z00_898 = BgL_list1678z00_901; } } 
return 
PROCEDURE_ENTRY(BgL_za7za7_2533)(BgL_za7za7_2533, BgL_arg1672z00_898, BEOA);} } } } 
}



/* <anonymous:1633> */
obj_t BGl_zc3anonymousza31633ze3z83zz__match_compilerz00(obj_t BgL_envz00_2535, obj_t BgL_r2z00_2542, obj_t BgL_za72za7_2543, obj_t BgL_c2z00_2544)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 253 */
{ /* ./Match/compiler.scm 255 */
obj_t BgL_cz00_2536;obj_t BgL_kz00_2537;obj_t BgL_za7za7_2538;obj_t BgL_f2z00_2539;obj_t BgL_za2cdrza2z00_2540;obj_t BgL_mz00_2541;
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3546;
BgL_auxz00_3546 = 
(int)(((long)0)); 
BgL_cz00_2536 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3546); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3549;
BgL_auxz00_3549 = 
(int)(((long)1)); 
BgL_kz00_2537 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3549); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3552;
BgL_auxz00_3552 = 
(int)(((long)2)); 
BgL_za7za7_2538 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3552); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3555;
BgL_auxz00_3555 = 
(int)(((long)3)); 
BgL_f2z00_2539 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3555); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3558;
BgL_auxz00_3558 = 
(int)(((long)4)); 
BgL_za2cdrza2z00_2540 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3558); } 
{ /* ./Match/compiler.scm 255 */
int BgL_auxz00_3561;
BgL_auxz00_3561 = 
(int)(((long)5)); 
BgL_mz00_2541 = 
PROCEDURE_REF(BgL_envz00_2535, BgL_auxz00_3561); } 
{ 
obj_t BgL_r2z00_871;obj_t BgL_za72za7_872;obj_t BgL_c2z00_873;
BgL_r2z00_871 = BgL_r2z00_2542; 
BgL_za72za7_872 = BgL_za72za7_2543; 
BgL_c2z00_873 = BgL_c2z00_2544; 
{ /* ./Match/compiler.scm 255 */
obj_t BgL_arg1637z00_877;
BgL_arg1637z00_877 = 
BGl_patternzd2cdrzd2zz__match_descriptionsz00(BgL_cz00_2536); 
{ /* ./Match/compiler.scm 256 */
obj_t BgL_zc3anonymousza31639ze3z83_2529;obj_t BgL_zc3anonymousza31655ze3z83_2528;
{ 
int BgL_auxz00_3567;int BgL_auxz00_3565;
BgL_auxz00_3567 = 
(int)(((long)2)); 
BgL_auxz00_3565 = 
(int)(((long)3)); 
BgL_zc3anonymousza31639ze3z83_2529 = 
make_fx_procedure(BGl_zc3anonymousza31639ze3z83zz__match_compilerz00, BgL_auxz00_3565, BgL_auxz00_3567); } 
{ 
int BgL_auxz00_3572;int BgL_auxz00_3570;
BgL_auxz00_3572 = 
(int)(((long)2)); 
BgL_auxz00_3570 = 
(int)(((long)1)); 
BgL_zc3anonymousza31655ze3z83_2528 = 
make_fx_procedure(BGl_zc3anonymousza31655ze3z83zz__match_compilerz00, BgL_auxz00_3570, BgL_auxz00_3572); } 
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3575;
BgL_auxz00_3575 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31639ze3z83_2529, BgL_auxz00_3575, BgL_c2z00_873); } 
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3578;
BgL_auxz00_3578 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31639ze3z83_2529, BgL_auxz00_3578, BgL_kz00_2537); } 
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3581;
BgL_auxz00_3581 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31655ze3z83_2528, BgL_auxz00_3581, BgL_c2z00_873); } 
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3584;
BgL_auxz00_3584 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31655ze3z83_2528, BgL_auxz00_3584, BgL_za7za7_2538); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2539, BgL_za2cdrza2z00_2540, BgL_r2z00_871, BgL_mz00_2541, BgL_zc3anonymousza31639ze3z83_2529, BgL_zc3anonymousza31655ze3z83_2528, BgL_arg1637z00_877);} } } } } 
}



/* <anonymous:1655> */
obj_t BGl_zc3anonymousza31655ze3z83zz__match_compilerz00(obj_t BgL_envz00_2545, obj_t BgL_c3z00_2548)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 257 */
{ /* ./Match/compiler.scm 257 */
obj_t BgL_c2z00_2546;obj_t BgL_za7za7_2547;
{ /* ./Match/compiler.scm 257 */
int BgL_auxz00_3588;
BgL_auxz00_3588 = 
(int)(((long)0)); 
BgL_c2z00_2546 = 
PROCEDURE_REF(BgL_envz00_2545, BgL_auxz00_3588); } 
{ /* ./Match/compiler.scm 257 */
int BgL_auxz00_3591;
BgL_auxz00_3591 = 
(int)(((long)1)); 
BgL_za7za7_2547 = 
PROCEDURE_REF(BgL_envz00_2545, BgL_auxz00_3591); } 
{ 
obj_t BgL_c3z00_887;
BgL_c3z00_887 = BgL_c3z00_2548; 
{ /* ./Match/compiler.scm 257 */
obj_t BgL_arg1657z00_1941;
{ /* ./Match/compiler.scm 257 */
obj_t BgL_list1660z00_1942;
{ /* ./Match/compiler.scm 257 */
obj_t BgL_arg1662z00_1943;obj_t BgL_arg1663z00_1944;
BgL_arg1662z00_1943 = BGl_symbol3650z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 257 */
obj_t BgL_arg1666z00_1945;
BgL_arg1666z00_1945 = 
MAKE_PAIR(BgL_c3z00_887, BNIL); 
BgL_arg1663z00_1944 = 
MAKE_PAIR(BgL_c2z00_2546, BgL_arg1666z00_1945); } 
BgL_list1660z00_1942 = 
MAKE_PAIR(BgL_arg1662z00_1943, BgL_arg1663z00_1944); } 
BgL_arg1657z00_1941 = BgL_list1660z00_1942; } 
return 
PROCEDURE_ENTRY(BgL_za7za7_2547)(BgL_za7za7_2547, BgL_arg1657z00_1941, BEOA);} } } } 
}



/* <anonymous:1639> */
obj_t BGl_zc3anonymousza31639ze3z83zz__match_compilerz00(obj_t BgL_envz00_2549, obj_t BgL_r3z00_2552, obj_t BgL_za73za7_2553, obj_t BgL_c3z00_2554)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 255 */
{ /* ./Match/compiler.scm 256 */
obj_t BgL_c2z00_2550;obj_t BgL_kz00_2551;
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3599;
BgL_auxz00_3599 = 
(int)(((long)0)); 
BgL_c2z00_2550 = 
PROCEDURE_REF(BgL_envz00_2549, BgL_auxz00_3599); } 
{ /* ./Match/compiler.scm 256 */
int BgL_auxz00_3602;
BgL_auxz00_3602 = 
(int)(((long)1)); 
BgL_kz00_2551 = 
PROCEDURE_REF(BgL_envz00_2549, BgL_auxz00_3602); } 
{ 
obj_t BgL_r3z00_878;obj_t BgL_za73za7_879;obj_t BgL_c3z00_880;
BgL_r3z00_878 = BgL_r3z00_2552; 
BgL_za73za7_879 = BgL_za73za7_2553; 
BgL_c3z00_880 = BgL_c3z00_2554; 
{ /* ./Match/compiler.scm 256 */
obj_t BgL_arg1641z00_1934;
{ /* ./Match/compiler.scm 256 */
obj_t BgL_list1644z00_1935;
{ /* ./Match/compiler.scm 256 */
obj_t BgL_arg1648z00_1936;obj_t BgL_arg1649z00_1937;
BgL_arg1648z00_1936 = BGl_symbol3650z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 256 */
obj_t BgL_arg1652z00_1938;
BgL_arg1652z00_1938 = 
MAKE_PAIR(BgL_c3z00_880, BNIL); 
BgL_arg1649z00_1937 = 
MAKE_PAIR(BgL_c2z00_2550, BgL_arg1652z00_1938); } 
BgL_list1644z00_1935 = 
MAKE_PAIR(BgL_arg1648z00_1936, BgL_arg1649z00_1937); } 
BgL_arg1641z00_1934 = BgL_list1644z00_1935; } 
return 
PROCEDURE_ENTRY(BgL_kz00_2551)(BgL_kz00_2551, BgL_r3z00_878, BgL_za73za7_879, BgL_arg1641z00_1934, BEOA);} } } } 
}



/* compile-times */
obj_t BGl_compilezd2timeszd2zz__match_compilerz00(obj_t BgL_nz00_91, obj_t BgL_f1z00_92, obj_t BgL_f2z00_93, obj_t BgL_ez00_94, obj_t BgL_rz00_95, obj_t BgL_mz00_96, obj_t BgL_k0z00_97, obj_t BgL_za70za7_98, obj_t BgL_d0z00_99)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 290 */
{ /* ./Match/compiler.scm 292 */
obj_t BgL_fzd2envzd2_906;obj_t BgL_dzd2envzd2_907;
BgL_fzd2envzd2_906 = 
MAKE_CELL(BNIL); 
BgL_dzd2envzd2_907 = 
MAKE_CELL(BNIL); 
{ /* ./Match/compiler.scm 296 */
obj_t BgL_instanciatezd2tryzd2_2557;
{ 
int BgL_auxz00_3612;int BgL_auxz00_3610;
BgL_auxz00_3612 = 
(int)(((long)5)); 
BgL_auxz00_3610 = 
(int)(((long)5)); 
BgL_instanciatezd2tryzd2_2557 = 
make_fx_procedure(BGl_instanciatezd2tryzd2zz__match_compilerz00, BgL_auxz00_3610, BgL_auxz00_3612); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3615;
BgL_auxz00_3615 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_instanciatezd2tryzd2_2557, BgL_auxz00_3615, BgL_dzd2envzd2_907); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3618;
BgL_auxz00_3618 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_instanciatezd2tryzd2_2557, BgL_auxz00_3618, BgL_nz00_91); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3621;
BgL_auxz00_3621 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_instanciatezd2tryzd2_2557, BgL_auxz00_3621, BgL_f1z00_92); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3624;
BgL_auxz00_3624 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_instanciatezd2tryzd2_2557, BgL_auxz00_3624, BgL_f2z00_93); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3627;
BgL_auxz00_3627 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_instanciatezd2tryzd2_2557, BgL_auxz00_3627, BgL_fzd2envzd2_906); } 
{ /* ./Match/compiler.scm 319 */
obj_t BgL_reszd2bodyzd2_909;
{ /* ./Match/compiler.scm 321 */
obj_t BgL_zc3anonymousza31741ze3z83_2555;obj_t BgL_zc3anonymousza31739ze3z83_2556;
{ 
int BgL_auxz00_3632;int BgL_auxz00_3630;
BgL_auxz00_3632 = 
(int)(((long)2)); 
BgL_auxz00_3630 = 
(int)(((long)1)); 
BgL_zc3anonymousza31741ze3z83_2555 = 
make_fx_procedure(BGl_zc3anonymousza31741ze3z83zz__match_compilerz00, BgL_auxz00_3630, BgL_auxz00_3632); } 
{ 
int BgL_auxz00_3637;int BgL_auxz00_3635;
BgL_auxz00_3637 = 
(int)(((long)2)); 
BgL_auxz00_3635 = 
(int)(((long)3)); 
BgL_zc3anonymousza31739ze3z83_2556 = 
make_fx_procedure(BGl_zc3anonymousza31739ze3z83zz__match_compilerz00, BgL_auxz00_3635, BgL_auxz00_3637); } 
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3640;
BgL_auxz00_3640 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31741ze3z83_2555, BgL_auxz00_3640, BgL_za70za7_98); } 
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3643;
BgL_auxz00_3643 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31741ze3z83_2555, BgL_auxz00_3643, BgL_d0z00_99); } 
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3646;
BgL_auxz00_3646 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31739ze3z83_2556, BgL_auxz00_3646, BgL_k0z00_97); } 
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3649;
BgL_auxz00_3649 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31739ze3z83_2556, BgL_auxz00_3649, BgL_d0z00_99); } 
BgL_reszd2bodyzd2_909 = 
BGl_instanciatezd2tryzd2zz__match_compilerz00(BgL_instanciatezd2tryzd2_2557, BgL_rz00_95, BgL_mz00_96, BgL_zc3anonymousza31739ze3z83_2556, BgL_zc3anonymousza31741ze3z83_2555, BgL_d0z00_99); } 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_arg1691z00_910;obj_t BgL_arg1692z00_911;
BgL_arg1691z00_910 = BGl_symbol3685z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_arg1695z00_912;obj_t BgL_arg1696z00_913;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_l1007z00_914;
BgL_l1007z00_914 = 
CELL_REF(BgL_fzd2envzd2_906); 
if(
NULLP(BgL_l1007z00_914))
{ /* ./Match/compiler.scm 324 */
BgL_arg1695z00_912 = BNIL; }  else 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_head1009z00_916;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3655;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3656;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3657;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3658;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3659;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3660;
BgL_auxz00_3660 = 
CAR(BgL_l1007z00_914); 
BgL_auxz00_3659 = 
CDR(BgL_auxz00_3660); } 
BgL_auxz00_3658 = 
CAR(BgL_auxz00_3659); } 
BgL_auxz00_3657 = 
CDR(BgL_auxz00_3658); } 
BgL_auxz00_3656 = 
CAR(BgL_auxz00_3657); } 
BgL_auxz00_3655 = 
CAR(BgL_auxz00_3656); } 
BgL_head1009z00_916 = 
MAKE_PAIR(BgL_auxz00_3655, BNIL); } 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_arg1700z00_920;
BgL_arg1700z00_920 = 
CDR(BgL_l1007z00_914); 
{ 
obj_t BgL_l1007z00_1967;obj_t BgL_tail1010z00_1968;
BgL_l1007z00_1967 = BgL_arg1700z00_920; 
BgL_tail1010z00_1968 = BgL_head1009z00_916; 
BgL_map1008z00_1966:
if(
NULLP(BgL_l1007z00_1967))
{ /* ./Match/compiler.scm 324 */
BgL_arg1695z00_912 = BgL_head1009z00_916; }  else 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_newtail1011z00_1976;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3671;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3672;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3673;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3674;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3675;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_auxz00_3676;
BgL_auxz00_3676 = 
CAR(BgL_l1007z00_1967); 
BgL_auxz00_3675 = 
CDR(BgL_auxz00_3676); } 
BgL_auxz00_3674 = 
CAR(BgL_auxz00_3675); } 
BgL_auxz00_3673 = 
CDR(BgL_auxz00_3674); } 
BgL_auxz00_3672 = 
CAR(BgL_auxz00_3673); } 
BgL_auxz00_3671 = 
CAR(BgL_auxz00_3672); } 
BgL_newtail1011z00_1976 = 
MAKE_PAIR(BgL_auxz00_3671, BNIL); } 
SET_CDR(BgL_tail1010z00_1968, BgL_newtail1011z00_1976); 
{ 
obj_t BgL_tail1010z00_3687;obj_t BgL_l1007z00_3685;
BgL_l1007z00_3685 = 
CDR(BgL_l1007z00_1967); 
BgL_tail1010z00_3687 = BgL_newtail1011z00_1976; 
BgL_tail1010z00_1968 = BgL_tail1010z00_3687; 
BgL_l1007z00_1967 = BgL_l1007z00_3685; 
goto BgL_map1008z00_1966;} } } } } } 
{ /* ./Match/compiler.scm 324 */
obj_t BgL_arg1728z00_930;
{ /* ./Match/compiler.scm 324 */
obj_t BgL_arg1732z00_932;
BgL_arg1732z00_932 = 
MAKE_PAIR(BgL_ez00_94, BNIL); 
BgL_arg1728z00_930 = 
MAKE_PAIR(BgL_reszd2bodyzd2_909, BgL_arg1732z00_932); } 
BgL_arg1696z00_913 = 
MAKE_PAIR(BgL_arg1728z00_930, BNIL); } 
BgL_arg1692z00_911 = 
MAKE_PAIR(BgL_arg1695z00_912, BgL_arg1696z00_913); } 
return 
MAKE_PAIR(BgL_arg1691z00_910, BgL_arg1692z00_911);} } } } } 
}



/* <anonymous:1741> */
obj_t BGl_zc3anonymousza31741ze3z83zz__match_compilerz00(obj_t BgL_envz00_2560, obj_t BgL_dz00_2563)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 322 */
{ /* ./Match/compiler.scm 322 */
obj_t BgL_za70za7_2561;obj_t BgL_d0z00_2562;
{ /* ./Match/compiler.scm 322 */
int BgL_auxz00_3693;
BgL_auxz00_3693 = 
(int)(((long)0)); 
BgL_za70za7_2561 = 
PROCEDURE_REF(BgL_envz00_2560, BgL_auxz00_3693); } 
{ /* ./Match/compiler.scm 322 */
int BgL_auxz00_3696;
BgL_auxz00_3696 = 
(int)(((long)1)); 
BgL_d0z00_2562 = 
PROCEDURE_REF(BgL_envz00_2560, BgL_auxz00_3696); } 
{ 
obj_t BgL_dz00_939;
BgL_dz00_939 = BgL_dz00_2563; 
return 
PROCEDURE_ENTRY(BgL_za70za7_2561)(BgL_za70za7_2561, BgL_d0z00_2562, BEOA);} } } 
}



/* <anonymous:1739> */
obj_t BGl_zc3anonymousza31739ze3z83zz__match_compilerz00(obj_t BgL_envz00_2564, obj_t BgL_rz00_2567, obj_t BgL_za7za7_2568, obj_t BgL_dz00_2569)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 321 */
{ /* ./Match/compiler.scm 321 */
obj_t BgL_k0z00_2565;obj_t BgL_d0z00_2566;
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3701;
BgL_auxz00_3701 = 
(int)(((long)0)); 
BgL_k0z00_2565 = 
PROCEDURE_REF(BgL_envz00_2564, BgL_auxz00_3701); } 
{ /* ./Match/compiler.scm 321 */
int BgL_auxz00_3704;
BgL_auxz00_3704 = 
(int)(((long)1)); 
BgL_d0z00_2566 = 
PROCEDURE_REF(BgL_envz00_2564, BgL_auxz00_3704); } 
{ 
obj_t BgL_rz00_935;obj_t BgL_za7za7_936;obj_t BgL_dz00_937;
BgL_rz00_935 = BgL_rz00_2567; 
BgL_za7za7_936 = BgL_za7za7_2568; 
BgL_dz00_937 = BgL_dz00_2569; 
return 
PROCEDURE_ENTRY(BgL_k0z00_2565)(BgL_k0z00_2565, BgL_rz00_935, BgL_za7za7_936, BgL_d0z00_2566, BEOA);} } } 
}



/* <anonymous:1801> */
obj_t BGl_zc3anonymousza31801ze3z83zz__match_compilerz00(obj_t BgL_envz00_2570, obj_t BgL_d2z00_2582)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 308 */
{ /* ./Match/compiler.scm 310 */
obj_t BgL_dzd2envzd2_2571;obj_t BgL_f2z00_2572;obj_t BgL_fzd2envzd2_2573;obj_t BgL_mz00_2574;obj_t BgL_nz00_2575;obj_t BgL_instanciatezd2tryzd2_2576;obj_t BgL_f1z00_2577;obj_t BgL_gz00_2578;obj_t BgL_rz00_2579;obj_t BgL_kz00_2580;obj_t BgL_za7za7_2581;
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3709;
BgL_auxz00_3709 = 
(int)(((long)0)); 
BgL_dzd2envzd2_2571 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3709); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3712;
BgL_auxz00_3712 = 
(int)(((long)1)); 
BgL_f2z00_2572 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3712); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3715;
BgL_auxz00_3715 = 
(int)(((long)2)); 
BgL_fzd2envzd2_2573 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3715); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3718;
BgL_auxz00_3718 = 
(int)(((long)3)); 
BgL_mz00_2574 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3718); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3721;
BgL_auxz00_3721 = 
(int)(((long)4)); 
BgL_nz00_2575 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3721); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3724;
BgL_auxz00_3724 = 
(int)(((long)5)); 
BgL_instanciatezd2tryzd2_2576 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3724); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3727;
BgL_auxz00_3727 = 
(int)(((long)6)); 
BgL_f1z00_2577 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3727); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3730;
BgL_auxz00_3730 = 
(int)(((long)7)); 
BgL_gz00_2578 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3730); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3733;
BgL_auxz00_3733 = 
(int)(((long)8)); 
BgL_rz00_2579 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3733); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3736;
BgL_auxz00_3736 = 
(int)(((long)9)); 
BgL_kz00_2580 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3736); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3739;
BgL_auxz00_3739 = 
(int)(((long)10)); 
BgL_za7za7_2581 = 
PROCEDURE_REF(BgL_envz00_2570, BgL_auxz00_3739); } 
{ 
obj_t BgL_d2z00_975;
BgL_d2z00_975 = BgL_d2z00_2582; 
{ /* ./Match/compiler.scm 310 */
obj_t BgL_arg1803z00_2068;
{ /* ./Match/compiler.scm 310 */
obj_t BgL_zc3anonymousza32196ze3z83_2559;
{ 
int BgL_auxz00_3744;int BgL_auxz00_3742;
BgL_auxz00_3744 = 
(int)(((long)8)); 
BgL_auxz00_3742 = 
(int)(((long)1)); 
BgL_zc3anonymousza32196ze3z83_2559 = 
make_fx_procedure(BGl_zc3anonymousza32196ze3z83zz__match_compilerz00, BgL_auxz00_3742, BgL_auxz00_3744); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3747;
BgL_auxz00_3747 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3747, BgL_dzd2envzd2_2571); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3750;
BgL_auxz00_3750 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3750, BgL_nz00_2575); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3753;
BgL_auxz00_3753 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3753, BgL_f1z00_2577); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3756;
BgL_auxz00_3756 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3756, BgL_f2z00_2572); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3759;
BgL_auxz00_3759 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3759, BgL_fzd2envzd2_2573); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3762;
BgL_auxz00_3762 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3762, BgL_nz00_2575); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3765;
BgL_auxz00_3765 = 
(int)(((long)6)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3765, BgL_mz00_2574); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3768;
BgL_auxz00_3768 = 
(int)(((long)7)); 
PROCEDURE_SET(BgL_zc3anonymousza32196ze3z83_2559, BgL_auxz00_3768, BgL_instanciatezd2tryzd2_2576); } 
BgL_arg1803z00_2068 = BgL_zc3anonymousza32196ze3z83_2559; } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f1z00_2577, BgL_gz00_2578, BgL_rz00_2579, BgL_arg1803z00_2068, BgL_kz00_2580, BgL_za7za7_2581, BgL_d2z00_975);} } } } 
}



/* <anonymous:2196> */
obj_t BGl_zc3anonymousza32196ze3z83zz__match_compilerz00(obj_t BgL_envz00_2583, obj_t BgL_xz00_2592)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 474 */
{ /* ./Match/compiler.scm 310 */
obj_t BgL_ptz00_2589;obj_t BgL_fnz00_2590;obj_t BgL_instanciatezd2tryzd2_2591;
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3772;
BgL_auxz00_3772 = 
(int)(((long)5)); 
BgL_ptz00_2589 = 
PROCEDURE_REF(BgL_envz00_2583, BgL_auxz00_3772); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3775;
BgL_auxz00_3775 = 
(int)(((long)6)); 
BgL_fnz00_2590 = 
PROCEDURE_REF(BgL_envz00_2583, BgL_auxz00_3775); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3778;
BgL_auxz00_3778 = 
(int)(((long)7)); 
BgL_instanciatezd2tryzd2_2591 = 
PROCEDURE_REF(BgL_envz00_2583, BgL_auxz00_3778); } 
{ 
obj_t BgL_xz00_2072;
BgL_xz00_2072 = BgL_xz00_2592; 
if(
(BgL_xz00_2072==BgL_ptz00_2589))
{ /* ./Match/compiler.scm 310 */
return BgL_instanciatezd2tryzd2_2591;}  else 
{ /* ./Match/compiler.scm 310 */
return 
PROCEDURE_ENTRY(BgL_fnz00_2590)(BgL_fnz00_2590, BgL_xz00_2072, BEOA);} } } } 
}



/* instanciate-try */
obj_t BGl_instanciatezd2tryzd2zz__match_compilerz00(obj_t BgL_envz00_2593, obj_t BgL_rz00_2599, obj_t BgL_mz00_2600, obj_t BgL_kz00_2601, obj_t BgL_za7za7_2602, obj_t BgL_dz00_2603)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 295 */
{ /* ./Match/compiler.scm 296 */
obj_t BgL_dzd2envzd2_2594;obj_t BgL_nz00_2595;obj_t BgL_f1z00_2596;obj_t BgL_f2z00_2597;obj_t BgL_fzd2envzd2_2598;
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3785;
BgL_auxz00_3785 = 
(int)(((long)0)); 
BgL_dzd2envzd2_2594 = 
PROCEDURE_REF(BgL_envz00_2593, BgL_auxz00_3785); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3788;
BgL_auxz00_3788 = 
(int)(((long)1)); 
BgL_nz00_2595 = 
PROCEDURE_REF(BgL_envz00_2593, BgL_auxz00_3788); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3791;
BgL_auxz00_3791 = 
(int)(((long)2)); 
BgL_f1z00_2596 = 
PROCEDURE_REF(BgL_envz00_2593, BgL_auxz00_3791); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3794;
BgL_auxz00_3794 = 
(int)(((long)3)); 
BgL_f2z00_2597 = 
PROCEDURE_REF(BgL_envz00_2593, BgL_auxz00_3794); } 
{ /* ./Match/compiler.scm 296 */
int BgL_auxz00_3797;
BgL_auxz00_3797 = 
(int)(((long)4)); 
BgL_fzd2envzd2_2598 = 
PROCEDURE_REF(BgL_envz00_2593, BgL_auxz00_3797); } 
{ 
obj_t BgL_rz00_943;obj_t BgL_mz00_944;obj_t BgL_kz00_945;obj_t BgL_za7za7_946;obj_t BgL_dz00_947;
BgL_rz00_943 = BgL_rz00_2599; 
BgL_mz00_944 = BgL_mz00_2600; 
BgL_kz00_945 = BgL_kz00_2601; 
BgL_za7za7_946 = BgL_za7za7_2602; 
BgL_dz00_947 = BgL_dz00_2603; 
{ /* ./Match/compiler.scm 296 */
obj_t BgL_tmpz00_949;
{ 
obj_t BgL_dzd2envzd2_2050;
BgL_dzd2envzd2_2050 = 
CELL_REF(BgL_dzd2envzd2_2594); 
BgL_lookzd2forzd2descrz00_2049:
if(
NULLP(BgL_dzd2envzd2_2050))
{ /* ./Match/compiler.scm 296 */
BgL_tmpz00_949 = BFALSE; }  else 
{ /* ./Match/compiler.scm 296 */
bool_t BgL_testz00_3802;
{ /* ./Match/compiler.scm 296 */
obj_t BgL_auxz00_3803;
{ /* ./Match/compiler.scm 296 */
obj_t BgL_auxz00_3804;
BgL_auxz00_3804 = 
CAR(BgL_dzd2envzd2_2050); 
BgL_auxz00_3803 = 
CAR(BgL_auxz00_3804); } 
BgL_testz00_3802 = 
BGl_equalzf3zf3zz__r4_equivalence_6_2z00(BgL_auxz00_3803, BgL_dz00_947); } 
if(BgL_testz00_3802)
{ /* ./Match/compiler.scm 296 */
BgL_tmpz00_949 = 
CAR(BgL_dzd2envzd2_2050); }  else 
{ 
obj_t BgL_dzd2envzd2_3809;
BgL_dzd2envzd2_3809 = 
CDR(BgL_dzd2envzd2_2050); 
BgL_dzd2envzd2_2050 = BgL_dzd2envzd2_3809; 
goto BgL_lookzd2forzd2descrz00_2049;} } } 
if(
CBOOL(BgL_tmpz00_949))
{ /* ./Match/compiler.scm 298 */
obj_t BgL_auxz00_3813;
BgL_auxz00_3813 = 
CDR(BgL_tmpz00_949); 
return 
CAR(BgL_auxz00_3813);}  else 
{ /* ./Match/compiler.scm 299 */
obj_t BgL_gz00_950;obj_t BgL_tryz00_951;
BgL_gz00_950 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3686z00zz__match_compilerz00, BEOA); 
BgL_tryz00_951 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3687z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 301 */
obj_t BgL_auxz00_2604;
{ /* ./Match/compiler.scm 301 */
obj_t BgL_arg1746z00_952;
{ /* ./Match/compiler.scm 301 */
obj_t BgL_list1749z00_953;
{ /* ./Match/compiler.scm 301 */
obj_t BgL_arg1752z00_954;
BgL_arg1752z00_954 = 
MAKE_PAIR(BgL_tryz00_951, BNIL); 
BgL_list1749z00_953 = 
MAKE_PAIR(BgL_dz00_947, BgL_arg1752z00_954); } 
BgL_arg1746z00_952 = BgL_list1749z00_953; } 
{ /* ./Match/compiler.scm 301 */
obj_t BgL_auxz00_3822;
BgL_auxz00_3822 = 
CELL_REF(BgL_dzd2envzd2_2594); 
BgL_auxz00_2604 = 
MAKE_PAIR(BgL_arg1746z00_952, BgL_auxz00_3822); } } 
CELL_SET(BgL_dzd2envzd2_2594, BgL_auxz00_2604); } 
{ /* ./Match/compiler.scm 302 */
obj_t BgL_newzd2defzd2_955;
{ /* ./Match/compiler.scm 303 */
obj_t BgL_arg1757z00_956;
{ /* ./Match/compiler.scm 303 */
obj_t BgL_arg1766z00_959;obj_t BgL_arg1767z00_960;
BgL_arg1766z00_959 = BGl_symbol3685z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1771z00_961;
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1775z00_963;
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1779z00_965;
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1782z00_966;
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1786z00_968;obj_t BgL_arg1787z00_969;
BgL_arg1786z00_968 = BGl_symbol3641z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 305 */
obj_t BgL_arg1790z00_970;obj_t BgL_arg1791z00_971;
BgL_arg1790z00_970 = 
MAKE_PAIR(BgL_gz00_950, BNIL); 
{ /* ./Match/compiler.scm 310 */
obj_t BgL_arg1795z00_972;
{ /* ./Match/compiler.scm 310 */
obj_t BgL_zc3anonymousza31801ze3z83_2558;
{ 
int BgL_auxz00_3827;int BgL_auxz00_3825;
BgL_auxz00_3827 = 
(int)(((long)11)); 
BgL_auxz00_3825 = 
(int)(((long)1)); 
BgL_zc3anonymousza31801ze3z83_2558 = 
make_fx_procedure(BGl_zc3anonymousza31801ze3z83zz__match_compilerz00, BgL_auxz00_3825, BgL_auxz00_3827); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3830;
BgL_auxz00_3830 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3830, BgL_dzd2envzd2_2594); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3833;
BgL_auxz00_3833 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3833, BgL_f2z00_2597); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3836;
BgL_auxz00_3836 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3836, BgL_fzd2envzd2_2598); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3839;
BgL_auxz00_3839 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3839, BgL_mz00_944); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3842;
BgL_auxz00_3842 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3842, BgL_nz00_2595); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3845;
BgL_auxz00_3845 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3845, BgL_envz00_2593); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3848;
BgL_auxz00_3848 = 
(int)(((long)6)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3848, BgL_f1z00_2596); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3851;
BgL_auxz00_3851 = 
(int)(((long)7)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3851, BgL_gz00_950); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3854;
BgL_auxz00_3854 = 
(int)(((long)8)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3854, BgL_rz00_943); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3857;
BgL_auxz00_3857 = 
(int)(((long)9)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3857, BgL_kz00_945); } 
{ /* ./Match/compiler.scm 310 */
int BgL_auxz00_3860;
BgL_auxz00_3860 = 
(int)(((long)10)); 
PROCEDURE_SET(BgL_zc3anonymousza31801ze3z83_2558, BgL_auxz00_3860, BgL_za7za7_946); } 
BgL_arg1795z00_972 = 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2597, BgL_gz00_950, BgL_rz00_943, BgL_mz00_944, BgL_kz00_945, BgL_zc3anonymousza31801ze3z83_2558, BgL_dz00_947); } 
BgL_arg1791z00_971 = 
MAKE_PAIR(BgL_arg1795z00_972, BNIL); } 
BgL_arg1787z00_969 = 
MAKE_PAIR(BgL_arg1790z00_970, BgL_arg1791z00_971); } 
BgL_arg1782z00_966 = 
MAKE_PAIR(BgL_arg1786z00_968, BgL_arg1787z00_969); } 
BgL_arg1779z00_965 = 
MAKE_PAIR(BgL_arg1782z00_966, BNIL); } 
BgL_arg1775z00_963 = 
MAKE_PAIR(BgL_tryz00_951, BgL_arg1779z00_965); } 
BgL_arg1771z00_961 = 
MAKE_PAIR(BgL_arg1775z00_963, BNIL); } 
BgL_arg1767z00_960 = 
MAKE_PAIR(BgL_arg1771z00_961, BNIL); } 
BgL_arg1757z00_956 = 
MAKE_PAIR(BgL_arg1766z00_959, BgL_arg1767z00_960); } 
{ /* ./Match/compiler.scm 302 */
obj_t BgL_list1759z00_957;
{ /* ./Match/compiler.scm 302 */
obj_t BgL_arg1761z00_958;
BgL_arg1761z00_958 = 
MAKE_PAIR(BgL_arg1757z00_956, BNIL); 
BgL_list1759z00_957 = 
MAKE_PAIR(BgL_tryz00_951, BgL_arg1761z00_958); } 
BgL_newzd2defzd2_955 = BgL_list1759z00_957; } } 
{ /* ./Match/compiler.scm 315 */
obj_t BgL_auxz00_2605;
{ /* ./Match/compiler.scm 315 */
obj_t BgL_auxz00_3874;
BgL_auxz00_3874 = 
CELL_REF(BgL_fzd2envzd2_2598); 
BgL_auxz00_2605 = 
MAKE_PAIR(BgL_newzd2defzd2_955, BgL_auxz00_3874); } 
CELL_SET(BgL_fzd2envzd2_2598, BgL_auxz00_2605); } 
return BgL_tryz00_951;} } } } } } 
}



/* compile-vector-begin */
obj_t BGl_compilezd2vectorzd2beginz00zz__match_compilerz00(obj_t BgL_lgminz00_116, obj_t BgL_fz00_117, obj_t BgL_ez00_118, obj_t BgL_rz00_119, obj_t BgL_mz00_120, obj_t BgL_kz00_121, obj_t BgL_za7za7_122, obj_t BgL_dz00_123)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 340 */
{ /* ./Match/compiler.scm 341 */
bool_t BgL_testz00_3876;
{ /* ./Match/compiler.scm 341 */
obj_t BgL_auxz00_3877;
BgL_auxz00_3877 = 
CAR(BgL_dz00_123); 
BgL_testz00_3876 = 
(BgL_auxz00_3877==BGl_symbol3688z00zz__match_compilerz00); } 
if(BgL_testz00_3876)
{ /* ./Match/compiler.scm 342 */
bool_t BgL_testz00_3880;
{ /* ./Match/compiler.scm 342 */
obj_t BgL_auxz00_3881;
{ /* ./Match/compiler.scm 342 */
obj_t BgL_auxz00_3882;
BgL_auxz00_3882 = 
CDR(BgL_dz00_123); 
BgL_auxz00_3881 = 
CAR(BgL_auxz00_3882); } 
BgL_testz00_3880 = 
BGl_2ze3zd3z30zz__r4_numbers_6_5z00(BgL_auxz00_3881, BgL_lgminz00_116); } 
if(BgL_testz00_3880)
{ /* ./Match/compiler.scm 343 */
obj_t BgL_fun1826z00_986;
BgL_fun1826z00_986 = 
BGl_compilez00zz__match_compilerz00(BgL_fz00_117, BgL_ez00_118, BgL_rz00_119, BgL_mz00_120, BgL_kz00_121, BgL_za7za7_122, BgL_dz00_123); 
return 
PROCEDURE_ENTRY(BgL_fun1826z00_986)(BgL_fun1826z00_986, 
BINT(((long)0)), BEOA);}  else 
{ /* ./Match/compiler.scm 348 */
obj_t BgL_arg1829z00_988;obj_t BgL_arg1830z00_989;
BgL_arg1829z00_988 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 345 */
obj_t BgL_arg1833z00_990;obj_t BgL_arg1836z00_991;
{ /* ./Match/compiler.scm 345 */
obj_t BgL_arg1839z00_992;obj_t BgL_arg1840z00_993;
BgL_arg1839z00_992 = BGl_symbol3689z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 345 */
obj_t BgL_arg1843z00_994;obj_t BgL_arg1845z00_995;
{ /* ./Match/compiler.scm 345 */
obj_t BgL_arg1848z00_996;obj_t BgL_arg1849z00_997;
BgL_arg1848z00_996 = BGl_symbol3667z00zz__match_compilerz00; 
BgL_arg1849z00_997 = 
MAKE_PAIR(BgL_ez00_118, BNIL); 
BgL_arg1843z00_994 = 
MAKE_PAIR(BgL_arg1848z00_996, BgL_arg1849z00_997); } 
BgL_arg1845z00_995 = 
MAKE_PAIR(BgL_lgminz00_116, BNIL); 
BgL_arg1840z00_993 = 
MAKE_PAIR(BgL_arg1843z00_994, BgL_arg1845z00_995); } 
BgL_arg1833z00_990 = 
MAKE_PAIR(BgL_arg1839z00_992, BgL_arg1840z00_993); } 
{ /* ./Match/compiler.scm 346 */
obj_t BgL_arg1854z00_998;obj_t BgL_arg1855z00_999;
{ /* ./Match/compiler.scm 346 */
obj_t BgL_fun1860z00_1000;
BgL_fun1860z00_1000 = 
BGl_compilez00zz__match_compilerz00(BgL_fz00_117, BgL_ez00_118, BgL_rz00_119, BgL_mz00_120, BgL_kz00_121, BgL_za7za7_122, BgL_dz00_123); 
BgL_arg1854z00_998 = 
PROCEDURE_ENTRY(BgL_fun1860z00_1000)(BgL_fun1860z00_1000, 
BINT(((long)0)), BEOA); } 
{ /* ./Match/compiler.scm 348 */
obj_t BgL_arg1864z00_1002;
BgL_arg1864z00_1002 = 
PROCEDURE_ENTRY(BgL_za7za7_122)(BgL_za7za7_122, BgL_dz00_123, BEOA); 
BgL_arg1855z00_999 = 
MAKE_PAIR(BgL_arg1864z00_1002, BNIL); } 
BgL_arg1836z00_991 = 
MAKE_PAIR(BgL_arg1854z00_998, BgL_arg1855z00_999); } 
BgL_arg1830z00_989 = 
MAKE_PAIR(BgL_arg1833z00_990, BgL_arg1836z00_991); } 
return 
MAKE_PAIR(BgL_arg1829z00_988, BgL_arg1830z00_989);} }  else 
{ /* ./Match/compiler.scm 357 */
obj_t BgL_arg1873z00_1005;obj_t BgL_arg1874z00_1006;
BgL_arg1873z00_1005 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 349 */
obj_t BgL_arg1877z00_1007;obj_t BgL_arg1878z00_1008;
{ /* ./Match/compiler.scm 349 */
obj_t BgL_arg1881z00_1009;obj_t BgL_arg1882z00_1010;
BgL_arg1881z00_1009 = BGl_symbol3690z00zz__match_compilerz00; 
BgL_arg1882z00_1010 = 
MAKE_PAIR(BgL_ez00_118, BNIL); 
BgL_arg1877z00_1007 = 
MAKE_PAIR(BgL_arg1881z00_1009, BgL_arg1882z00_1010); } 
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1886z00_1011;obj_t BgL_arg1887z00_1012;
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1890z00_1013;obj_t BgL_arg1891z00_1014;
BgL_arg1890z00_1013 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1894z00_1015;obj_t BgL_arg1895z00_1016;
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1898z00_1017;obj_t BgL_arg1899z00_1018;
BgL_arg1898z00_1017 = BGl_symbol3689z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1902z00_1019;obj_t BgL_arg1904z00_1020;
{ /* ./Match/compiler.scm 350 */
obj_t BgL_arg1907z00_1021;obj_t BgL_arg1908z00_1022;
BgL_arg1907z00_1021 = BGl_symbol3667z00zz__match_compilerz00; 
BgL_arg1908z00_1022 = 
MAKE_PAIR(BgL_ez00_118, BNIL); 
BgL_arg1902z00_1019 = 
MAKE_PAIR(BgL_arg1907z00_1021, BgL_arg1908z00_1022); } 
BgL_arg1904z00_1020 = 
MAKE_PAIR(BgL_lgminz00_116, BNIL); 
BgL_arg1899z00_1018 = 
MAKE_PAIR(BgL_arg1902z00_1019, BgL_arg1904z00_1020); } 
BgL_arg1894z00_1015 = 
MAKE_PAIR(BgL_arg1898z00_1017, BgL_arg1899z00_1018); } 
{ /* ./Match/compiler.scm 353 */
obj_t BgL_arg1915z00_1023;obj_t BgL_arg1916z00_1024;
{ /* ./Match/compiler.scm 353 */
obj_t BgL_fun1937z00_1031;
{ /* ./Match/compiler.scm 353 */
obj_t BgL_arg1920z00_1025;
{ /* ./Match/compiler.scm 353 */
obj_t BgL_arg1923z00_1026;obj_t BgL_arg1924z00_1027;
BgL_arg1923z00_1026 = BGl_symbol3688z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 354 */
obj_t BgL_arg1928z00_1028;
{ /* ./Match/compiler.scm 353 */
obj_t BgL_auxz00_3912;
{ /* ./Match/compiler.scm 354 */
int BgL_auxz00_3913;
BgL_auxz00_3913 = 
CINT(BgL_lgminz00_116); 
BgL_auxz00_3912 = 
make_vector(BgL_auxz00_3913, BGl_list3638z00zz__match_compilerz00); } 
BgL_arg1928z00_1028 = 
MAKE_PAIR(BgL_auxz00_3912, BNIL); } 
BgL_arg1924z00_1027 = 
MAKE_PAIR(BgL_lgminz00_116, BgL_arg1928z00_1028); } 
BgL_arg1920z00_1025 = 
MAKE_PAIR(BgL_arg1923z00_1026, BgL_arg1924z00_1027); } 
BgL_fun1937z00_1031 = 
BGl_compilez00zz__match_compilerz00(BgL_fz00_117, BgL_ez00_118, BgL_rz00_119, BgL_mz00_120, BgL_kz00_121, BgL_za7za7_122, BgL_arg1920z00_1025); } 
BgL_arg1915z00_1023 = 
PROCEDURE_ENTRY(BgL_fun1937z00_1031)(BgL_fun1937z00_1031, 
BINT(((long)0)), BEOA); } 
{ /* ./Match/compiler.scm 355 */
obj_t BgL_arg1941z00_1033;
{ /* ./Match/compiler.scm 355 */
obj_t BgL_arg1946z00_1035;
{ /* ./Match/compiler.scm 355 */
obj_t BgL_arg1949z00_1036;obj_t BgL_arg1950z00_1037;
BgL_arg1949z00_1036 = BGl_symbol3688z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 355 */
obj_t BgL_arg1954z00_1039;
{ /* ./Match/compiler.scm 355 */
obj_t BgL_auxz00_3923;
{ /* ./Match/compiler.scm 356 */
int BgL_auxz00_3924;
BgL_auxz00_3924 = 
(int)(((long)0)); 
BgL_auxz00_3923 = 
make_vector(BgL_auxz00_3924, BGl_list3638z00zz__match_compilerz00); } 
BgL_arg1954z00_1039 = 
MAKE_PAIR(BgL_auxz00_3923, BNIL); } 
{ /* ./Match/compiler.scm 355 */
obj_t BgL_auxz00_3928;
BgL_auxz00_3928 = 
BINT(((long)0)); 
BgL_arg1950z00_1037 = 
MAKE_PAIR(BgL_auxz00_3928, BgL_arg1954z00_1039); } } 
BgL_arg1946z00_1035 = 
MAKE_PAIR(BgL_arg1949z00_1036, BgL_arg1950z00_1037); } 
BgL_arg1941z00_1033 = 
PROCEDURE_ENTRY(BgL_za7za7_122)(BgL_za7za7_122, BgL_arg1946z00_1035, BEOA); } 
BgL_arg1916z00_1024 = 
MAKE_PAIR(BgL_arg1941z00_1033, BNIL); } 
BgL_arg1895z00_1016 = 
MAKE_PAIR(BgL_arg1915z00_1023, BgL_arg1916z00_1024); } 
BgL_arg1891z00_1014 = 
MAKE_PAIR(BgL_arg1894z00_1015, BgL_arg1895z00_1016); } 
BgL_arg1886z00_1011 = 
MAKE_PAIR(BgL_arg1890z00_1013, BgL_arg1891z00_1014); } 
{ /* ./Match/compiler.scm 357 */
obj_t BgL_arg1962z00_1042;
{ /* ./Match/compiler.scm 357 */
obj_t BgL_arg1966z00_1044;
BgL_arg1966z00_1044 = 
BGl_patternzd2pluszd2zz__match_descriptionsz00(BgL_dz00_123, BGl_list3691z00zz__match_compilerz00); 
BgL_arg1962z00_1042 = 
PROCEDURE_ENTRY(BgL_za7za7_122)(BgL_za7za7_122, BgL_arg1966z00_1044, BEOA); } 
BgL_arg1887z00_1012 = 
MAKE_PAIR(BgL_arg1962z00_1042, BNIL); } 
BgL_arg1878z00_1008 = 
MAKE_PAIR(BgL_arg1886z00_1011, BgL_arg1887z00_1012); } 
BgL_arg1874z00_1006 = 
MAKE_PAIR(BgL_arg1877z00_1007, BgL_arg1878z00_1008); } 
return 
MAKE_PAIR(BgL_arg1873z00_1005, BgL_arg1874z00_1006);} } } 
}



/* compile-vector-cons */
obj_t BGl_compilezd2vectorzd2consz00zz__match_compilerz00(obj_t BgL_f1z00_124, obj_t BgL_f2z00_125, obj_t BgL_ez00_126, obj_t BgL_rz00_127, obj_t BgL_mz00_128, obj_t BgL_kz00_129, obj_t BgL_za7za7_130, obj_t BgL_dz00_131)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 363 */
{ /* ./Match/compiler.scm 364 */
obj_t BgL_zc3anonymousza31970ze3z83_2608;
{ 
int BgL_auxz00_3947;int BgL_auxz00_3945;
BgL_auxz00_3947 = 
(int)(((long)8)); 
BgL_auxz00_3945 = 
(int)(((long)1)); 
BgL_zc3anonymousza31970ze3z83_2608 = 
make_fx_procedure(BGl_zc3anonymousza31970ze3z83zz__match_compilerz00, BgL_auxz00_3945, BgL_auxz00_3947); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3950;
BgL_auxz00_3950 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3950, BgL_dz00_131); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3953;
BgL_auxz00_3953 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3953, BgL_ez00_126); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3956;
BgL_auxz00_3956 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3956, BgL_f2z00_125); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3959;
BgL_auxz00_3959 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3959, BgL_mz00_128); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3962;
BgL_auxz00_3962 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3962, BgL_kz00_129); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3965;
BgL_auxz00_3965 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3965, BgL_za7za7_130); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3968;
BgL_auxz00_3968 = 
(int)(((long)6)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3968, BgL_f1z00_124); } 
{ /* ./Match/compiler.scm 364 */
int BgL_auxz00_3971;
BgL_auxz00_3971 = 
(int)(((long)7)); 
PROCEDURE_SET(BgL_zc3anonymousza31970ze3z83_2608, BgL_auxz00_3971, BgL_rz00_127); } 
return BgL_zc3anonymousza31970ze3z83_2608;} } 
}



/* <anonymous:1970> */
obj_t BGl_zc3anonymousza31970ze3z83zz__match_compilerz00(obj_t BgL_envz00_2609, obj_t BgL_iz00_2618)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 364 */
{ /* ./Match/compiler.scm 365 */
obj_t BgL_dz00_2610;obj_t BgL_ez00_2611;obj_t BgL_f2z00_2612;obj_t BgL_mz00_2613;obj_t BgL_kz00_2614;obj_t BgL_za7za7_2615;obj_t BgL_f1z00_2616;obj_t BgL_rz00_2617;
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3974;
BgL_auxz00_3974 = 
(int)(((long)0)); 
BgL_dz00_2610 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3974); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3977;
BgL_auxz00_3977 = 
(int)(((long)1)); 
BgL_ez00_2611 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3977); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3980;
BgL_auxz00_3980 = 
(int)(((long)2)); 
BgL_f2z00_2612 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3980); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3983;
BgL_auxz00_3983 = 
(int)(((long)3)); 
BgL_mz00_2613 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3983); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3986;
BgL_auxz00_3986 = 
(int)(((long)4)); 
BgL_kz00_2614 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3986); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3989;
BgL_auxz00_3989 = 
(int)(((long)5)); 
BgL_za7za7_2615 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3989); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3992;
BgL_auxz00_3992 = 
(int)(((long)6)); 
BgL_f1z00_2616 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3992); } 
{ /* ./Match/compiler.scm 365 */
int BgL_auxz00_3995;
BgL_auxz00_3995 = 
(int)(((long)7)); 
BgL_rz00_2617 = 
PROCEDURE_REF(BgL_envz00_2609, BgL_auxz00_3995); } 
{ 
obj_t BgL_iz00_1045;
BgL_iz00_1045 = BgL_iz00_2618; 
{ /* ./Match/compiler.scm 365 */
bool_t BgL_test1971z00_1047;
{ /* ./Match/compiler.scm 365 */
int BgL_arg1985z00_1053;
{ 
obj_t BgL_auxz00_3998;
{ /* ./Match/compiler.scm 365 */
obj_t BgL_auxz00_3999;
{ /* ./Match/compiler.scm 365 */
obj_t BgL_auxz00_4000;
BgL_auxz00_4000 = 
CDR(BgL_dz00_2610); 
BgL_auxz00_3999 = 
CDR(BgL_auxz00_4000); } 
BgL_auxz00_3998 = 
CAR(BgL_auxz00_3999); } 
BgL_arg1985z00_1053 = 
VECTOR_LENGTH(BgL_auxz00_3998); } 
BgL_test1971z00_1047 = 
BGl_2ze3zd3z30zz__r4_numbers_6_5z00(BgL_iz00_1045, 
BINT(BgL_arg1985z00_1053)); } 
if(BgL_test1971z00_1047)
{ /* ./Match/compiler.scm 366 */
obj_t BgL_auxz00_4012;obj_t BgL_auxz00_4008;
{ /* ./Match/compiler.scm 367 */
obj_t BgL_auxz00_4013;
{ /* ./Match/compiler.scm 367 */
obj_t BgL_auxz00_4014;
{ /* ./Match/compiler.scm 367 */
obj_t BgL_auxz00_4015;
BgL_auxz00_4015 = 
CDR(BgL_dz00_2610); 
BgL_auxz00_4014 = 
CDR(BgL_auxz00_4015); } 
BgL_auxz00_4013 = 
CAR(BgL_auxz00_4014); } 
BgL_auxz00_4012 = 
BGl_extendzd2vectorzd2zz__match_descriptionsz00(BgL_auxz00_4013, 
BGl_2zb2zb2zz__r4_numbers_6_5z00(BgL_iz00_1045, 
BINT(((long)1))), BGl_list3638z00zz__match_compilerz00); } 
{ /* ./Match/compiler.scm 366 */
obj_t BgL_auxz00_4009;
BgL_auxz00_4009 = 
CDR(BgL_dz00_2610); 
BgL_auxz00_4008 = 
CDR(BgL_auxz00_4009); } 
SET_CAR(BgL_auxz00_4008, BgL_auxz00_4012); }  else 
{ /* ./Match/compiler.scm 365 */BTRUE; } } 
{ /* ./Match/compiler.scm 369 */
obj_t BgL_arg1992z00_1055;obj_t BgL_arg1995z00_1058;
{ /* ./Match/compiler.scm 369 */
obj_t BgL_arg1998z00_1059;obj_t BgL_arg2000z00_1060;
BgL_arg1998z00_1059 = BGl_symbol3693z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 369 */
obj_t BgL_arg2004z00_1061;
BgL_arg2004z00_1061 = 
MAKE_PAIR(BgL_iz00_1045, BNIL); 
BgL_arg2000z00_1060 = 
MAKE_PAIR(BgL_ez00_2611, BgL_arg2004z00_1061); } 
BgL_arg1992z00_1055 = 
MAKE_PAIR(BgL_arg1998z00_1059, BgL_arg2000z00_1060); } 
{ 
int BgL_auxz00_4032;obj_t BgL_auxz00_4026;
BgL_auxz00_4032 = 
CINT(BgL_iz00_1045); 
{ /* ./Match/compiler.scm 375 */
obj_t BgL_auxz00_4027;
{ /* ./Match/compiler.scm 375 */
obj_t BgL_auxz00_4028;
BgL_auxz00_4028 = 
CDR(BgL_dz00_2610); 
BgL_auxz00_4027 = 
CDR(BgL_auxz00_4028); } 
BgL_auxz00_4026 = 
CAR(BgL_auxz00_4027); } 
BgL_arg1995z00_1058 = 
VECTOR_REF(BgL_auxz00_4026,BgL_auxz00_4032); } 
{ /* ./Match/compiler.scm 371 */
obj_t BgL_zc3anonymousza32007ze3z83_2607;obj_t BgL_zc3anonymousza32018ze3z83_2606;
{ 
int BgL_auxz00_4037;int BgL_auxz00_4035;
BgL_auxz00_4037 = 
(int)(((long)7)); 
BgL_auxz00_4035 = 
(int)(((long)3)); 
BgL_zc3anonymousza32007ze3z83_2607 = 
make_fx_procedure(BGl_zc3anonymousza32007ze3z83zz__match_compilerz00, BgL_auxz00_4035, BgL_auxz00_4037); } 
{ 
int BgL_auxz00_4042;int BgL_auxz00_4040;
BgL_auxz00_4042 = 
(int)(((long)3)); 
BgL_auxz00_4040 = 
(int)(((long)1)); 
BgL_zc3anonymousza32018ze3z83_2606 = 
make_fx_procedure(BGl_zc3anonymousza32018ze3z83zz__match_compilerz00, BgL_auxz00_4040, BgL_auxz00_4042); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4045;
BgL_auxz00_4045 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4045, BgL_dz00_2610); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4048;
BgL_auxz00_4048 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4048, BgL_iz00_1045); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4051;
BgL_auxz00_4051 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4051, BgL_f2z00_2612); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4054;
BgL_auxz00_4054 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4054, BgL_ez00_2611); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4057;
BgL_auxz00_4057 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4057, BgL_mz00_2613); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4060;
BgL_auxz00_4060 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4060, BgL_kz00_2614); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4063;
BgL_auxz00_4063 = 
(int)(((long)6)); 
PROCEDURE_SET(BgL_zc3anonymousza32007ze3z83_2607, BgL_auxz00_4063, BgL_za7za7_2615); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4066;
BgL_auxz00_4066 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32018ze3z83_2606, BgL_auxz00_4066, BgL_dz00_2610); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4069;
BgL_auxz00_4069 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32018ze3z83_2606, BgL_auxz00_4069, BgL_iz00_1045); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4072;
BgL_auxz00_4072 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32018ze3z83_2606, BgL_auxz00_4072, BgL_za7za7_2615); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_f1z00_2616, BgL_arg1992z00_1055, BgL_rz00_2617, BgL_mz00_2613, BgL_zc3anonymousza32007ze3z83_2607, BgL_zc3anonymousza32018ze3z83_2606, BgL_arg1995z00_1058);} } } } } 
}



/* <anonymous:2018> */
obj_t BGl_zc3anonymousza32018ze3z83zz__match_compilerz00(obj_t BgL_envz00_2619, obj_t BgL_d1z00_2623)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 373 */
{ /* ./Match/compiler.scm 374 */
obj_t BgL_dz00_2620;obj_t BgL_iz00_2621;obj_t BgL_za7za7_2622;
{ /* ./Match/compiler.scm 374 */
int BgL_auxz00_4076;
BgL_auxz00_4076 = 
(int)(((long)0)); 
BgL_dz00_2620 = 
PROCEDURE_REF(BgL_envz00_2619, BgL_auxz00_4076); } 
{ /* ./Match/compiler.scm 374 */
int BgL_auxz00_4079;
BgL_auxz00_4079 = 
(int)(((long)1)); 
BgL_iz00_2621 = 
PROCEDURE_REF(BgL_envz00_2619, BgL_auxz00_4079); } 
{ /* ./Match/compiler.scm 374 */
int BgL_auxz00_4082;
BgL_auxz00_4082 = 
(int)(((long)2)); 
BgL_za7za7_2622 = 
PROCEDURE_REF(BgL_envz00_2619, BgL_auxz00_4082); } 
{ 
obj_t BgL_d1z00_1069;
BgL_d1z00_1069 = BgL_d1z00_2623; 
{ /* ./Match/compiler.scm 374 */
obj_t BgL_arg2021z00_2123;
BgL_arg2021z00_2123 = 
BGl_vectorzd2pluszd2zz__match_descriptionsz00(BgL_dz00_2620, BgL_iz00_2621, BgL_d1z00_1069); 
return 
PROCEDURE_ENTRY(BgL_za7za7_2622)(BgL_za7za7_2622, BgL_arg2021z00_2123, BEOA);} } } } 
}



/* <anonymous:2007> */
obj_t BGl_zc3anonymousza32007ze3z83zz__match_compilerz00(obj_t BgL_envz00_2624, obj_t BgL_rz00_2632, obj_t BgL_za71za7_2633, obj_t BgL_d1z00_2634)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 370 */
{ /* ./Match/compiler.scm 371 */
obj_t BgL_dz00_2625;obj_t BgL_iz00_2626;obj_t BgL_f2z00_2627;obj_t BgL_ez00_2628;obj_t BgL_mz00_2629;obj_t BgL_kz00_2630;obj_t BgL_za7za7_2631;
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4088;
BgL_auxz00_4088 = 
(int)(((long)0)); 
BgL_dz00_2625 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4088); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4091;
BgL_auxz00_4091 = 
(int)(((long)1)); 
BgL_iz00_2626 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4091); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4094;
BgL_auxz00_4094 = 
(int)(((long)2)); 
BgL_f2z00_2627 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4094); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4097;
BgL_auxz00_4097 = 
(int)(((long)3)); 
BgL_ez00_2628 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4097); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4100;
BgL_auxz00_4100 = 
(int)(((long)4)); 
BgL_mz00_2629 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4100); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4103;
BgL_auxz00_4103 = 
(int)(((long)5)); 
BgL_kz00_2630 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4103); } 
{ /* ./Match/compiler.scm 371 */
int BgL_auxz00_4106;
BgL_auxz00_4106 = 
(int)(((long)6)); 
BgL_za7za7_2631 = 
PROCEDURE_REF(BgL_envz00_2624, BgL_auxz00_4106); } 
{ 
obj_t BgL_rz00_1062;obj_t BgL_za71za7_1063;obj_t BgL_d1z00_1064;
BgL_rz00_1062 = BgL_rz00_2632; 
BgL_za71za7_1063 = BgL_za71za7_2633; 
BgL_d1z00_1064 = BgL_d1z00_2634; 
{ /* ./Match/compiler.scm 371 */
obj_t BgL_fun2015z00_2120;
BgL_fun2015z00_2120 = 
BGl_compilez00zz__match_compilerz00(BgL_f2z00_2627, BgL_ez00_2628, BgL_rz00_1062, BgL_mz00_2629, BgL_kz00_2630, BgL_za7za7_2631, 
BGl_vectorzd2pluszd2zz__match_descriptionsz00(BgL_dz00_2625, BgL_iz00_2626, BgL_d1z00_1064)); 
{ /* ./Match/compiler.scm 371 */
obj_t BgL_arg2014z00_2122;
BgL_arg2014z00_2122 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(BgL_iz00_2626, 
BINT(((long)1))); 
return 
PROCEDURE_ENTRY(BgL_fun2015z00_2120)(BgL_fun2015z00_2120, BgL_arg2014z00_2122, BEOA);} } } } } 
}



/* compile-struct-pat */
obj_t BGl_compilezd2structzd2patz00zz__match_compilerz00(obj_t BgL_fz00_153, obj_t BgL_ez00_154, obj_t BgL_rz00_155, obj_t BgL_mz00_156, obj_t BgL_kz00_157, obj_t BgL_za7za7_158, obj_t BgL_dz00_159)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 393 */
{ /* ./Match/compiler.scm 394 */
obj_t BgL_nomz00_1090;
{ /* ./Match/compiler.scm 394 */
obj_t BgL_auxz00_4115;
BgL_auxz00_4115 = 
CDR(BgL_fz00_153); 
BgL_nomz00_1090 = 
CAR(BgL_auxz00_4115); } 
{ /* ./Match/compiler.scm 394 */
obj_t BgL_pza2za2_1091;
{ /* ./Match/compiler.scm 395 */
obj_t BgL_auxz00_4118;
BgL_auxz00_4118 = 
CDR(BgL_fz00_153); 
BgL_pza2za2_1091 = 
CDR(BgL_auxz00_4118); } 
{ /* ./Match/compiler.scm 395 */
obj_t BgL_za2kza2z00_1092;
BgL_za2kza2z00_1092 = 
PROCEDURE_ENTRY(BGl_jimzd2gensymzd2zz__match_s2cfunz00)(BGl_jimzd2gensymzd2zz__match_s2cfunz00, BGl_string3676z00zz__match_compilerz00, BEOA); 
{ /* ./Match/compiler.scm 396 */
obj_t BgL_za2varsza2z00_1093;
BgL_za2varsza2z00_1093 = 
BGl_patternzd2variableszd2zz__match_descriptionsz00(BgL_fz00_153); 
{ /* ./Match/compiler.scm 397 */
obj_t BgL_za2callza2z00_1094;
{ /* ./Match/compiler.scm 398 */
obj_t BgL_auxz00_4124;
BgL_auxz00_4124 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_za2varsza2z00_1093, BNIL); 
BgL_za2callza2z00_1094 = 
MAKE_PAIR(BgL_za2kza2z00_1092, BgL_auxz00_4124); } 
{ /* ./Match/compiler.scm 398 */
obj_t BgL_successzd2formzd2_1095;
{ /* ./Match/compiler.scm 399 */
obj_t BgL_arg2095z00_1120;
BgL_arg2095z00_1120 = 
BGl_extendza2z72zd0zz__match_compilerz00(BgL_rz00_155, BgL_za2varsza2z00_1093); 
BgL_successzd2formzd2_1095 = 
PROCEDURE_ENTRY(BgL_kz00_157)(BgL_kz00_157, BgL_arg2095z00_1120, BgL_za7za7_158, BgL_dz00_159, BEOA); } 
{ /* ./Match/compiler.scm 399 */
obj_t BgL_failurezd2formzd2_1096;
BgL_failurezd2formzd2_1096 = 
PROCEDURE_ENTRY(BgL_za7za7_158)(BgL_za7za7_158, BgL_dz00_159, BEOA); 
{ /* ./Match/compiler.scm 400 */
obj_t BgL_indexesz00_1097;
{ /* ./Match/compiler.scm 401 */
long BgL_auxz00_4132;
{ /* ./Match/compiler.scm 401 */
obj_t BgL_auxz00_4133;
{ /* ./Match/compiler.scm 401 */
obj_t BgL_auxz00_4134;
{ /* ./Match/compiler.scm 401 */
long BgL_auxz00_4135;
BgL_auxz00_4135 = 
bgl_list_length(BgL_pza2za2_1091); 
BgL_auxz00_4134 = 
BINT(BgL_auxz00_4135); } 
BgL_auxz00_4133 = 
BGl_2zd2zd2zz__r4_numbers_6_5z00(BgL_auxz00_4134, 
BINT(((long)1))); } 
BgL_auxz00_4132 = 
(long)CINT(BgL_auxz00_4133); } 
BgL_indexesz00_1097 = 
BGl_integersz72z72zz__match_compilerz00(BgL_auxz00_4132, ((long)0)); } 
{ /* ./Match/compiler.scm 401 */

{ /* ./Match/compiler.scm 403 */
obj_t BgL_arg2059z00_1098;obj_t BgL_arg2061z00_1099;
{ /* ./Match/compiler.scm 403 */
obj_t BgL_arg2064z00_1100;obj_t BgL_arg2065z00_1101;
{ /* ./Match/compiler.scm 403 */
obj_t BgL_arg2068z00_1102;
{ /* ./Match/compiler.scm 403 */
obj_t BgL_arg2071z00_1103;
BgL_arg2071z00_1103 = 
SYMBOL_TO_STRING(BgL_nomz00_1090); 
BgL_arg2068z00_1102 = 
string_append(BgL_arg2071z00_1103, BGl_string3694z00zz__match_compilerz00); } 
{ /* ./Match/compiler.scm 402 */
char * BgL_auxz00_4144;
BgL_auxz00_4144 = 
BSTRING_TO_STRING(BgL_arg2068z00_1102); 
BgL_arg2064z00_1100 = 
string_to_symbol(BgL_auxz00_4144); } } 
BgL_arg2065z00_1101 = 
MAKE_PAIR(BgL_ez00_154, BNIL); 
BgL_arg2059z00_1098 = 
MAKE_PAIR(BgL_arg2064z00_1100, BgL_arg2065z00_1101); } 
{ /* ./Match/compiler.scm 407 */
obj_t BgL_arg2080z00_1107;
BgL_arg2080z00_1107 = BGl_list3638z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 407 */
obj_t BgL_zc3anonymousza32083ze3z83_2635;
{ 
int BgL_auxz00_4151;int BgL_auxz00_4149;
BgL_auxz00_4151 = 
(int)(((long)1)); 
BgL_auxz00_4149 = 
(int)(((long)1)); 
BgL_zc3anonymousza32083ze3z83_2635 = 
make_fx_procedure(BGl_zc3anonymousza32083ze3z83zz__match_compilerz00, BgL_auxz00_4149, BgL_auxz00_4151); } 
{ /* ./Match/compiler.scm 407 */
int BgL_auxz00_4154;
BgL_auxz00_4154 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32083ze3z83_2635, BgL_auxz00_4154, BgL_failurezd2formzd2_1096); } 
BgL_arg2061z00_1099 = 
BGl_compileza2_3281za2zz__match_compilerz00(BgL_successzd2formzd2_1095, BgL_zc3anonymousza32083ze3z83_2635, BgL_mz00_156, BgL_ez00_154, BgL_failurezd2formzd2_1096, BgL_pza2za2_1091, BgL_indexesz00_1097, BgL_rz00_155, BgL_arg2080z00_1107); } } 
return 
BGl_buildzd2ifzd2zz__match_compilerz00(BgL_arg2059z00_1098, BgL_arg2061z00_1099, BgL_failurezd2formzd2_1096);} } } } } } } } } } } 
}



/* extend*' */
obj_t BGl_extendza2z72zd0zz__match_compilerz00(obj_t BgL_rz00_2665, obj_t BgL_vza2za2_2152)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 449 */
if(
NULLP(BgL_vza2za2_2152))
{ /* ./Match/compiler.scm 399 */
return BgL_rz00_2665;}  else 
{ /* ./Match/compiler.scm 399 */
obj_t BgL_arg2166z00_2154;obj_t BgL_arg2167z00_2155;obj_t BgL_arg2168z00_2156;
BgL_arg2166z00_2154 = 
BGl_extendza2z72zd0zz__match_compilerz00(BgL_rz00_2665, 
CDR(BgL_vza2za2_2152)); 
BgL_arg2167z00_2155 = 
CAR(BgL_vza2za2_2152); 
BgL_arg2168z00_2156 = BGl_symbol3678z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 399 */
obj_t BgL_arg2153z00_2164;obj_t BgL_arg2154z00_2165;
BgL_arg2153z00_2164 = 
MAKE_PAIR(BgL_arg2167z00_2155, BgL_arg2168z00_2156); 
BgL_arg2154z00_2165 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_arg2166z00_2154, BNIL); 
return 
MAKE_PAIR(BgL_arg2153z00_2164, BgL_arg2154z00_2165);} } } 
}



/* integers' */
obj_t BGl_integersz72z72zz__match_compilerz00(long BgL_arg2086z00_2666, long BgL_fromz00_2167)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 515 */
if(
BGl_2ze3ze3zz__r4_numbers_6_5z00(
BINT(BgL_fromz00_2167), 
BINT(BgL_arg2086z00_2666)))
{ /* ./Match/compiler.scm 401 */
return BNIL;}  else 
{ /* ./Match/compiler.scm 401 */
obj_t BgL_auxz00_4173;obj_t BgL_auxz00_4171;
{ /* ./Match/compiler.scm 401 */
long BgL_auxz00_4174;
{ /* ./Match/compiler.scm 401 */
obj_t BgL_auxz00_4175;
BgL_auxz00_4175 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(BgL_fromz00_2167), 
BINT(((long)1))); 
BgL_auxz00_4174 = 
(long)CINT(BgL_auxz00_4175); } 
BgL_auxz00_4173 = 
BGl_integersz72z72zz__match_compilerz00(BgL_arg2086z00_2666, BgL_auxz00_4174); } 
BgL_auxz00_4171 = 
BINT(BgL_fromz00_2167); 
return 
MAKE_PAIR(BgL_auxz00_4171, BgL_auxz00_4173);} } 
}



/* compile*_3281 */
obj_t BGl_compileza2_3281za2zz__match_compilerz00(obj_t BgL_successzd2formzd2_2642, obj_t BgL_zc3anonymousza32083ze3z83_2641, obj_t BgL_mz00_2640, obj_t BgL_ez00_2639, obj_t BgL_failurezd2formzd2_2638, obj_t BgL_pza2za2_2177, obj_t BgL_iza2za2_2178, obj_t BgL_rz00_2179, obj_t BgL_dz00_2180)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 412 */
if(
NULLP(BgL_pza2za2_2177))
{ /* ./Match/compiler.scm 406 */
return BgL_successzd2formzd2_2642;}  else 
{ /* ./Match/compiler.scm 406 */
obj_t BgL_arg2109z00_2182;obj_t BgL_arg2111z00_2183;obj_t BgL_arg2113z00_2184;
BgL_arg2109z00_2182 = 
CAR(BgL_pza2za2_2177); 
{ /* ./Match/compiler.scm 406 */
obj_t BgL_arg2118z00_2185;obj_t BgL_arg2119z00_2186;
BgL_arg2118z00_2185 = BGl_symbol3695z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 406 */
obj_t BgL_arg2122z00_2187;
{ /* ./Match/compiler.scm 406 */
obj_t BgL_auxz00_4185;
BgL_auxz00_4185 = 
CAR(BgL_iza2za2_2178); 
BgL_arg2122z00_2187 = 
MAKE_PAIR(BgL_auxz00_4185, BNIL); } 
BgL_arg2119z00_2186 = 
MAKE_PAIR(BgL_ez00_2639, BgL_arg2122z00_2187); } 
BgL_arg2111z00_2183 = 
MAKE_PAIR(BgL_arg2118z00_2185, BgL_arg2119z00_2186); } 
BgL_arg2113z00_2184 = BGl_list3638z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 406 */
obj_t BgL_zc3anonymousza32129ze3z83_2636;
{ 
int BgL_auxz00_4192;int BgL_auxz00_4190;
BgL_auxz00_4192 = 
(int)(((long)7)); 
BgL_auxz00_4190 = 
(int)(((long)3)); 
BgL_zc3anonymousza32129ze3z83_2636 = 
make_fx_procedure(BGl_zc3anonymousza32129ze3z83zz__match_compilerz00, BgL_auxz00_4190, BgL_auxz00_4192); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4195;
BgL_auxz00_4195 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4195, BgL_failurezd2formzd2_2638); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4198;
BgL_auxz00_4198 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4198, BgL_ez00_2639); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4201;
BgL_auxz00_4201 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4201, BgL_mz00_2640); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4204;
BgL_auxz00_4204 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4204, BgL_zc3anonymousza32083ze3z83_2641); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4207;
BgL_auxz00_4207 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4207, BgL_successzd2formzd2_2642); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4210;
BgL_auxz00_4210 = 
(int)(((long)5)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4210, BgL_pza2za2_2177); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4213;
BgL_auxz00_4213 = 
(int)(((long)6)); 
PROCEDURE_SET(BgL_zc3anonymousza32129ze3z83_2636, BgL_auxz00_4213, BgL_iza2za2_2178); } 
return 
BGl_compilez00zz__match_compilerz00(BgL_arg2109z00_2182, BgL_arg2111z00_2183, BgL_rz00_2179, BgL_mz00_2640, BgL_zc3anonymousza32129ze3z83_2636, BgL_zc3anonymousza32083ze3z83_2641, BgL_arg2113z00_2184);} } } 
}



/* <anonymous:2083> */
obj_t BGl_zc3anonymousza32083ze3z83zz__match_compilerz00(obj_t BgL_envz00_2643, obj_t BgL_dz00_2645)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 408 */
{ /* ./Match/compiler.scm 408 */
int BgL_auxz00_4217;
BgL_auxz00_4217 = 
(int)(((long)0)); 
return 
PROCEDURE_REF(BgL_envz00_2643, BgL_auxz00_4217);} } 
}



/* <anonymous:2129> */
obj_t BGl_zc3anonymousza32129ze3z83zz__match_compilerz00(obj_t BgL_envz00_2646, obj_t BgL_rrz00_2654, obj_t BgL_za7za7z00_2655, obj_t BgL_ddz00_2656)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 416 */
{ /* ./Match/compiler.scm 406 */
obj_t BgL_failurezd2formzd2_2647;obj_t BgL_ez00_2648;obj_t BgL_mz00_2649;obj_t BgL_zc3anonymousza32083ze3z83_2650;obj_t BgL_successzd2formzd2_2651;obj_t BgL_pza2za2_2652;obj_t BgL_iza2za2_2653;
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4220;
BgL_auxz00_4220 = 
(int)(((long)0)); 
BgL_failurezd2formzd2_2647 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4220); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4223;
BgL_auxz00_4223 = 
(int)(((long)1)); 
BgL_ez00_2648 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4223); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4226;
BgL_auxz00_4226 = 
(int)(((long)2)); 
BgL_mz00_2649 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4226); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4229;
BgL_auxz00_4229 = 
(int)(((long)3)); 
BgL_zc3anonymousza32083ze3z83_2650 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4229); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4232;
BgL_auxz00_4232 = 
(int)(((long)4)); 
BgL_successzd2formzd2_2651 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4232); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4235;
BgL_auxz00_4235 = 
(int)(((long)5)); 
BgL_pza2za2_2652 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4235); } 
{ /* ./Match/compiler.scm 406 */
int BgL_auxz00_4238;
BgL_auxz00_4238 = 
(int)(((long)6)); 
BgL_iza2za2_2653 = 
PROCEDURE_REF(BgL_envz00_2646, BgL_auxz00_4238); } 
{ 
obj_t BgL_rrz00_2191;obj_t BgL_za7za7z00_2192;obj_t BgL_ddz00_2193;
BgL_rrz00_2191 = BgL_rrz00_2654; 
BgL_za7za7z00_2192 = BgL_za7za7z00_2655; 
BgL_ddz00_2193 = BgL_ddz00_2656; 
return 
BGl_compileza2_3281za2zz__match_compilerz00(BgL_successzd2formzd2_2651, BgL_zc3anonymousza32083ze3z83_2650, BgL_mz00_2649, BgL_ez00_2648, BgL_failurezd2formzd2_2647, 
CDR(BgL_pza2za2_2652), 
CDR(BgL_iza2za2_2653), BgL_rrz00_2191, BGl_list3638z00zz__match_compilerz00);} } } 
}



/* _k.init */
obj_t BGl__kze2initze2zz__match_compilerz00(obj_t BgL_envz00_2427, obj_t BgL_rz00_2428, obj_t BgL_za7za7_2429, obj_t BgL_dz00_2430)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 430 */
{ /* ./Match/compiler.scm 430 */
bool_t BgL_auxz00_4244;
BgL_auxz00_4244 = ((bool_t)1); 
return 
BBOOL(BgL_auxz00_4244);} } 
}



/* _z.init */
obj_t BGl__za7ze2initz45zz__match_compilerz00(obj_t BgL_envz00_2431, obj_t BgL_dz00_2432)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 432 */
{ /* ./Match/compiler.scm 432 */
bool_t BgL_auxz00_4246;
BgL_auxz00_4246 = ((bool_t)0); 
return 
BBOOL(BgL_auxz00_4246);} } 
}



/* m.init */
obj_t BGl_mze2initze2zz__match_compilerz00(obj_t BgL_nz00_181)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 457 */
{ /* ./Match/compiler.scm 458 */
obj_t BgL_zc3anonymousza32176ze3z83_2657;
{ 
int BgL_auxz00_4250;int BgL_auxz00_4248;
BgL_auxz00_4250 = 
(int)(((long)1)); 
BgL_auxz00_4248 = 
(int)(((long)5)); 
BgL_zc3anonymousza32176ze3z83_2657 = 
make_fx_procedure(BGl_zc3anonymousza32176ze3z83zz__match_compilerz00, BgL_auxz00_4248, BgL_auxz00_4250); } 
{ /* ./Match/compiler.scm 458 */
int BgL_auxz00_4253;
BgL_auxz00_4253 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza32176ze3z83_2657, BgL_auxz00_4253, BgL_nz00_181); } 
return BgL_zc3anonymousza32176ze3z83_2657;} } 
}



/* _m.init */
obj_t BGl__mze2initze2zz__match_compilerz00(obj_t BgL_envz00_2425, obj_t BgL_nz00_2426)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 457 */
return 
BGl_mze2initze2zz__match_compilerz00(BgL_nz00_2426);} 
}



/* <anonymous:2176> */
obj_t BGl_zc3anonymousza32176ze3z83zz__match_compilerz00(obj_t BgL_envz00_2658, obj_t BgL_ez00_2660, obj_t BgL_rz00_2661, obj_t BgL_kz00_2662, obj_t BgL_za7za7_2663, obj_t BgL_cz00_2664)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 458 */
{ /* ./Match/compiler.scm 458 */
obj_t BgL_nz00_2659;
{ /* ./Match/compiler.scm 458 */
int BgL_auxz00_4257;
BgL_auxz00_4257 = 
(int)(((long)0)); 
BgL_nz00_2659 = 
PROCEDURE_REF(BgL_envz00_2658, BgL_auxz00_4257); } 
{ 
obj_t BgL_ez00_2321;obj_t BgL_rz00_2322;obj_t BgL_kz00_2323;obj_t BgL_za7za7_2324;obj_t BgL_cz00_2325;
BgL_ez00_2321 = BgL_ez00_2660; 
BgL_rz00_2322 = BgL_rz00_2661; 
BgL_kz00_2323 = BgL_kz00_2662; 
BgL_za7za7_2324 = BgL_za7za7_2663; 
BgL_cz00_2325 = BgL_cz00_2664; 
{ /* ./Match/compiler.scm 458 */
obj_t BgL_list2178z00_2329;
{ /* ./Match/compiler.scm 458 */
obj_t BgL_arg2181z00_2331;
BgL_arg2181z00_2331 = 
MAKE_PAIR(BgL_nz00_2659, BNIL); 
BgL_list2178z00_2329 = 
MAKE_PAIR(BGl_string3696z00zz__match_compilerz00, BgL_arg2181z00_2331); } 
FAILURE(BGl_string3655z00zz__match_compilerz00,BgL_list2178z00_2329,BGl_string3656z00zz__match_compilerz00);} } } } 
}



/* build-if */
obj_t BGl_buildzd2ifzd2zz__match_compilerz00(obj_t BgL_tstz00_189, obj_t BgL_thenz00_190, obj_t BgL_elsez00_191)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 476 */
if(
(BgL_tstz00_189==BTRUE))
{ /* ./Match/compiler.scm 478 */
return BgL_thenz00_190;}  else 
{ /* ./Match/compiler.scm 478 */
if(
(BgL_tstz00_189==BFALSE))
{ /* ./Match/compiler.scm 479 */
return BgL_elsez00_191;}  else 
{ /* ./Match/compiler.scm 480 */
bool_t BgL_test2202z00_1171;
if(
(BgL_thenz00_190==BTRUE))
{ /* ./Match/compiler.scm 480 */
BgL_test2202z00_1171 = 
(BgL_elsez00_191==BFALSE); }  else 
{ /* ./Match/compiler.scm 480 */
BgL_test2202z00_1171 = ((bool_t)0); } 
if(BgL_test2202z00_1171)
{ /* ./Match/compiler.scm 480 */
return BgL_tstz00_189;}  else 
{ /* ./Match/compiler.scm 483 */
bool_t BgL_test2203z00_1172;
if(
(BgL_thenz00_190==BFALSE))
{ /* ./Match/compiler.scm 483 */
BgL_test2203z00_1172 = 
(BgL_elsez00_191==BTRUE); }  else 
{ /* ./Match/compiler.scm 483 */
BgL_test2203z00_1172 = ((bool_t)0); } 
if(BgL_test2203z00_1172)
{ /* ./Match/compiler.scm 483 */
{ /* ./Match/compiler.scm 485 */
obj_t BgL_arg2205z00_1173;obj_t BgL_arg2206z00_1174;
BgL_arg2205z00_1173 = BGl_symbol3646z00zz__match_compilerz00; 
BgL_arg2206z00_1174 = 
MAKE_PAIR(BgL_tstz00_189, BNIL); 
return 
MAKE_PAIR(BgL_arg2205z00_1173, BgL_arg2206z00_1174);} }  else 
{ /* ./Match/compiler.scm 483 */
{ /* ./Match/compiler.scm 486 */
obj_t BgL_arg2210z00_1175;obj_t BgL_arg2211z00_1176;
BgL_arg2210z00_1175 = BGl_symbol3643z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 486 */
obj_t BgL_arg2214z00_1177;
{ /* ./Match/compiler.scm 486 */
obj_t BgL_arg2217z00_1178;
BgL_arg2217z00_1178 = 
MAKE_PAIR(BgL_elsez00_191, BNIL); 
BgL_arg2214z00_1177 = 
MAKE_PAIR(BgL_thenz00_190, BgL_arg2217z00_1178); } 
BgL_arg2211z00_1176 = 
MAKE_PAIR(BgL_tstz00_189, BgL_arg2214z00_1177); } 
return 
MAKE_PAIR(BgL_arg2210z00_1175, BgL_arg2211z00_1176);} } } } } } 
}



/* build-let */
obj_t BGl_buildzd2letzd2zz__match_compilerz00(obj_t BgL_za2carza2z00_192, obj_t BgL_za2cdrza2z00_193, obj_t BgL_ez00_194, obj_t BgL_bodyz00_195)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 488 */
if(
BGl_2ze3ze3zz__r4_numbers_6_5z00(
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_za2carza2z00_192, BgL_bodyz00_195, ((long)0)), 
BINT(((long)1))))
{ /* ./Match/compiler.scm 489 */
if(
BGl_2ze3ze3zz__r4_numbers_6_5z00(
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_za2cdrza2z00_193, BgL_bodyz00_195, ((long)0)), 
BINT(((long)1))))
{ /* ./Match/compiler.scm 492 */
obj_t BgL_arg2231z00_1183;obj_t BgL_arg2232z00_1184;
BgL_arg2231z00_1183 = BGl_symbol3682z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2235z00_1185;obj_t BgL_arg2236z00_1186;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2239z00_1187;obj_t BgL_arg2240z00_1188;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2243z00_1189;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2246z00_1190;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2250z00_1192;obj_t BgL_arg2251z00_1193;
BgL_arg2250z00_1192 = BGl_symbol3697z00zz__match_compilerz00; 
BgL_arg2251z00_1193 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2246z00_1190 = 
MAKE_PAIR(BgL_arg2250z00_1192, BgL_arg2251z00_1193); } 
BgL_arg2243z00_1189 = 
MAKE_PAIR(BgL_arg2246z00_1190, BNIL); } 
BgL_arg2239z00_1187 = 
MAKE_PAIR(BgL_za2carza2z00_192, BgL_arg2243z00_1189); } 
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2255z00_1194;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2260z00_1196;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2263z00_1197;
{ /* ./Match/compiler.scm 491 */
obj_t BgL_arg2267z00_1199;obj_t BgL_arg2268z00_1200;
BgL_arg2267z00_1199 = BGl_symbol3698z00zz__match_compilerz00; 
BgL_arg2268z00_1200 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2263z00_1197 = 
MAKE_PAIR(BgL_arg2267z00_1199, BgL_arg2268z00_1200); } 
BgL_arg2260z00_1196 = 
MAKE_PAIR(BgL_arg2263z00_1197, BNIL); } 
BgL_arg2255z00_1194 = 
MAKE_PAIR(BgL_za2cdrza2z00_193, BgL_arg2260z00_1196); } 
BgL_arg2240z00_1188 = 
MAKE_PAIR(BgL_arg2255z00_1194, BNIL); } 
BgL_arg2235z00_1185 = 
MAKE_PAIR(BgL_arg2239z00_1187, BgL_arg2240z00_1188); } 
BgL_arg2236z00_1186 = 
MAKE_PAIR(BgL_bodyz00_195, BNIL); 
BgL_arg2232z00_1184 = 
MAKE_PAIR(BgL_arg2235z00_1185, BgL_arg2236z00_1186); } 
return 
MAKE_PAIR(BgL_arg2231z00_1183, BgL_arg2232z00_1184);}  else 
{ /* ./Match/compiler.scm 494 */
obj_t BgL_arg2273z00_1201;obj_t BgL_arg2274z00_1202;
BgL_arg2273z00_1201 = BGl_symbol3682z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 493 */
obj_t BgL_arg2277z00_1203;obj_t BgL_arg2278z00_1204;
{ /* ./Match/compiler.scm 493 */
obj_t BgL_arg2281z00_1205;
{ /* ./Match/compiler.scm 493 */
obj_t BgL_arg2285z00_1207;
{ /* ./Match/compiler.scm 493 */
obj_t BgL_arg2288z00_1208;
{ /* ./Match/compiler.scm 493 */
obj_t BgL_arg2292z00_1210;obj_t BgL_arg2293z00_1211;
BgL_arg2292z00_1210 = BGl_symbol3697z00zz__match_compilerz00; 
BgL_arg2293z00_1211 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2288z00_1208 = 
MAKE_PAIR(BgL_arg2292z00_1210, BgL_arg2293z00_1211); } 
BgL_arg2285z00_1207 = 
MAKE_PAIR(BgL_arg2288z00_1208, BNIL); } 
BgL_arg2281z00_1205 = 
MAKE_PAIR(BgL_za2carza2z00_192, BgL_arg2285z00_1207); } 
BgL_arg2277z00_1203 = 
MAKE_PAIR(BgL_arg2281z00_1205, BNIL); } 
{ /* ./Match/compiler.scm 494 */
obj_t BgL_arg2297z00_1212;
{ /* ./Match/compiler.scm 494 */
obj_t BgL_arg2301z00_1214;
{ /* ./Match/compiler.scm 494 */
obj_t BgL_arg2304z00_1215;obj_t BgL_arg2305z00_1216;
BgL_arg2304z00_1215 = BGl_symbol3698z00zz__match_compilerz00; 
BgL_arg2305z00_1216 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2301z00_1214 = 
MAKE_PAIR(BgL_arg2304z00_1215, BgL_arg2305z00_1216); } 
BgL_arg2297z00_1212 = 
BGl_unfoldz00zz__match_compilerz00(BgL_za2cdrza2z00_193, BgL_arg2301z00_1214, BgL_bodyz00_195); } 
BgL_arg2278z00_1204 = 
MAKE_PAIR(BgL_arg2297z00_1212, BNIL); } 
BgL_arg2274z00_1202 = 
MAKE_PAIR(BgL_arg2277z00_1203, BgL_arg2278z00_1204); } 
return 
MAKE_PAIR(BgL_arg2273z00_1201, BgL_arg2274z00_1202);} }  else 
{ /* ./Match/compiler.scm 489 */
if(
BGl_2ze3ze3zz__r4_numbers_6_5z00(
BGl_countzd2occurrenceszd2zz__match_compilerz00(BgL_za2cdrza2z00_193, BgL_bodyz00_195, ((long)0)), 
BINT(((long)1))))
{ /* ./Match/compiler.scm 497 */
obj_t BgL_arg2315z00_1220;obj_t BgL_arg2316z00_1221;
BgL_arg2315z00_1220 = BGl_symbol3682z00zz__match_compilerz00; 
{ /* ./Match/compiler.scm 496 */
obj_t BgL_arg2319z00_1222;obj_t BgL_arg2320z00_1223;
{ /* ./Match/compiler.scm 496 */
obj_t BgL_arg2323z00_1224;
{ /* ./Match/compiler.scm 496 */
obj_t BgL_arg2327z00_1226;
{ /* ./Match/compiler.scm 496 */
obj_t BgL_arg2330z00_1227;
{ /* ./Match/compiler.scm 496 */
obj_t BgL_arg2334z00_1229;obj_t BgL_arg2335z00_1230;
BgL_arg2334z00_1229 = BGl_symbol3698z00zz__match_compilerz00; 
BgL_arg2335z00_1230 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2330z00_1227 = 
MAKE_PAIR(BgL_arg2334z00_1229, BgL_arg2335z00_1230); } 
BgL_arg2327z00_1226 = 
MAKE_PAIR(BgL_arg2330z00_1227, BNIL); } 
BgL_arg2323z00_1224 = 
MAKE_PAIR(BgL_za2cdrza2z00_193, BgL_arg2327z00_1226); } 
BgL_arg2319z00_1222 = 
MAKE_PAIR(BgL_arg2323z00_1224, BNIL); } 
{ /* ./Match/compiler.scm 497 */
obj_t BgL_arg2339z00_1231;
{ /* ./Match/compiler.scm 497 */
obj_t BgL_arg2344z00_1233;
{ /* ./Match/compiler.scm 497 */
obj_t BgL_arg2348z00_1234;obj_t BgL_arg2349z00_1235;
BgL_arg2348z00_1234 = BGl_symbol3697z00zz__match_compilerz00; 
BgL_arg2349z00_1235 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2344z00_1233 = 
MAKE_PAIR(BgL_arg2348z00_1234, BgL_arg2349z00_1235); } 
BgL_arg2339z00_1231 = 
BGl_unfoldz00zz__match_compilerz00(BgL_za2carza2z00_192, BgL_arg2344z00_1233, BgL_bodyz00_195); } 
BgL_arg2320z00_1223 = 
MAKE_PAIR(BgL_arg2339z00_1231, BNIL); } 
BgL_arg2316z00_1221 = 
MAKE_PAIR(BgL_arg2319z00_1222, BgL_arg2320z00_1223); } 
return 
MAKE_PAIR(BgL_arg2315z00_1220, BgL_arg2316z00_1221);}  else 
{ /* ./Match/compiler.scm 498 */
obj_t BgL_arg2353z00_1236;obj_t BgL_arg2354z00_1237;
{ /* ./Match/compiler.scm 498 */
obj_t BgL_arg2357z00_1238;obj_t BgL_arg2358z00_1239;
BgL_arg2357z00_1238 = BGl_symbol3698z00zz__match_compilerz00; 
BgL_arg2358z00_1239 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2353z00_1236 = 
MAKE_PAIR(BgL_arg2357z00_1238, BgL_arg2358z00_1239); } 
{ /* ./Match/compiler.scm 499 */
obj_t BgL_arg2362z00_1240;
{ /* ./Match/compiler.scm 499 */
obj_t BgL_arg2365z00_1241;obj_t BgL_arg2366z00_1242;
BgL_arg2365z00_1241 = BGl_symbol3697z00zz__match_compilerz00; 
BgL_arg2366z00_1242 = 
MAKE_PAIR(BgL_ez00_194, BNIL); 
BgL_arg2362z00_1240 = 
MAKE_PAIR(BgL_arg2365z00_1241, BgL_arg2366z00_1242); } 
BgL_arg2354z00_1237 = 
BGl_unfoldz00zz__match_compilerz00(BgL_za2carza2z00_192, BgL_arg2362z00_1240, BgL_bodyz00_195); } 
return 
BGl_unfoldz00zz__match_compilerz00(BgL_za2cdrza2z00_193, BgL_arg2353z00_1236, BgL_arg2354z00_1237);} } } 
}



/* unfold */
obj_t BGl_unfoldz00zz__match_compilerz00(obj_t BgL_sz00_196, obj_t BgL_vz00_197, obj_t BgL_ez00_198)
{ AN_OBJECT;
{ /* ./Match/compiler.scm 504 */
if(
NULLP(BgL_ez00_198))
{ /* ./Match/compiler.scm 505 */
return BNIL;}  else 
{ /* ./Match/compiler.scm 507 */
bool_t BgL_testz00_4336;
{ /* ./Match/compiler.scm 507 */
obj_t BgL_auxz00_4337;
BgL_auxz00_4337 = 
BGl_atomzf3zf3zz__match_s2cfunz00(BgL_ez00_198); 
BgL_testz00_4336 = 
CBOOL(BgL_auxz00_4337); } 
if(BgL_testz00_4336)
{ /* ./Match/compiler.scm 507 */
if(
(BgL_ez00_198==BgL_sz00_196))
{ /* ./Match/compiler.scm 508 */
return BgL_vz00_197;}  else 
{ /* ./Match/compiler.scm 508 */
return BgL_ez00_198;} }  else 
{ /* ./Match/compiler.scm 507 */
if(
PAIRP(BgL_ez00_198))
{ /* ./Match/compiler.scm 510 */
bool_t BgL_testz00_4344;
{ /* ./Match/compiler.scm 510 */
obj_t BgL_auxz00_4345;
BgL_auxz00_4345 = 
CAR(BgL_ez00_198); 
BgL_testz00_4344 = 
(BgL_auxz00_4345==BGl_symbol3644z00zz__match_compilerz00); } 
if(BgL_testz00_4344)
{ /* ./Match/compiler.scm 510 */
return BgL_ez00_198;}  else 
{ /* ./Match/compiler.scm 512 */
obj_t BgL_fz00_1252;obj_t BgL_argsz00_1253;
BgL_fz00_1252 = 
CAR(BgL_ez00_198); 
BgL_argsz00_1253 = 
CDR(BgL_ez00_198); 
{ /* ./Match/compiler.scm 513 */
obj_t BgL_auxz00_4352;obj_t BgL_auxz00_4350;
BgL_auxz00_4352 = 
BGl_unfoldz00zz__match_compilerz00(BgL_sz00_196, BgL_vz00_197, BgL_argsz00_1253); 
BgL_auxz00_4350 = 
BGl_unfoldz00zz__match_compilerz00(BgL_sz00_196, BgL_vz00_197, BgL_fz00_1252); 
return 
MAKE_PAIR(BgL_auxz00_4350, BgL_auxz00_4352);} } }  else 
{ /* ./Match/compiler.scm 509 */
return BFALSE;} } } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__match_compilerz00()
{ AN_OBJECT;
{ /* ./Match/compiler.scm 26 */
BGl_modulezd2initializa7ationz75zz__errorz00(((long)11084), "__match_compiler"); 
BGl_modulezd2initializa7ationz75zz__match_s2cfunz00(((long)34527), "__match_compiler"); 
return 
BGl_modulezd2initializa7ationz75zz__match_descriptionsz00(((long)73334), "__match_compiler");} 
}

