/*===========================================================================*/
/*   (Lalr/lalr.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 Lalr/lalr.scm -indent -o objs/obj_u/Lalr/lalr.c)*/
/* GC selection */
#define THE_GC BOEHM_GC

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

extern bool_t BGl_2zd3zd3zz__r4_numbers_6_5z00(obj_t, obj_t);
static bool_t BGl_setzd2fderiveszd2zz__lalr_expandz00();
static obj_t BGl_loopz00zz__lalr_expandz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__lalr_expandz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__lalr_utilz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__lalr_genz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__lalr_globalz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__lalr_rewritez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__biglooz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__tvectorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__structurez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__bexitz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_flonumz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_characters_6_6z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_booleans_6_1z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_input_6_10_2z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__bitz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__evenvz00(long, char *);
static long BGl_mapzd2gotozd2zz__lalr_expandz00(obj_t, obj_t);
extern obj_t BGl_genzd2lalrzd2codez00zz__lalr_genz00();
extern obj_t BGl_reductionzd2tablezd2zz__lalr_globalz00;
extern obj_t BGl_shiftzd2setzd2zz__lalr_globalz00;
extern obj_t BGl_shiftzd2tablezd2zz__lalr_globalz00;
extern obj_t BGl_gotozd2mapzd2zz__lalr_globalz00;
static obj_t BGl_za2defaultza2z00zz__lalr_expandz00 = BUNSPEC;
extern obj_t BGl_fderivesz00zz__lalr_globalz00;
static obj_t BGl_transposez00zz__lalr_expandz00(obj_t, obj_t);
extern obj_t BGl_lookaheadsz00zz__lalr_globalz00;
static obj_t BGl_buildzd2rulezd2zz__lalr_expandz00(long);
extern obj_t BGl_assvz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static bool_t BGl_checkzd2lalrzd2rulesz00zz__lalr_expandz00(obj_t, obj_t, obj_t);
static obj_t BGl_addzd2actionzd2zz__lalr_expandz00(obj_t, obj_t, obj_t);
extern long bgl_list_length(obj_t);
static bool_t BGl_setzd2accessingzd2symbolz00zz__lalr_expandz00();
static obj_t BGl_allocatezd2itemzd2setsz00zz__lalr_expandz00();
static obj_t BGl_loopz72z72z00zz__lalr_expandz00(obj_t);
extern obj_t BGl_statezd2tablezd2zz__lalr_globalz00;
static bool_t BGl_loopz72z72z72z72z00zz__lalr_expandz00(obj_t, obj_t, obj_t, obj_t, long, long, long);
static obj_t BGl_closurez00zz__lalr_expandz00(obj_t);
extern obj_t BGl_initializa7ezd2allz75zz__lalr_globalz00();
static obj_t BGl_allocatezd2storagezd2zz__lalr_expandz00();
extern obj_t BGl_rewritezd2grammarz12zc0zz__lalr_rewritez00(obj_t);
static obj_t BGl_newzd2statezd2zz__lalr_expandz00(obj_t);
extern obj_t BGl_nitemsz00zz__lalr_globalz00;
static obj_t BGl_cnstzd2initzd2zz__lalr_expandz00();
static obj_t BGl_loopz72z72zz__lalr_expandz00(obj_t);
extern obj_t BGl_kernelzd2basezd2zz__lalr_globalz00;
extern obj_t BGl_nsymsz00zz__lalr_globalz00;
static bool_t BGl_setzd2shiftzd2tablez00zz__lalr_expandz00();
extern obj_t BGl_firstzd2statezd2zz__lalr_globalz00;
extern obj_t BGl_firstzd2reductionzd2zz__lalr_globalz00;
static bool_t BGl_loop2z00zz__lalr_expandz00(long, long, long, obj_t, obj_t, obj_t, obj_t, long, bool_t);
static bool_t BGl_loop3z00zz__lalr_expandz00(obj_t, obj_t, long, obj_t, long, obj_t, long, long);
extern obj_t BGl_Fz00zz__lalr_globalz00;
extern obj_t BGl_includesz00zz__lalr_globalz00;
extern obj_t string_to_symbol(char *);
extern obj_t BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00;
BGL_EXPORTED_DECL obj_t BGl_expandzd2lalrzd2grammarz00zz__lalr_expandz00(obj_t, obj_t);
extern obj_t BGl_sunionz00zz__lalr_utilz00(obj_t, obj_t);
extern obj_t BGl_finalzd2statezd2zz__lalr_globalz00;
extern obj_t BGl_firstzd2shiftzd2zz__lalr_globalz00;
extern obj_t bgl_reverse(obj_t);
extern obj_t BGl_cleanzd2plistzd2zz__lalr_rewritez00();
static obj_t BGl_newzd2itemsetszd2zz__lalr_expandz00(obj_t);
static obj_t BGl_buildzd2tableszd2zz__lalr_expandz00();
extern obj_t BGl_nvarsz00zz__lalr_globalz00;
extern obj_t BGl_nstatesz00zz__lalr_globalz00;
extern obj_t BGl_maxz00zz__r4_numbers_6_5z00(obj_t, obj_t);
extern obj_t BGl_ritemz00zz__lalr_globalz00;
extern obj_t BGl_za2symvza2z00zz__lalr_rewritez00;
extern obj_t BGl_redzd2setzd2zz__lalr_globalz00;
extern obj_t BGl_displayzd22zd2zz__r4_output_6_10_3z00(obj_t, obj_t);
extern obj_t BGl_kernelzd2endzd2zz__lalr_globalz00;
static bool_t BGl_setzd2firstszd2zz__lalr_expandz00();
static bool_t BGl_initializa7ezd2Fz75zz__lalr_expandz00();
extern obj_t make_vector(int, obj_t);
static obj_t BGl_addzd2lookbackzd2edgez00zz__lalr_expandz00(obj_t, obj_t, long);
static obj_t BGl_importedzd2moduleszd2initz00zz__lalr_expandz00();
static bool_t BGl_lalrz00zz__lalr_expandz00();
static bool_t BGl_setzd2deriveszd2zz__lalr_expandz00();
extern obj_t BGl_lastzd2statezd2zz__lalr_globalz00;
static obj_t BGl_list4500z00zz__lalr_expandz00 = BUNSPEC;
extern obj_t BGl_warningz00zz__errorz00(obj_t);
static obj_t BGl_list4495z00zz__lalr_expandz00 = BUNSPEC;
static bool_t BGl_packzd2grammarzd2zz__lalr_expandz00();
static bool_t BGl_traversez00zz__lalr_expandz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_lastzd2reductionzd2zz__lalr_globalz00;
extern obj_t BGl_ntermsz00zz__lalr_globalz00;
extern obj_t BGl_ngotosz00zz__lalr_globalz00;
static bool_t BGl_loop2z72z72zz__lalr_expandz00(long, obj_t, obj_t, obj_t, obj_t, obj_t, long);
static obj_t BGl_loopz72z72z72z72zz__lalr_expandz00(obj_t);
extern obj_t BGl_lastzd2shiftzd2zz__lalr_globalz00;
static obj_t BGl_requirezd2initializa7ationz75zz__lalr_expandz00 = BUNSPEC;
static bool_t BGl_initializa7ezd2LAz75zz__lalr_expandz00();
extern obj_t BGl_actionzd2tablezd2zz__lalr_globalz00;
extern obj_t BGl_minz00zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_getzd2statezd2zz__lalr_expandz00(obj_t);
extern obj_t BGl_filterz00zz__r4_control_features_6_9z00(obj_t, obj_t);
static bool_t BGl_compactzd2actionzd2tablez00zz__lalr_expandz00();
extern obj_t BGl_unwindzd2untilz12zc0zz__bexitz00(obj_t, obj_t);
extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
extern obj_t BGl_fromzd2statezd2zz__lalr_globalz00;
extern bool_t BGl_listzf3zf3zz__r4_pairs_and_lists_6_3z00(obj_t);
extern obj_t BGl_rprecz00zz__lalr_globalz00;
extern bool_t BGl_equalzf3zf3zz__r4_equivalence_6_2z00(obj_t, obj_t);
static obj_t BGl_buildzd2relationszd2zz__lalr_expandz00();
extern obj_t BGl_sinsertz00zz__lalr_utilz00(obj_t, obj_t);
extern obj_t BGl_nrulesz00zz__lalr_globalz00;
static obj_t BGl__expandzd2lalrzd2grammarz00zz__lalr_expandz00(obj_t, obj_t, obj_t);
static obj_t BGl_savezd2reductionszd2zz__lalr_expandz00(obj_t, obj_t);
extern obj_t BGl_nshiftsz00zz__lalr_globalz00;
extern obj_t BGl_valzd2fromzd2exitzf3zf3zz__bexitz00(obj_t);
static bool_t BGl_setzd2nullablezd2zz__lalr_expandz00();
static obj_t BGl_symbol4515z00zz__lalr_expandz00 = BUNSPEC;
static obj_t BGl_symbol4514z00zz__lalr_expandz00 = BUNSPEC;
extern obj_t string_to_keyword(char *);
static obj_t BGl_symbol4506z00zz__lalr_expandz00 = BUNSPEC;
static obj_t BGl_symbol4505z00zz__lalr_expandz00 = BUNSPEC;
static obj_t BGl_zc3anonymousza33091ze3z83zz__lalr_expandz00(obj_t, obj_t);
extern obj_t BGl_LArulenoz00zz__lalr_globalz00;
static obj_t BGl_symbol4504z00zz__lalr_expandz00 = BUNSPEC;
extern bool_t BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(obj_t, obj_t);
static obj_t BGl_keyword4496z00zz__lalr_expandz00 = BUNSPEC;
static bool_t BGl_generatezd2stateszd2zz__lalr_expandz00();
static obj_t BGl_keyword4497z00zz__lalr_expandz00 = BUNSPEC;
static obj_t BGl_symbol4492z00zz__lalr_expandz00 = BUNSPEC;
static bool_t BGl_loopz72z72z72z72z72z72zz__lalr_expandz00(obj_t, obj_t, obj_t, obj_t, long, long);
static obj_t BGl_keyword4498z00zz__lalr_expandz00 = BUNSPEC;
static obj_t BGl_symbol4491z00zz__lalr_expandz00 = BUNSPEC;
extern obj_t BGl_lookbackz00zz__lalr_globalz00;
extern obj_t BGl_nullablez00zz__lalr_globalz00;
static obj_t BGl_symbol4488z00zz__lalr_expandz00 = BUNSPEC;
extern obj_t BGl_STATEzd2TABLEzd2SIZEz00zz__lalr_globalz00;
extern long BGl_moduloz00zz__r4_numbers_6_5_fixnumz00(long, long);
static obj_t BGl_appendzd2stateszd2zz__lalr_expandz00();
static bool_t BGl_computezd2lookaheadszd2zz__lalr_expandz00();
extern obj_t BGl_rrhsz00zz__lalr_globalz00;
static obj_t BGl_initializa7ezd2statesz75zz__lalr_expandz00();
extern obj_t BGl_gensymz00zz__r4_symbols_6_4z00;
extern obj_t BGl_tozd2statezd2zz__lalr_globalz00;
extern obj_t BGl_derivesz00zz__lalr_globalz00;
extern obj_t BGl_maxrhsz00zz__lalr_globalz00;
extern obj_t BGl_acceszd2symbolzd2zz__lalr_globalz00;
static bool_t BGl_setzd2reductionzd2tablez00zz__lalr_expandz00();
static obj_t BGl_setzd2maxzd2rhsz00zz__lalr_expandz00();
static bool_t BGl_digraphz00zz__lalr_expandz00(obj_t);
extern obj_t BGl_rlhsz00zz__lalr_globalz00;
extern obj_t BGl_shiftzd2symbolzd2zz__lalr_globalz00;
static obj_t BGl_toplevelzd2initzd2zz__lalr_expandz00();
extern obj_t BGl_consistentz00zz__lalr_globalz00;
extern obj_t BGl_firstsz00zz__lalr_globalz00;
extern obj_t BGl_LAz00zz__lalr_globalz00;
extern obj_t BGl_2zb2zb2zz__r4_numbers_6_5z00(obj_t, obj_t);
extern obj_t BGl_getpropz00zz__r4_symbols_6_4z00(obj_t, obj_t);
extern obj_t display_string(obj_t, obj_t);
extern obj_t BGl_grammarz00zz__lalr_globalz00;
extern obj_t BGl_exptz00zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_zc3exitza31094ze3z83zz__lalr_expandz00(obj_t);
static bool_t BGl_setzd2gotozd2mapz00zz__lalr_expandz00();
static obj_t BGl_savezd2shiftszd2zz__lalr_expandz00(obj_t);
extern bool_t BGl_2zc3zc3zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t *__cnst;


DEFINE_EXPORT_PROCEDURE( BGl_expandzd2lalrzd2grammarzd2envzd2zz__lalr_expandz00, BgL_bgl__expandza7d2lalrza7d2grammarza700za7za7__lalr_expandza7004522z00, BGl__expandzd2lalrzd2grammarz00zz__lalr_expandz00, 0L, 2 );
DEFINE_STRING( BGl_string4513z00zz__lalr_expandz00, BgL_bgl_string4513za700za7za7__lalr_expandza7004523z00, "** Shift/Reduce conflict: ", 26 );
DEFINE_STRING( BGl_string4512z00zz__lalr_expandz00, BgL_bgl_string4512za700za7za7__lalr_expandza7004524z00, "\n - shift to state ", 19 );
DEFINE_STRING( BGl_string4511z00zz__lalr_expandz00, BgL_bgl_string4511za700za7za7__lalr_expandza7004525z00, "\n - reduce rule ", 16 );
DEFINE_STRING( BGl_string4510z00zz__lalr_expandz00, BgL_bgl_string4510za700za7za7__lalr_expandza7004526z00, "** Reduce/Reduce conflict: ", 27 );
DEFINE_STRING( BGl_string4509z00zz__lalr_expandz00, BgL_bgl_string4509za700za7za7__lalr_expandza7004527z00, "\n - reduce by rule ", 19 );
DEFINE_STRING( BGl_string4499z00zz__lalr_expandz00, BgL_bgl_string4499za700za7za7__lalr_expandza7004528z00, "Illegal token", 13 );
DEFINE_STRING( BGl_string4508z00zz__lalr_expandz00, BgL_bgl_string4508za700za7za7__lalr_expandza7004529z00, "\non token `", 11 );
DEFINE_STRING( BGl_string4507z00zz__lalr_expandz00, BgL_bgl_string4507za700za7za7__lalr_expandza7004530z00, "'", 1 );
DEFINE_STRING( BGl_string4494z00zz__lalr_expandz00, BgL_bgl_string4494za700za7za7__lalr_expandza7004531z00, "Illegal form (Illegal left hand side)", 37 );
DEFINE_STRING( BGl_string4503z00zz__lalr_expandz00, BgL_bgl_string4503za700za7za7__lalr_expandza7004532z00, "Error in add-lookback-edge : ", 29 );
DEFINE_STRING( BGl_string4493z00zz__lalr_expandz00, BgL_bgl_string4493za700za7za7__lalr_expandza7004533z00, "Illegal form ", 13 );
DEFINE_STRING( BGl_string4502z00zz__lalr_expandz00, BgL_bgl_string4502za700za7za7__lalr_expandza7004534z00, "Error in map-goto", 17 );
DEFINE_STRING( BGl_string4490z00zz__lalr_expandz00, BgL_bgl_string4490za700za7za7__lalr_expandza7004535z00, "Illegal form", 12 );
DEFINE_STRING( BGl_string4489z00zz__lalr_expandz00, BgL_bgl_string4489za700za7za7__lalr_expandza7004536z00, "lalr-grammar", 12 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__lalr_expandz00(long BgL_checksumz00_3273, char * BgL_fromz00_3274)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__lalr_expandz00))
{ 
BGl_requirezd2initializa7ationz75zz__lalr_expandz00 = 
BBOOL(((bool_t)0)); 
BGl_cnstzd2initzd2zz__lalr_expandz00(); 
BGl_importedzd2moduleszd2initz00zz__lalr_expandz00(); 
BGl_toplevelzd2initzd2zz__lalr_expandz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 11 */
BGl_symbol4488z00zz__lalr_expandz00 = 
string_to_symbol("default"); 
BGl_symbol4491z00zz__lalr_expandz00 = 
string_to_symbol("sym-no"); 
BGl_symbol4492z00zz__lalr_expandz00 = 
string_to_symbol("prec"); 
BGl_keyword4496z00zz__lalr_expandz00 = 
string_to_keyword("left:"); 
BGl_keyword4497z00zz__lalr_expandz00 = 
string_to_keyword("right:"); 
BGl_keyword4498z00zz__lalr_expandz00 = 
string_to_keyword("none:"); 
{ /* ./Lalr/lalr.scm 142 */
obj_t BgL_auxz00_3287;
{ /* ./Lalr/lalr.scm 142 */
obj_t BgL_auxz00_3288;
BgL_auxz00_3288 = 
MAKE_PAIR(BGl_keyword4498z00zz__lalr_expandz00, BNIL); 
BgL_auxz00_3287 = 
MAKE_PAIR(BGl_keyword4497z00zz__lalr_expandz00, BgL_auxz00_3288); } 
BGl_list4495z00zz__lalr_expandz00 = 
MAKE_PAIR(BGl_keyword4496z00zz__lalr_expandz00, BgL_auxz00_3287); } 
{ /* ./Lalr/lalr.scm 363 */
obj_t BgL_auxz00_3292;
BgL_auxz00_3292 = 
BINT(((long)0)); 
BGl_list4500z00zz__lalr_expandz00 = 
MAKE_PAIR(BgL_auxz00_3292, BNIL); } 
BGl_symbol4504z00zz__lalr_expandz00 = 
string_to_symbol("bidon"); 
BGl_symbol4505z00zz__lalr_expandz00 = 
string_to_symbol("-->"); 
BGl_symbol4506z00zz__lalr_expandz00 = 
string_to_symbol("accept"); 
BGl_symbol4514z00zz__lalr_expandz00 = 
string_to_symbol("error"); 
return ( 
BGl_symbol4515z00zz__lalr_expandz00 = 
string_to_symbol("*error*"), BUNSPEC) ;} 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 11 */
return ( 
BGl_za2defaultza2z00zz__lalr_expandz00 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, BGl_symbol4488z00zz__lalr_expandz00, BEOA), BUNSPEC) ;} 
}



/* expand-lalr-grammar */
BGL_EXPORTED_DEF obj_t BGl_expandzd2lalrzd2grammarz00zz__lalr_expandz00(obj_t BgL_xz00_1, obj_t BgL_ez00_2)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 57 */
{ 
obj_t BgL_rulesz00_389;
if(
PAIRP(BgL_xz00_1))
{ /* ./Lalr/lalr.scm 58 */
BgL_rulesz00_389 = 
CDR(BgL_xz00_1); 
if(
PAIRP(BgL_rulesz00_389))
{ /* ./Lalr/lalr.scm 60 */
obj_t BgL_carzd2115zd2_400;obj_t BgL_cdrzd2116zd2_401;
BgL_carzd2115zd2_400 = 
CAR(BgL_rulesz00_389); 
BgL_cdrzd2116zd2_401 = 
CDR(BgL_rulesz00_389); 
if(
BGl_listzf3zf3zz__r4_pairs_and_lists_6_3z00(BgL_carzd2115zd2_400))
{ /* ./Lalr/lalr.scm 60 */
if(
BGl_listzf3zf3zz__r4_pairs_and_lists_6_3z00(BgL_cdrzd2116zd2_401))
{ /* ./Lalr/lalr.scm 60 */
BGl_checkzd2lalrzd2rulesz00zz__lalr_expandz00(BgL_xz00_1, BgL_carzd2115zd2_400, BgL_cdrzd2116zd2_401); }  else 
{ /* ./Lalr/lalr.scm 60 */((bool_t)0); } }  else 
{ /* ./Lalr/lalr.scm 60 */((bool_t)0); } }  else 
{ /* ./Lalr/lalr.scm 60 */((bool_t)0); } 
{ /* ./Lalr/lalr.scm 63 */
obj_t BgL_codez00_404;
{ /* ./Lalr/lalr.scm 63 */
obj_t BgL_val1031z00_405;
BgL_val1031z00_405 = 
BGl_zc3exitza31094ze3z83zz__lalr_expandz00(BgL_rulesz00_389); 
BGl_cleanzd2plistzd2zz__lalr_rewritez00(); 
{ /* ./Lalr/lalr.scm 75 */
bool_t BgL_testz00_3315;
{ /* ./Lalr/lalr.scm 75 */
obj_t BgL_auxz00_3316;
BgL_auxz00_3316 = 
BGl_valzd2fromzd2exitzf3zf3zz__bexitz00(BgL_val1031z00_405); 
BgL_testz00_3315 = 
CBOOL(BgL_auxz00_3316); } 
if(BgL_testz00_3315)
{ /* ./Lalr/lalr.scm 75 */
BgL_codez00_404 = 
BGl_unwindzd2untilz12zc0zz__bexitz00(
CAR(BgL_val1031z00_405), 
CDR(BgL_val1031z00_405)); }  else 
{ /* ./Lalr/lalr.scm 75 */
BgL_codez00_404 = BgL_val1031z00_405; } } } 
return 
PROCEDURE_ENTRY(BgL_ez00_2)(BgL_ez00_2, BgL_codez00_404, BgL_ez00_2, BEOA);} }  else 
{ /* ./Lalr/lalr.scm 58 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4490z00zz__lalr_expandz00,BgL_xz00_1);} } } 
}



/* <exit:1094> */
obj_t BGl_zc3exitza31094ze3z83zz__lalr_expandz00(obj_t BgL_rulesz00_3271)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 75 */
jmp_buf jmpbuf; 
obj_t BgL_an_exit1032z00_410;
if( SET_EXIT(BgL_an_exit1032z00_410) ) { 
return 
_exit_value_;
} else {
BgL_an_exit1032z00_410 = 
(obj_t)jmpbuf; 
{ /* ./Lalr/lalr.scm 75 */

PUSH_EXIT(BgL_an_exit1032z00_410, ((bool_t)0)); 
{ /* ./Lalr/lalr.scm 65 */
obj_t BgL_val1033z00_411;
BGl_initializa7ezd2allz75zz__lalr_globalz00(); 
BGl_rewritezd2grammarz12zc0zz__lalr_rewritez00(BgL_rulesz00_3271); 
BGl_packzd2grammarzd2zz__lalr_expandz00(); 
BGl_setzd2deriveszd2zz__lalr_expandz00(); 
BGl_setzd2nullablezd2zz__lalr_expandz00(); 
BGl_generatezd2stateszd2zz__lalr_expandz00(); 
BGl_lalrz00zz__lalr_expandz00(); 
BGl_buildzd2tableszd2zz__lalr_expandz00(); 
BGl_compactzd2actionzd2tablez00zz__lalr_expandz00(); 
BgL_val1033z00_411 = 
BGl_genzd2lalrzd2codez00zz__lalr_genz00(); 
POP_EXIT(); 
return BgL_val1033z00_411;} } 
} } 
}



/* _expand-lalr-grammar */
obj_t BGl__expandzd2lalrzd2grammarz00zz__lalr_expandz00(obj_t BgL_envz00_3225, obj_t BgL_xz00_3226, obj_t BgL_ez00_3227)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 57 */
return 
BGl_expandzd2lalrzd2grammarz00zz__lalr_expandz00(BgL_xz00_3226, BgL_ez00_3227);} 
}



/* pack-grammar */
bool_t BGl_packzd2grammarzd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 83 */
{ /* ./Lalr/lalr.scm 84 */
int BgL_auxz00_3341;
BgL_auxz00_3341 = 
CINT(BGl_nrulesz00zz__lalr_globalz00); 
BGl_rlhsz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3341, BFALSE); } 
{ /* ./Lalr/lalr.scm 85 */
int BgL_auxz00_3344;
BgL_auxz00_3344 = 
CINT(BGl_nrulesz00zz__lalr_globalz00); 
BGl_rrhsz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3344, BFALSE); } 
{ /* ./Lalr/lalr.scm 86 */
long BgL_arg1112z00_412;
{ /* ./Lalr/lalr.scm 86 */
long BgL_auxz00_3347;
BgL_auxz00_3347 = 
(long)CINT(BGl_nitemsz00zz__lalr_globalz00); 
BgL_arg1112z00_412 = 
(((long)1)+BgL_auxz00_3347); } 
{ /* ./Lalr/lalr.scm 86 */
int BgL_auxz00_3350;
BgL_auxz00_3350 = 
(int)(BgL_arg1112z00_412); 
BGl_ritemz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3350, BFALSE); } } 
{ /* ./Lalr/lalr.scm 87 */
int BgL_auxz00_3353;
BgL_auxz00_3353 = 
CINT(BGl_nrulesz00zz__lalr_globalz00); 
BGl_rprecz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3353, BFALSE); } 
{ 
obj_t BgL_pz00_413;long BgL_itemzd2nozd2_414;long BgL_rulezd2nozd2_415;
BgL_pz00_413 = BGl_grammarz00zz__lalr_globalz00; 
BgL_itemzd2nozd2_414 = ((long)0); 
BgL_rulezd2nozd2_415 = ((long)1); 
BgL_loopz00_416:
if(
NULLP(BgL_pz00_413))
{ /* ./Lalr/lalr.scm 90 */
return ((bool_t)0);}  else 
{ /* ./Lalr/lalr.scm 91 */
obj_t BgL_ntz00_418;
{ /* ./Lalr/lalr.scm 91 */
obj_t BgL_auxz00_3358;
{ /* ./Lalr/lalr.scm 91 */
obj_t BgL_auxz00_3359;
BgL_auxz00_3359 = 
CAR(BgL_pz00_413); 
BgL_auxz00_3358 = 
CAR(BgL_auxz00_3359); } 
BgL_ntz00_418 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_auxz00_3358, BGl_symbol4491z00zz__lalr_expandz00); } 
{ 
obj_t BgL_prodsz00_419;long BgL_itzd2no2zd2_420;long BgL_rlzd2no2zd2_421;
{ /* ./Lalr/lalr.scm 92 */
obj_t BgL_auxz00_3415;
BgL_auxz00_3415 = 
CAR(BgL_pz00_413); 
BgL_prodsz00_419 = 
CDR(BgL_auxz00_3415); } 
BgL_itzd2no2zd2_420 = BgL_itemzd2nozd2_414; 
BgL_rlzd2no2zd2_421 = BgL_rulezd2nozd2_415; 
BgL_loop2z00_422:
if(
NULLP(BgL_prodsz00_419))
{ 
long BgL_rulezd2nozd2_3368;long BgL_itemzd2nozd2_3367;obj_t BgL_pz00_3365;
BgL_pz00_3365 = 
CDR(BgL_pz00_413); 
BgL_itemzd2nozd2_3367 = BgL_itzd2no2zd2_420; 
BgL_rulezd2nozd2_3368 = BgL_rlzd2no2zd2_421; 
BgL_rulezd2nozd2_415 = BgL_rulezd2nozd2_3368; 
BgL_itemzd2nozd2_414 = BgL_itemzd2nozd2_3367; 
BgL_pz00_413 = BgL_pz00_3365; 
goto BgL_loopz00_416;}  else 
{ /* ./Lalr/lalr.scm 93 */
{ 
int BgL_auxz00_3369;
BgL_auxz00_3369 = 
(int)(BgL_rlzd2no2zd2_421); 
VECTOR_SET(BGl_rlhsz00zz__lalr_globalz00,BgL_auxz00_3369,BgL_ntz00_418); } 
{ 
obj_t BgL_auxz00_3374;int BgL_auxz00_3372;
BgL_auxz00_3374 = 
BINT(BgL_itzd2no2zd2_420); 
BgL_auxz00_3372 = 
(int)(BgL_rlzd2no2zd2_421); 
VECTOR_SET(BGl_rrhsz00zz__lalr_globalz00,BgL_auxz00_3372,BgL_auxz00_3374); } 
{ 
obj_t BgL_rhsz00_426;long BgL_itzd2no3zd2_427;
{ /* ./Lalr/lalr.scm 98 */
obj_t BgL_auxz00_3412;
BgL_auxz00_3412 = 
CAR(BgL_prodsz00_419); 
BgL_rhsz00_426 = 
CAR(BgL_auxz00_3412); } 
BgL_itzd2no3zd2_427 = BgL_itzd2no2zd2_420; 
BgL_loop3z00_428:
if(
NULLP(BgL_rhsz00_426))
{ /* ./Lalr/lalr.scm 99 */
{ /* ./Lalr/lalr.scm 101 */
long BgL_arg1135z00_431;
BgL_arg1135z00_431 = 
NEG(BgL_rlzd2no2zd2_421); 
{ 
obj_t BgL_auxz00_3382;int BgL_auxz00_3380;
BgL_auxz00_3382 = 
BINT(BgL_arg1135z00_431); 
BgL_auxz00_3380 = 
(int)(BgL_itzd2no3zd2_427); 
VECTOR_SET(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3380,BgL_auxz00_3382); } } 
{ 
long BgL_rlzd2no2zd2_3389;long BgL_itzd2no2zd2_3387;obj_t BgL_prodsz00_3385;
BgL_prodsz00_3385 = 
CDR(BgL_prodsz00_419); 
BgL_itzd2no2zd2_3387 = 
(BgL_itzd2no3zd2_427+((long)1)); 
BgL_rlzd2no2zd2_3389 = 
(BgL_rlzd2no2zd2_421+((long)1)); 
BgL_rlzd2no2zd2_421 = BgL_rlzd2no2zd2_3389; 
BgL_itzd2no2zd2_420 = BgL_itzd2no2zd2_3387; 
BgL_prodsz00_419 = BgL_prodsz00_3385; 
goto BgL_loop2z00_422;} }  else 
{ /* ./Lalr/lalr.scm 103 */
obj_t BgL_symz00_435;
BgL_symz00_435 = 
CAR(BgL_rhsz00_426); 
{ /* ./Lalr/lalr.scm 103 */
obj_t BgL_asymz00_436;
if(
PAIRP(BgL_symz00_435))
{ /* ./Lalr/lalr.scm 104 */
BgL_asymz00_436 = 
CAR(BgL_symz00_435); }  else 
{ /* ./Lalr/lalr.scm 104 */
BgL_asymz00_436 = BgL_symz00_435; } 
{ /* ./Lalr/lalr.scm 104 */
obj_t BgL_symzd2nozd2_437;
BgL_symzd2nozd2_437 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_asymz00_436, BGl_symbol4491z00zz__lalr_expandz00); 
{ /* ./Lalr/lalr.scm 107 */

{ /* ./Lalr/lalr.scm 109 */
bool_t BgL_testz00_3396;
{ /* ./Lalr/lalr.scm 109 */
obj_t BgL_auxz00_3397;
BgL_auxz00_3397 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_asymz00_436, BGl_symbol4492z00zz__lalr_expandz00); 
BgL_testz00_3396 = 
CBOOL(BgL_auxz00_3397); } 
if(BgL_testz00_3396)
{ 
obj_t BgL_auxz00_3402;int BgL_auxz00_3400;
BgL_auxz00_3402 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_asymz00_436, BGl_symbol4492z00zz__lalr_expandz00); 
BgL_auxz00_3400 = 
(int)(BgL_rlzd2no2zd2_421); 
VECTOR_SET(BGl_rprecz00zz__lalr_globalz00,BgL_auxz00_3400,BgL_auxz00_3402); }  else 
{ /* ./Lalr/lalr.scm 109 */BFALSE; } } 
{ 
int BgL_auxz00_3405;
BgL_auxz00_3405 = 
(int)(BgL_itzd2no3zd2_427); 
VECTOR_SET(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3405,BgL_symzd2nozd2_437); } 
{ 
long BgL_itzd2no3zd2_3410;obj_t BgL_rhsz00_3408;
BgL_rhsz00_3408 = 
CDR(BgL_rhsz00_426); 
BgL_itzd2no3zd2_3410 = 
(BgL_itzd2no3zd2_427+((long)1)); 
BgL_itzd2no3zd2_427 = BgL_itzd2no3zd2_3410; 
BgL_rhsz00_426 = BgL_rhsz00_3408; 
goto BgL_loop3z00_428;} } } } } } } } } } } 
}



/* check-lalr-rules */
bool_t BGl_checkzd2lalrzd2rulesz00zz__lalr_expandz00(obj_t BgL_xz00_3, obj_t BgL_tokensz00_4, obj_t BgL_rulesz00_5)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 117 */
{ 
obj_t BgL_rulez00_468;
{ 
obj_t BgL_l1038z00_446;
BgL_l1038z00_446 = BgL_tokensz00_4; 
BgL_forzd2each1039zd2_447:
if(
PAIRP(BgL_l1038z00_446))
{ /* ./Lalr/lalr.scm 137 */
{ /* ./Lalr/lalr.scm 139 */
obj_t BgL_tz00_449;
BgL_tz00_449 = 
CAR(BgL_l1038z00_446); 
if(
SYMBOLP(BgL_tz00_449))
{ /* ./Lalr/lalr.scm 139 */((bool_t)1); }  else 
{ /* ./Lalr/lalr.scm 141 */
bool_t BgL_test1178z00_451;
if(
PAIRP(BgL_tz00_449))
{ /* ./Lalr/lalr.scm 142 */
obj_t BgL_auxz00_3425;
BgL_auxz00_3425 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(
CAR(BgL_tz00_449), BGl_list4495z00zz__lalr_expandz00); 
BgL_test1178z00_451 = 
CBOOL(BgL_auxz00_3425); }  else 
{ /* ./Lalr/lalr.scm 141 */
BgL_test1178z00_451 = ((bool_t)0); } 
if(BgL_test1178z00_451)
{ /* ./Lalr/lalr.scm 141 */
{ 
obj_t BgL_l1040z00_452;
BgL_l1040z00_452 = 
CDR(BgL_tz00_449); 
BgL_forzd2each1041zd2_453:
if(
PAIRP(BgL_l1040z00_452))
{ /* ./Lalr/lalr.scm 143 */
{ /* ./Lalr/lalr.scm 144 */
obj_t BgL_tz00_456;
BgL_tz00_456 = 
CAR(BgL_l1040z00_452); 
if(
SYMBOLP(BgL_tz00_456))
{ /* ./Lalr/lalr.scm 144 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 144 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4499z00zz__lalr_expandz00,BgL_tz00_456);} } 
{ 
obj_t BgL_l1040z00_3436;
BgL_l1040z00_3436 = 
CDR(BgL_l1040z00_452); 
BgL_l1040z00_452 = BgL_l1040z00_3436; 
goto BgL_forzd2each1041zd2_453;} }  else 
{ /* ./Lalr/lalr.scm 143 */((bool_t)1); } } }  else 
{ /* ./Lalr/lalr.scm 141 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4499z00zz__lalr_expandz00,BgL_tz00_449);} } } 
{ 
obj_t BgL_l1038z00_3440;
BgL_l1038z00_3440 = 
CDR(BgL_l1038z00_446); 
BgL_l1038z00_446 = BgL_l1038z00_3440; 
goto BgL_forzd2each1039zd2_447;} }  else 
{ /* ./Lalr/lalr.scm 137 */((bool_t)1); } } 
{ 
obj_t BgL_l1043z00_1670;
BgL_l1043z00_1670 = BgL_rulesz00_5; 
BgL_forzd2each1044zd2_1669:
if(
PAIRP(BgL_l1043z00_1670))
{ /* ./Lalr/lalr.scm 150 */
BgL_rulez00_468 = 
CAR(BgL_l1043z00_1670); 
{ 
obj_t BgL_subrulesz00_470;
if(
PAIRP(BgL_rulez00_468))
{ /* ./Lalr/lalr.scm 136 */
obj_t BgL_cdrzd2129zd2_475;
BgL_cdrzd2129zd2_475 = 
CDR(BgL_rulez00_468); 
{ /* ./Lalr/lalr.scm 136 */
bool_t BgL_testz00_3447;
{ /* ./Lalr/lalr.scm 136 */
obj_t BgL_auxz00_3448;
BgL_auxz00_3448 = 
CAR(BgL_rulez00_468); 
BgL_testz00_3447 = 
SYMBOLP(BgL_auxz00_3448); } 
if(BgL_testz00_3447)
{ /* ./Lalr/lalr.scm 136 */
if(
BGl_listzf3zf3zz__r4_pairs_and_lists_6_3z00(BgL_cdrzd2129zd2_475))
{ /* ./Lalr/lalr.scm 136 */
bool_t BgL_auxz00_3453;
BgL_subrulesz00_470 = BgL_cdrzd2129zd2_475; 
{ 
obj_t BgL_l1034z00_479;
BgL_l1034z00_479 = BgL_subrulesz00_470; 
BgL_forzd2each1035zd2_480:
if(
PAIRP(BgL_l1034z00_479))
{ /* ./Lalr/lalr.scm 121 */
{ /* ./Lalr/lalr.scm 122 */
obj_t BgL_srz00_482;
BgL_srz00_482 = 
CAR(BgL_l1034z00_479); 
{ 
obj_t BgL_srz00_483;
if(
PAIRP(BgL_srz00_482))
{ /* ./Lalr/lalr.scm 122 */
obj_t BgL_carzd2138zd2_488;
BgL_carzd2138zd2_488 = 
CAR(BgL_srz00_482); 
if(
BGl_listzf3zf3zz__r4_pairs_and_lists_6_3z00(BgL_carzd2138zd2_488))
{ /* ./Lalr/lalr.scm 122 */
BgL_srz00_483 = BgL_carzd2138zd2_488; 
{ 
obj_t BgL_l1036z00_490;
BgL_l1036z00_490 = BgL_srz00_483; 
BgL_forzd2each1037zd2_491:
if(
PAIRP(BgL_l1036z00_490))
{ /* ./Lalr/lalr.scm 124 */
{ /* ./Lalr/lalr.scm 125 */
obj_t BgL_symz00_493;
BgL_symz00_493 = 
CAR(BgL_l1036z00_490); 
if(
SYMBOLP(BgL_symz00_493))
{ /* ./Lalr/lalr.scm 125 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 125 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4493z00zz__lalr_expandz00,BgL_rulez00_468);} } 
{ 
obj_t BgL_l1036z00_3468;
BgL_l1036z00_3468 = 
CDR(BgL_l1036z00_490); 
BgL_l1036z00_490 = BgL_l1036z00_3468; 
goto BgL_forzd2each1037zd2_491;} }  else 
{ /* ./Lalr/lalr.scm 124 */((bool_t)1); } } }  else 
{ /* ./Lalr/lalr.scm 122 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4494z00zz__lalr_expandz00,BgL_rulez00_468);} }  else 
{ /* ./Lalr/lalr.scm 122 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4494z00zz__lalr_expandz00,BgL_rulez00_468);} } } 
{ 
obj_t BgL_l1034z00_3472;
BgL_l1034z00_3472 = 
CDR(BgL_l1034z00_479); 
BgL_l1034z00_479 = BgL_l1034z00_3472; 
goto BgL_forzd2each1035zd2_480;} }  else 
{ /* ./Lalr/lalr.scm 121 */
BgL_auxz00_3453 = ((bool_t)1); } } 
BBOOL(BgL_auxz00_3453); }  else 
{ /* ./Lalr/lalr.scm 136 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4490z00zz__lalr_expandz00,BgL_xz00_3);} }  else 
{ /* ./Lalr/lalr.scm 136 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4490z00zz__lalr_expandz00,BgL_xz00_3);} } }  else 
{ /* ./Lalr/lalr.scm 136 */
FAILURE(BGl_string4489z00zz__lalr_expandz00,BGl_string4490z00zz__lalr_expandz00,BgL_xz00_3);} } 
{ 
obj_t BgL_l1043z00_3479;
BgL_l1043z00_3479 = 
CDR(BgL_l1043z00_1670); 
BgL_l1043z00_1670 = BgL_l1043z00_3479; 
goto BgL_forzd2each1044zd2_1669;} }  else 
{ /* ./Lalr/lalr.scm 150 */
return ((bool_t)1);} } } } 
}



/* set-derives */
bool_t BGl_setzd2deriveszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 159 */
{ /* ./Lalr/lalr.scm 161 */
obj_t BgL_dsetz00_498;obj_t BgL_deltsz00_499;
BgL_dsetz00_498 = BUNSPEC; 
BgL_deltsz00_499 = BUNSPEC; 
{ /* ./Lalr/lalr.scm 160 */
long BgL_arg1315z00_526;
{ /* ./Lalr/lalr.scm 160 */
long BgL_auxz00_3481;
BgL_auxz00_3481 = 
(long)CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_arg1315z00_526 = 
(BgL_auxz00_3481+((long)1)); } 
{ /* ./Lalr/lalr.scm 160 */
obj_t BgL_auxz00_3486;int BgL_auxz00_3484;
BgL_auxz00_3486 = 
BINT(((long)0)); 
BgL_auxz00_3484 = 
(int)(BgL_arg1315z00_526); 
BgL_deltsz00_499 = 
make_vector(BgL_auxz00_3484, BgL_auxz00_3486); } } 
{ /* ./Lalr/lalr.scm 161 */
obj_t BgL_auxz00_3491;int BgL_auxz00_3489;
BgL_auxz00_3491 = 
BINT(((long)-1)); 
BgL_auxz00_3489 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_dsetz00_498 = 
make_vector(BgL_auxz00_3489, BgL_auxz00_3491); } 
{ 
long BgL_iz00_500;long BgL_jz00_501;
BgL_iz00_500 = ((long)1); 
BgL_jz00_501 = ((long)0); 
BgL_loopz00_502:
{ /* ./Lalr/lalr.scm 164 */
bool_t BgL_testz00_3494;
{ /* ./Lalr/lalr.scm 164 */
long BgL_auxz00_3495;
BgL_auxz00_3495 = 
(long)CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_testz00_3494 = 
(BgL_iz00_500<BgL_auxz00_3495); } 
if(BgL_testz00_3494)
{ /* ./Lalr/lalr.scm 165 */
obj_t BgL_lhsz00_504;
{ 
int BgL_auxz00_3498;
BgL_auxz00_3498 = 
(int)(BgL_iz00_500); 
BgL_lhsz00_504 = 
VECTOR_REF(BGl_rlhsz00zz__lalr_globalz00,BgL_auxz00_3498); } 
{ /* ./Lalr/lalr.scm 166 */
bool_t BgL_testz00_3501;
{ /* ./Lalr/lalr.scm 166 */
long BgL_auxz00_3502;
BgL_auxz00_3502 = 
(long)CINT(BgL_lhsz00_504); 
BgL_testz00_3501 = 
(BgL_auxz00_3502>=((long)0)); } 
if(BgL_testz00_3501)
{ /* ./Lalr/lalr.scm 166 */
{ /* ./Lalr/lalr.scm 168 */
obj_t BgL_arg1267z00_506;
{ /* ./Lalr/lalr.scm 168 */
obj_t BgL_auxz00_3507;obj_t BgL_auxz00_3505;
{ 
int BgL_auxz00_3508;
BgL_auxz00_3508 = 
CINT(BgL_lhsz00_504); 
BgL_auxz00_3507 = 
VECTOR_REF(BgL_dsetz00_498,BgL_auxz00_3508); } 
BgL_auxz00_3505 = 
BINT(BgL_iz00_500); 
BgL_arg1267z00_506 = 
MAKE_PAIR(BgL_auxz00_3505, BgL_auxz00_3507); } 
{ 
int BgL_auxz00_3512;
BgL_auxz00_3512 = 
(int)(BgL_jz00_501); 
VECTOR_SET(BgL_deltsz00_499,BgL_auxz00_3512,BgL_arg1267z00_506); } } 
{ 
obj_t BgL_auxz00_3517;int BgL_auxz00_3515;
BgL_auxz00_3517 = 
BINT(BgL_jz00_501); 
BgL_auxz00_3515 = 
CINT(BgL_lhsz00_504); 
VECTOR_SET(BgL_dsetz00_498,BgL_auxz00_3515,BgL_auxz00_3517); } 
{ 
long BgL_jz00_3522;long BgL_iz00_3520;
BgL_iz00_3520 = 
(BgL_iz00_500+((long)1)); 
BgL_jz00_3522 = 
(BgL_jz00_501+((long)1)); 
BgL_jz00_501 = BgL_jz00_3522; 
BgL_iz00_500 = BgL_iz00_3520; 
goto BgL_loopz00_502;} }  else 
{ 
long BgL_iz00_3524;
BgL_iz00_3524 = 
(BgL_iz00_500+((long)1)); 
BgL_iz00_500 = BgL_iz00_3524; 
goto BgL_loopz00_502;} } }  else 
{ /* ./Lalr/lalr.scm 164 */((bool_t)0); } } } 
{ /* ./Lalr/lalr.scm 173 */
obj_t BgL_auxz00_3528;int BgL_auxz00_3526;
BgL_auxz00_3528 = 
BINT(((long)0)); 
BgL_auxz00_3526 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BGl_derivesz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3526, BgL_auxz00_3528); } 
{ 
long BgL_iz00_511;
BgL_iz00_511 = ((long)0); 
BgL_loopz00_512:
{ /* ./Lalr/lalr.scm 176 */
bool_t BgL_testz00_3531;
{ /* ./Lalr/lalr.scm 176 */
long BgL_auxz00_3532;
BgL_auxz00_3532 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_3531 = 
(BgL_iz00_511<BgL_auxz00_3532); } 
if(BgL_testz00_3531)
{ /* ./Lalr/lalr.scm 177 */
obj_t BgL_qz00_514;
{ /* ./Lalr/lalr.scm 177 */
obj_t BgL_arg1296z00_519;
{ 
int BgL_auxz00_3535;
BgL_auxz00_3535 = 
(int)(BgL_iz00_511); 
BgL_arg1296z00_519 = 
VECTOR_REF(BgL_dsetz00_498,BgL_auxz00_3535); } 
{ 
obj_t BgL_jz00_1757;obj_t BgL_sz00_1758;
BgL_jz00_1757 = BgL_arg1296z00_519; 
BgL_sz00_1758 = BNIL; 
BgL_loop2z00_1756:
{ /* ./Lalr/lalr.scm 177 */
bool_t BgL_testz00_3538;
{ /* ./Lalr/lalr.scm 177 */
long BgL_auxz00_3539;
BgL_auxz00_3539 = 
(long)CINT(BgL_jz00_1757); 
BgL_testz00_3538 = 
(BgL_auxz00_3539<((long)0)); } 
if(BgL_testz00_3538)
{ /* ./Lalr/lalr.scm 177 */
BgL_qz00_514 = BgL_sz00_1758; }  else 
{ /* ./Lalr/lalr.scm 177 */
obj_t BgL_xz00_1765;
{ 
int BgL_auxz00_3542;
BgL_auxz00_3542 = 
CINT(BgL_jz00_1757); 
BgL_xz00_1765 = 
VECTOR_REF(BgL_deltsz00_499,BgL_auxz00_3542); } 
{ /* ./Lalr/lalr.scm 177 */
obj_t BgL_arg1302z00_1766;obj_t BgL_arg1303z00_1767;
BgL_arg1302z00_1766 = 
CDR(BgL_xz00_1765); 
{ /* ./Lalr/lalr.scm 177 */
obj_t BgL_auxz00_3546;
BgL_auxz00_3546 = 
CAR(BgL_xz00_1765); 
BgL_arg1303z00_1767 = 
MAKE_PAIR(BgL_auxz00_3546, BgL_sz00_1758); } 
{ 
obj_t BgL_sz00_3550;obj_t BgL_jz00_3549;
BgL_jz00_3549 = BgL_arg1302z00_1766; 
BgL_sz00_3550 = BgL_arg1303z00_1767; 
BgL_sz00_1758 = BgL_sz00_3550; 
BgL_jz00_1757 = BgL_jz00_3549; 
goto BgL_loop2z00_1756;} } } } } } 
{ 
int BgL_auxz00_3551;
BgL_auxz00_3551 = 
(int)(BgL_iz00_511); 
VECTOR_SET(BGl_derivesz00zz__lalr_globalz00,BgL_auxz00_3551,BgL_qz00_514); } 
{ 
long BgL_iz00_3554;
BgL_iz00_3554 = 
(BgL_iz00_511+((long)1)); 
BgL_iz00_511 = BgL_iz00_3554; 
goto BgL_loopz00_512;} }  else 
{ /* ./Lalr/lalr.scm 176 */
return ((bool_t)0);} } } } } 
}



/* set-nullable */
bool_t BGl_setzd2nullablezd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 187 */
{ /* ./Lalr/lalr.scm 188 */
int BgL_auxz00_3556;
BgL_auxz00_3556 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BGl_nullablez00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3556, BFALSE); } 
{ /* ./Lalr/lalr.scm 189 */
obj_t BgL_squeuez00_528;obj_t BgL_rcountz00_529;obj_t BgL_rsetsz00_530;obj_t BgL_reltsz00_531;
{ /* ./Lalr/lalr.scm 189 */
obj_t BgL_auxz00_3561;int BgL_auxz00_3559;
BgL_auxz00_3561 = 
BINT(((long)0)); 
BgL_auxz00_3559 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_squeuez00_528 = 
make_vector(BgL_auxz00_3559, BgL_auxz00_3561); } 
{ /* ./Lalr/lalr.scm 190 */
long BgL_arg1435z00_592;
{ /* ./Lalr/lalr.scm 190 */
long BgL_auxz00_3564;
BgL_auxz00_3564 = 
(long)CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_arg1435z00_592 = 
(BgL_auxz00_3564+((long)1)); } 
{ /* ./Lalr/lalr.scm 190 */
obj_t BgL_auxz00_3569;int BgL_auxz00_3567;
BgL_auxz00_3569 = 
BINT(((long)0)); 
BgL_auxz00_3567 = 
(int)(BgL_arg1435z00_592); 
BgL_rcountz00_529 = 
make_vector(BgL_auxz00_3567, BgL_auxz00_3569); } } 
{ /* ./Lalr/lalr.scm 191 */
int BgL_auxz00_3572;
BgL_auxz00_3572 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_rsetsz00_530 = 
make_vector(BgL_auxz00_3572, BFALSE); } 
{ /* ./Lalr/lalr.scm 192 */
long BgL_arg1441z00_594;
{ /* ./Lalr/lalr.scm 192 */
long BgL_arg1444z00_595;
{ /* ./Lalr/lalr.scm 192 */
long BgL_auxz00_3575;
BgL_auxz00_3575 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_arg1444z00_595 = 
(BgL_auxz00_3575+((long)1)); } 
{ /* ./Lalr/lalr.scm 192 */
long BgL_auxz00_3578;
BgL_auxz00_3578 = 
(long)CINT(BGl_nitemsz00zz__lalr_globalz00); 
BgL_arg1441z00_594 = 
(BgL_auxz00_3578+BgL_arg1444z00_595); } } 
{ /* ./Lalr/lalr.scm 192 */
int BgL_auxz00_3581;
BgL_auxz00_3581 = 
(int)(BgL_arg1441z00_594); 
BgL_reltsz00_531 = 
make_vector(BgL_auxz00_3581, BFALSE); } } 
return 
BGl_loopz72z72z72z72z00zz__lalr_expandz00(BgL_squeuez00_528, BgL_rsetsz00_530, BgL_rcountz00_529, BgL_reltsz00_531, ((long)0), ((long)0), ((long)0));} } 
}



/* loop3 */
bool_t BGl_loop3z00zz__lalr_expandz00(obj_t BgL_reltsz00_3250, obj_t BgL_rsetsz00_3249, long BgL_rulenoz00_3248, obj_t BgL_rcountz00_3247, long BgL_s2z00_3246, obj_t BgL_squeuez00_3245, long BgL_r2z00_555, long BgL_p2z00_556)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 210 */
BGl_loop3z00zz__lalr_expandz00:
{ /* ./Lalr/lalr.scm 211 */
obj_t BgL_symbolz00_558;
{ 
int BgL_auxz00_3585;
BgL_auxz00_3585 = 
(int)(BgL_r2z00_555); 
BgL_symbolz00_558 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3585); } 
{ /* ./Lalr/lalr.scm 212 */
bool_t BgL_testz00_3588;
{ /* ./Lalr/lalr.scm 212 */
long BgL_auxz00_3589;
BgL_auxz00_3589 = 
(long)CINT(BgL_symbolz00_558); 
BgL_testz00_3588 = 
(BgL_auxz00_3589>((long)0)); } 
if(BgL_testz00_3588)
{ /* ./Lalr/lalr.scm 212 */
{ /* ./Lalr/lalr.scm 215 */
long BgL_arg1354z00_560;
{ /* ./Lalr/lalr.scm 215 */
obj_t BgL_arg1357z00_561;
{ 
int BgL_auxz00_3592;
BgL_auxz00_3592 = 
(int)(BgL_rulenoz00_3248); 
BgL_arg1357z00_561 = 
VECTOR_REF(BgL_rcountz00_3247,BgL_auxz00_3592); } 
{ /* ./Lalr/lalr.scm 215 */
long BgL_auxz00_3595;
BgL_auxz00_3595 = 
(long)CINT(BgL_arg1357z00_561); 
BgL_arg1354z00_560 = 
(BgL_auxz00_3595+((long)1)); } } 
{ 
obj_t BgL_auxz00_3600;int BgL_auxz00_3598;
BgL_auxz00_3600 = 
BINT(BgL_arg1354z00_560); 
BgL_auxz00_3598 = 
(int)(BgL_rulenoz00_3248); 
VECTOR_SET(BgL_rcountz00_3247,BgL_auxz00_3598,BgL_auxz00_3600); } } 
{ /* ./Lalr/lalr.scm 217 */
obj_t BgL_arg1362z00_563;
{ /* ./Lalr/lalr.scm 217 */
obj_t BgL_auxz00_3607;obj_t BgL_auxz00_3603;
BgL_auxz00_3607 = 
BINT(BgL_rulenoz00_3248); 
{ 
int BgL_auxz00_3604;
BgL_auxz00_3604 = 
CINT(BgL_symbolz00_558); 
BgL_auxz00_3603 = 
VECTOR_REF(BgL_rsetsz00_3249,BgL_auxz00_3604); } 
BgL_arg1362z00_563 = 
MAKE_PAIR(BgL_auxz00_3603, BgL_auxz00_3607); } 
{ 
int BgL_auxz00_3610;
BgL_auxz00_3610 = 
(int)(BgL_p2z00_556); 
VECTOR_SET(BgL_reltsz00_3250,BgL_auxz00_3610,BgL_arg1362z00_563); } } 
{ 
obj_t BgL_auxz00_3615;int BgL_auxz00_3613;
BgL_auxz00_3615 = 
BINT(BgL_p2z00_556); 
BgL_auxz00_3613 = 
CINT(BgL_symbolz00_558); 
VECTOR_SET(BgL_rsetsz00_3249,BgL_auxz00_3613,BgL_auxz00_3615); } 
{ 
long BgL_p2z00_3620;long BgL_r2z00_3618;
BgL_r2z00_3618 = 
(BgL_r2z00_555+((long)1)); 
BgL_p2z00_3620 = 
(BgL_p2z00_556+((long)1)); 
BgL_p2z00_556 = BgL_p2z00_3620; 
BgL_r2z00_555 = BgL_r2z00_3618; 
goto BGl_loop3z00zz__lalr_expandz00;} }  else 
{ /* ./Lalr/lalr.scm 212 */
return 
BGl_loopz72z72z72z72z00zz__lalr_expandz00(BgL_squeuez00_3245, BgL_rsetsz00_3249, BgL_rcountz00_3247, BgL_reltsz00_3250, 
(BgL_r2z00_555+((long)1)), BgL_s2z00_3246, BgL_p2z00_556);} } } } 
}



/* loop2 */
bool_t BGl_loop2z00zz__lalr_expandz00(long BgL_s2z00_3257, long BgL_pz00_3256, long BgL_rz00_3255, obj_t BgL_squeuez00_3254, obj_t BgL_rsetsz00_3253, obj_t BgL_rcountz00_3252, obj_t BgL_reltsz00_3251, long BgL_r1z00_545, bool_t BgL_anyzd2tokenszd2_546)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 204 */
BGl_loop2z00zz__lalr_expandz00:
{ /* ./Lalr/lalr.scm 205 */
obj_t BgL_symbolz00_548;
{ 
int BgL_auxz00_3624;
BgL_auxz00_3624 = 
(int)(BgL_r1z00_545); 
BgL_symbolz00_548 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3624); } 
{ /* ./Lalr/lalr.scm 205 */

{ /* ./Lalr/lalr.scm 206 */
bool_t BgL_testz00_3627;
{ /* ./Lalr/lalr.scm 206 */
long BgL_auxz00_3628;
BgL_auxz00_3628 = 
(long)CINT(BgL_symbolz00_548); 
BgL_testz00_3627 = 
(BgL_auxz00_3628>((long)0)); } 
if(BgL_testz00_3627)
{ /* ./Lalr/lalr.scm 207 */
long BgL_arg1342z00_550;bool_t BgL_arg1343z00_551;
BgL_arg1342z00_550 = 
(BgL_r1z00_545+((long)1)); 
if(BgL_anyzd2tokenszd2_546)
{ /* ./Lalr/lalr.scm 207 */
BgL_arg1343z00_551 = BgL_anyzd2tokenszd2_546; }  else 
{ /* ./Lalr/lalr.scm 207 */
long BgL_auxz00_3635;long BgL_auxz00_3633;
BgL_auxz00_3635 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_3633 = 
(long)CINT(BgL_symbolz00_548); 
BgL_arg1343z00_551 = 
(BgL_auxz00_3633>=BgL_auxz00_3635); } 
{ 
bool_t BgL_anyzd2tokenszd2_3639;long BgL_r1z00_3638;
BgL_r1z00_3638 = BgL_arg1342z00_550; 
BgL_anyzd2tokenszd2_3639 = BgL_arg1343z00_551; 
BgL_anyzd2tokenszd2_546 = BgL_anyzd2tokenszd2_3639; 
BgL_r1z00_545 = BgL_r1z00_3638; 
goto BGl_loop2z00zz__lalr_expandz00;} }  else 
{ /* ./Lalr/lalr.scm 206 */
if(BgL_anyzd2tokenszd2_546)
{ /* ./Lalr/lalr.scm 208 */
return 
BGl_loopz72z72z72z72z00zz__lalr_expandz00(BgL_squeuez00_3254, BgL_rsetsz00_3253, BgL_rcountz00_3252, BgL_reltsz00_3251, 
(BgL_r1z00_545+((long)1)), BgL_s2z00_3257, BgL_pz00_3256);}  else 
{ /* ./Lalr/lalr.scm 210 */
long BgL_auxz00_3643;
{ /* ./Lalr/lalr.scm 209 */
long BgL_auxz00_3644;
BgL_auxz00_3644 = 
(long)CINT(BgL_symbolz00_548); 
BgL_auxz00_3643 = 
NEG(BgL_auxz00_3644); } 
return 
BGl_loop3z00zz__lalr_expandz00(BgL_reltsz00_3251, BgL_rsetsz00_3253, BgL_auxz00_3643, BgL_rcountz00_3252, BgL_s2z00_3257, BgL_squeuez00_3254, BgL_rz00_3255, BgL_pz00_3256);} } } } } } 
}



/* loop''''' */
bool_t BGl_loopz72z72z72z72z72z72zz__lalr_expandz00(obj_t BgL_rsetsz00_3261, obj_t BgL_squeuez00_3260, obj_t BgL_rcountz00_3259, obj_t BgL_reltsz00_3258, long BgL_s1z00_568, long BgL_s3z00_569)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 223 */
if(
(BgL_s1z00_568<BgL_s3z00_569))
{ /* ./Lalr/lalr.scm 225 */
obj_t BgL_arg1388z00_575;
{ /* ./Lalr/lalr.scm 225 */
obj_t BgL_arg1392z00_576;
{ 
int BgL_auxz00_3650;
BgL_auxz00_3650 = 
(int)(BgL_s1z00_568); 
BgL_arg1392z00_576 = 
VECTOR_REF(BgL_squeuez00_3260,BgL_auxz00_3650); } 
{ 
int BgL_auxz00_3653;
BgL_auxz00_3653 = 
CINT(BgL_arg1392z00_576); 
BgL_arg1388z00_575 = 
VECTOR_REF(BgL_rsetsz00_3261,BgL_auxz00_3653); } } 
return 
BGl_loop2z72z72zz__lalr_expandz00(BgL_s1z00_568, BgL_squeuez00_3260, BgL_rcountz00_3259, BgL_reltsz00_3258, BgL_rsetsz00_3261, BgL_arg1388z00_575, BgL_s3z00_569);}  else 
{ /* ./Lalr/lalr.scm 224 */
return ((bool_t)0);} } 
}



/* loop'''' */
bool_t BGl_loopz72z72z72z72z00zz__lalr_expandz00(obj_t BgL_squeuez00_3265, obj_t BgL_rsetsz00_3264, obj_t BgL_rcountz00_3263, obj_t BgL_reltsz00_3262, long BgL_rz00_532, long BgL_s2z00_533, long BgL_pz00_534)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 193 */
BGl_loopz72z72z72z72z00zz__lalr_expandz00:
{ /* ./Lalr/lalr.scm 194 */
obj_t BgL_za2rza2_536;
{ 
int BgL_auxz00_3657;
BgL_auxz00_3657 = 
(int)(BgL_rz00_532); 
BgL_za2rza2_536 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3657); } 
if(
CBOOL(BgL_za2rza2_536))
{ /* ./Lalr/lalr.scm 196 */
bool_t BgL_testz00_3662;
{ /* ./Lalr/lalr.scm 196 */
long BgL_auxz00_3663;
BgL_auxz00_3663 = 
(long)CINT(BgL_za2rza2_536); 
BgL_testz00_3662 = 
(BgL_auxz00_3663<((long)0)); } 
if(BgL_testz00_3662)
{ /* ./Lalr/lalr.scm 197 */
obj_t BgL_symbolz00_538;
{ /* ./Lalr/lalr.scm 197 */
long BgL_arg1336z00_544;
{ /* ./Lalr/lalr.scm 197 */
long BgL_auxz00_3666;
BgL_auxz00_3666 = 
(long)CINT(BgL_za2rza2_536); 
BgL_arg1336z00_544 = 
NEG(BgL_auxz00_3666); } 
{ 
int BgL_auxz00_3669;
BgL_auxz00_3669 = 
(int)(BgL_arg1336z00_544); 
BgL_symbolz00_538 = 
VECTOR_REF(BGl_rlhsz00zz__lalr_globalz00,BgL_auxz00_3669); } } 
{ /* ./Lalr/lalr.scm 198 */
bool_t BgL_test1322z00_539;
{ /* ./Lalr/lalr.scm 198 */
bool_t BgL_testz00_3672;
{ /* ./Lalr/lalr.scm 198 */
long BgL_auxz00_3673;
BgL_auxz00_3673 = 
(long)CINT(BgL_symbolz00_538); 
BgL_testz00_3672 = 
(BgL_auxz00_3673>=((long)0)); } 
if(BgL_testz00_3672)
{ /* ./Lalr/lalr.scm 199 */
bool_t BgL_test1332z00_543;
{ /* ./Lalr/lalr.scm 199 */
obj_t BgL_vectorz00_1819;int BgL_kz00_1820;
BgL_vectorz00_1819 = BGl_nullablez00zz__lalr_globalz00; 
BgL_kz00_1820 = 
CINT(BgL_symbolz00_538); 
{ /* ./Lalr/lalr.scm 199 */
obj_t BgL_auxz00_3677;
BgL_auxz00_3677 = 
VECTOR_REF(BgL_vectorz00_1819,BgL_kz00_1820); 
BgL_test1332z00_543 = 
CBOOL(BgL_auxz00_3677); } } 
if(BgL_test1332z00_543)
{ /* ./Lalr/lalr.scm 199 */
BgL_test1322z00_539 = ((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 199 */
BgL_test1322z00_539 = ((bool_t)1); } }  else 
{ /* ./Lalr/lalr.scm 198 */
BgL_test1322z00_539 = ((bool_t)0); } } 
if(BgL_test1322z00_539)
{ /* ./Lalr/lalr.scm 198 */
{ 
int BgL_auxz00_3682;
BgL_auxz00_3682 = 
CINT(BgL_symbolz00_538); 
VECTOR_SET(BGl_nullablez00zz__lalr_globalz00,BgL_auxz00_3682,BTRUE); } 
{ 
int BgL_auxz00_3685;
BgL_auxz00_3685 = 
(int)(BgL_s2z00_533); 
VECTOR_SET(BgL_squeuez00_3265,BgL_auxz00_3685,BgL_symbolz00_538); } 
{ 
long BgL_s2z00_3690;long BgL_rz00_3688;
BgL_rz00_3688 = 
(BgL_rz00_532+((long)1)); 
BgL_s2z00_3690 = 
(BgL_s2z00_533+((long)1)); 
BgL_s2z00_533 = BgL_s2z00_3690; 
BgL_rz00_532 = BgL_rz00_3688; 
goto BGl_loopz72z72z72z72z00zz__lalr_expandz00;} }  else 
{ /* ./Lalr/lalr.scm 198 */
return ((bool_t)0);} } }  else 
{ /* ./Lalr/lalr.scm 196 */
return 
BGl_loop2z00zz__lalr_expandz00(BgL_s2z00_533, BgL_pz00_534, BgL_rz00_532, BgL_squeuez00_3265, BgL_rsetsz00_3264, BgL_rcountz00_3263, BgL_reltsz00_3262, BgL_rz00_532, ((bool_t)0));} }  else 
{ /* ./Lalr/lalr.scm 195 */
return 
BGl_loopz72z72z72z72z72z72zz__lalr_expandz00(BgL_rsetsz00_3264, BgL_squeuez00_3265, BgL_rcountz00_3263, BgL_reltsz00_3262, ((long)0), BgL_s2z00_533);} } } 
}



/* loop2' */
bool_t BGl_loop2z72z72zz__lalr_expandz00(long BgL_s1z00_3270, obj_t BgL_squeuez00_3269, obj_t BgL_rcountz00_3268, obj_t BgL_reltsz00_3267, obj_t BgL_rsetsz00_3266, obj_t BgL_pz00_572, long BgL_s4z00_573)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 225 */
if(
CBOOL(BgL_pz00_572))
{ /* ./Lalr/lalr.scm 227 */
obj_t BgL_xz00_577;
{ 
int BgL_auxz00_3696;
BgL_auxz00_3696 = 
CINT(BgL_pz00_572); 
BgL_xz00_577 = 
VECTOR_REF(BgL_reltsz00_3267,BgL_auxz00_3696); } 
{ /* ./Lalr/lalr.scm 227 */
obj_t BgL_rulenoz00_578;
BgL_rulenoz00_578 = 
CDR(BgL_xz00_577); 
{ /* ./Lalr/lalr.scm 228 */
long BgL_yz00_579;
{ /* ./Lalr/lalr.scm 229 */
obj_t BgL_arg1421z00_589;
{ 
int BgL_auxz00_3700;
BgL_auxz00_3700 = 
CINT(BgL_rulenoz00_578); 
BgL_arg1421z00_589 = 
VECTOR_REF(BgL_rcountz00_3268,BgL_auxz00_3700); } 
{ /* ./Lalr/lalr.scm 229 */
long BgL_auxz00_3703;
BgL_auxz00_3703 = 
(long)CINT(BgL_arg1421z00_589); 
BgL_yz00_579 = 
(BgL_auxz00_3703-((long)1)); } } 
{ /* ./Lalr/lalr.scm 229 */

{ 
obj_t BgL_auxz00_3708;int BgL_auxz00_3706;
BgL_auxz00_3708 = 
BINT(BgL_yz00_579); 
BgL_auxz00_3706 = 
CINT(BgL_rulenoz00_578); 
VECTOR_SET(BgL_rcountz00_3268,BgL_auxz00_3706,BgL_auxz00_3708); } 
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_yz00_579), 
BINT(((long)0))))
{ /* ./Lalr/lalr.scm 232 */
obj_t BgL_symbolz00_581;
{ 
int BgL_auxz00_3715;
BgL_auxz00_3715 = 
CINT(BgL_rulenoz00_578); 
BgL_symbolz00_581 = 
VECTOR_REF(BGl_rlhsz00zz__lalr_globalz00,BgL_auxz00_3715); } 
{ /* ./Lalr/lalr.scm 233 */
bool_t BgL_test1397z00_582;
{ /* ./Lalr/lalr.scm 233 */
bool_t BgL_testz00_3718;
{ /* ./Lalr/lalr.scm 233 */
long BgL_auxz00_3719;
BgL_auxz00_3719 = 
(long)CINT(BgL_symbolz00_581); 
BgL_testz00_3718 = 
(BgL_auxz00_3719>=((long)0)); } 
if(BgL_testz00_3718)
{ /* ./Lalr/lalr.scm 234 */
bool_t BgL_test1411z00_587;
{ /* ./Lalr/lalr.scm 234 */
obj_t BgL_vectorz00_1887;int BgL_kz00_1888;
BgL_vectorz00_1887 = BGl_nullablez00zz__lalr_globalz00; 
BgL_kz00_1888 = 
CINT(BgL_symbolz00_581); 
{ /* ./Lalr/lalr.scm 234 */
obj_t BgL_auxz00_3723;
BgL_auxz00_3723 = 
VECTOR_REF(BgL_vectorz00_1887,BgL_kz00_1888); 
BgL_test1411z00_587 = 
CBOOL(BgL_auxz00_3723); } } 
if(BgL_test1411z00_587)
{ /* ./Lalr/lalr.scm 234 */
BgL_test1397z00_582 = ((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 234 */
BgL_test1397z00_582 = ((bool_t)1); } }  else 
{ /* ./Lalr/lalr.scm 233 */
BgL_test1397z00_582 = ((bool_t)0); } } 
if(BgL_test1397z00_582)
{ /* ./Lalr/lalr.scm 233 */
{ 
int BgL_auxz00_3728;
BgL_auxz00_3728 = 
CINT(BgL_symbolz00_581); 
VECTOR_SET(BGl_nullablez00zz__lalr_globalz00,BgL_auxz00_3728,BTRUE); } 
{ 
int BgL_auxz00_3731;
BgL_auxz00_3731 = 
(int)(BgL_s4z00_573); 
VECTOR_SET(BgL_squeuez00_3269,BgL_auxz00_3731,BgL_symbolz00_581); } 
BGl_loop2z72z72zz__lalr_expandz00(BgL_s1z00_3270, BgL_squeuez00_3269, BgL_rcountz00_3268, BgL_reltsz00_3267, BgL_rsetsz00_3266, 
CAR(BgL_xz00_577), 
(BgL_s4z00_573+((long)1))); }  else 
{ /* ./Lalr/lalr.scm 233 */
BGl_loop2z72z72zz__lalr_expandz00(BgL_s1z00_3270, BgL_squeuez00_3269, BgL_rcountz00_3268, BgL_reltsz00_3267, BgL_rsetsz00_3266, 
CAR(BgL_xz00_577), BgL_s4z00_573); } } }  else 
{ /* ./Lalr/lalr.scm 231 */
BGl_loop2z72z72zz__lalr_expandz00(BgL_s1z00_3270, BgL_squeuez00_3269, BgL_rcountz00_3268, BgL_reltsz00_3267, BgL_rsetsz00_3266, 
CAR(BgL_xz00_577), BgL_s4z00_573); } } } } }  else 
{ /* ./Lalr/lalr.scm 226 */((bool_t)0); } 
return 
BGl_loopz72z72z72z72z72z72zz__lalr_expandz00(BgL_rsetsz00_3266, BgL_squeuez00_3269, BgL_rcountz00_3268, BgL_reltsz00_3267, 
(BgL_s1z00_3270+((long)1)), BgL_s4z00_573);} 
}



/* set-firsts */
bool_t BGl_setzd2firstszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 250 */
{ /* ./Lalr/lalr.scm 251 */
int BgL_auxz00_3743;
BgL_auxz00_3743 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BGl_firstsz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3743, BNIL); } 
{ 
long BgL_iz00_596;
BgL_iz00_596 = ((long)0); 
BgL_loopz00_597:
{ /* ./Lalr/lalr.scm 255 */
bool_t BgL_testz00_3746;
{ /* ./Lalr/lalr.scm 255 */
long BgL_auxz00_3747;
BgL_auxz00_3747 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_3746 = 
(BgL_iz00_596<BgL_auxz00_3747); } 
if(BgL_testz00_3746)
{ 
obj_t BgL_spz00_599;
{ 
int BgL_auxz00_3777;
BgL_auxz00_3777 = 
(int)(BgL_iz00_596); 
BgL_spz00_599 = 
VECTOR_REF(BGl_derivesz00zz__lalr_globalz00,BgL_auxz00_3777); } 
BgL_loop2z00_600:
if(
NULLP(BgL_spz00_599))
{ 
long BgL_iz00_3752;
BgL_iz00_3752 = 
(BgL_iz00_596+((long)1)); 
BgL_iz00_596 = BgL_iz00_3752; 
goto BgL_loopz00_597;}  else 
{ /* ./Lalr/lalr.scm 259 */
obj_t BgL_symz00_604;
{ /* ./Lalr/lalr.scm 259 */
obj_t BgL_arg1474z00_610;
{ /* ./Lalr/lalr.scm 259 */
obj_t BgL_arg1477z00_611;
BgL_arg1477z00_611 = 
CAR(BgL_spz00_599); 
{ 
int BgL_auxz00_3755;
BgL_auxz00_3755 = 
CINT(BgL_arg1477z00_611); 
BgL_arg1474z00_610 = 
VECTOR_REF(BGl_rrhsz00zz__lalr_globalz00,BgL_auxz00_3755); } } 
{ 
int BgL_auxz00_3758;
BgL_auxz00_3758 = 
CINT(BgL_arg1474z00_610); 
BgL_symz00_604 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3758); } } 
{ /* ./Lalr/lalr.scm 260 */
bool_t BgL_test1459z00_605;
if(
BGl_2zc3zc3zz__r4_numbers_6_5z00(
BINT(((long)-1)), BgL_symz00_604))
{ /* ./Lalr/lalr.scm 260 */
BgL_test1459z00_605 = 
BGl_2zc3zc3zz__r4_numbers_6_5z00(BgL_symz00_604, BGl_nvarsz00zz__lalr_globalz00); }  else 
{ /* ./Lalr/lalr.scm 260 */
BgL_test1459z00_605 = ((bool_t)0); } 
if(BgL_test1459z00_605)
{ 
obj_t BgL_auxz00_3768;int BgL_auxz00_3766;
{ /* ./Lalr/lalr.scm 261 */
obj_t BgL_auxz00_3769;
{ 
int BgL_auxz00_3770;
BgL_auxz00_3770 = 
(int)(BgL_iz00_596); 
BgL_auxz00_3769 = 
VECTOR_REF(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3770); } 
BgL_auxz00_3768 = 
BGl_sinsertz00zz__lalr_utilz00(BgL_symz00_604, BgL_auxz00_3769); } 
BgL_auxz00_3766 = 
(int)(BgL_iz00_596); 
VECTOR_SET(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3766,BgL_auxz00_3768); }  else 
{ /* ./Lalr/lalr.scm 260 */BFALSE; } } 
{ 
obj_t BgL_spz00_3775;
BgL_spz00_3775 = 
CDR(BgL_spz00_599); 
BgL_spz00_599 = BgL_spz00_3775; 
goto BgL_loop2z00_600;} } }  else 
{ /* ./Lalr/lalr.scm 255 */((bool_t)0); } } } 
{ 
bool_t BgL_continuez00_612;
BgL_continuez00_612 = ((bool_t)1); 
BgL_loopz00_613:
if(BgL_continuez00_612)
{ 
long BgL_iz00_614;bool_t BgL_contz00_615;
BgL_iz00_614 = ((long)0); 
BgL_contz00_615 = ((bool_t)0); 
BgL_loop2z00_616:
{ /* ./Lalr/lalr.scm 268 */
bool_t BgL_testz00_3781;
{ /* ./Lalr/lalr.scm 268 */
long BgL_auxz00_3782;
BgL_auxz00_3782 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_3781 = 
(BgL_iz00_614>=BgL_auxz00_3782); } 
if(BgL_testz00_3781)
{ 
bool_t BgL_continuez00_3785;
BgL_continuez00_3785 = BgL_contz00_615; 
BgL_continuez00_612 = BgL_continuez00_3785; 
goto BgL_loopz00_613;}  else 
{ /* ./Lalr/lalr.scm 270 */
obj_t BgL_xz00_618;
{ 
int BgL_auxz00_3786;
BgL_auxz00_3786 = 
(int)(BgL_iz00_614); 
BgL_xz00_618 = 
VECTOR_REF(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3786); } 
{ /* ./Lalr/lalr.scm 270 */
obj_t BgL_yz00_619;
{ 
obj_t BgL_lz00_1925;obj_t BgL_za7za7_1926;
BgL_lz00_1925 = BgL_xz00_618; 
BgL_za7za7_1926 = BgL_xz00_618; 
BgL_loop3z00_1924:
if(
NULLP(BgL_lz00_1925))
{ /* ./Lalr/lalr.scm 271 */
BgL_yz00_619 = BgL_za7za7_1926; }  else 
{ /* ./Lalr/lalr.scm 271 */
obj_t BgL_arg1500z00_1933;obj_t BgL_arg1501z00_1934;
BgL_arg1500z00_1933 = 
CDR(BgL_lz00_1925); 
{ /* ./Lalr/lalr.scm 271 */
obj_t BgL_arg1505z00_1935;
{ /* ./Lalr/lalr.scm 271 */
obj_t BgL_arg1508z00_1936;
BgL_arg1508z00_1936 = 
CAR(BgL_lz00_1925); 
{ 
int BgL_auxz00_3793;
BgL_auxz00_3793 = 
CINT(BgL_arg1508z00_1936); 
BgL_arg1505z00_1935 = 
VECTOR_REF(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3793); } } 
BgL_arg1501z00_1934 = 
BGl_sunionz00zz__lalr_utilz00(BgL_arg1505z00_1935, BgL_za7za7_1926); } 
{ 
obj_t BgL_za7za7_3798;obj_t BgL_lz00_3797;
BgL_lz00_3797 = BgL_arg1500z00_1933; 
BgL_za7za7_3798 = BgL_arg1501z00_1934; 
BgL_za7za7_1926 = BgL_za7za7_3798; 
BgL_lz00_1925 = BgL_lz00_3797; 
goto BgL_loop3z00_1924;} } } 
{ /* ./Lalr/lalr.scm 271 */

if(
BGl_equalzf3zf3zz__r4_equivalence_6_2z00(BgL_xz00_618, BgL_yz00_619))
{ 
long BgL_iz00_3801;
BgL_iz00_3801 = 
(BgL_iz00_614+((long)1)); 
BgL_iz00_614 = BgL_iz00_3801; 
goto BgL_loop2z00_616;}  else 
{ /* ./Lalr/lalr.scm 276 */
{ 
int BgL_auxz00_3803;
BgL_auxz00_3803 = 
(int)(BgL_iz00_614); 
VECTOR_SET(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3803,BgL_yz00_619); } 
{ 
bool_t BgL_contz00_3808;long BgL_iz00_3806;
BgL_iz00_3806 = 
(BgL_iz00_614+((long)1)); 
BgL_contz00_3808 = ((bool_t)1); 
BgL_contz00_615 = BgL_contz00_3808; 
BgL_iz00_614 = BgL_iz00_3806; 
goto BgL_loop2z00_616;} } } } } } }  else 
{ /* ./Lalr/lalr.scm 266 */((bool_t)0); } } 
{ 
long BgL_iz00_631;
BgL_iz00_631 = ((long)0); 
BgL_loopz00_632:
{ /* ./Lalr/lalr.scm 283 */
bool_t BgL_testz00_3809;
{ /* ./Lalr/lalr.scm 283 */
long BgL_auxz00_3810;
BgL_auxz00_3810 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_3809 = 
(BgL_iz00_631<BgL_auxz00_3810); } 
if(BgL_testz00_3809)
{ /* ./Lalr/lalr.scm 283 */
{ 
obj_t BgL_auxz00_3815;int BgL_auxz00_3813;
{ /* ./Lalr/lalr.scm 285 */
obj_t BgL_auxz00_3816;
{ 
int BgL_auxz00_3818;
BgL_auxz00_3818 = 
(int)(BgL_iz00_631); 
BgL_auxz00_3816 = 
VECTOR_REF(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3818); } 
BgL_auxz00_3815 = 
BGl_sinsertz00zz__lalr_utilz00(
BINT(BgL_iz00_631), BgL_auxz00_3816); } 
BgL_auxz00_3813 = 
(int)(BgL_iz00_631); 
VECTOR_SET(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3813,BgL_auxz00_3815); } 
{ 
long BgL_iz00_3823;
BgL_iz00_3823 = 
(BgL_iz00_631+((long)1)); 
BgL_iz00_631 = BgL_iz00_3823; 
goto BgL_loopz00_632;} }  else 
{ /* ./Lalr/lalr.scm 283 */
return ((bool_t)0);} } } } 
}



/* set-fderives */
bool_t BGl_setzd2fderiveszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 295 */
{ /* ./Lalr/lalr.scm 296 */
int BgL_auxz00_3825;
BgL_auxz00_3825 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
BGl_fderivesz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3825, BFALSE); } 
BGl_setzd2firstszd2zz__lalr_expandz00(); 
{ 
long BgL_iz00_637;
BgL_iz00_637 = ((long)0); 
BgL_loopz00_638:
{ /* ./Lalr/lalr.scm 301 */
bool_t BgL_testz00_3829;
{ /* ./Lalr/lalr.scm 301 */
long BgL_auxz00_3830;
BgL_auxz00_3830 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_3829 = 
(BgL_iz00_637<BgL_auxz00_3830); } 
if(BgL_testz00_3829)
{ /* ./Lalr/lalr.scm 302 */
obj_t BgL_xz00_640;
{ /* ./Lalr/lalr.scm 302 */
obj_t BgL_arg1539z00_645;
{ 
int BgL_auxz00_3833;
BgL_auxz00_3833 = 
(int)(BgL_iz00_637); 
BgL_arg1539z00_645 = 
VECTOR_REF(BGl_firstsz00zz__lalr_globalz00,BgL_auxz00_3833); } 
{ 
obj_t BgL_lz00_1985;obj_t BgL_fdz00_1986;
BgL_lz00_1985 = BgL_arg1539z00_645; 
BgL_fdz00_1986 = BNIL; 
BgL_loop2z00_1984:
if(
NULLP(BgL_lz00_1985))
{ /* ./Lalr/lalr.scm 302 */
BgL_xz00_640 = BgL_fdz00_1986; }  else 
{ /* ./Lalr/lalr.scm 302 */
obj_t BgL_arg1545z00_1993;obj_t BgL_arg1546z00_1994;
BgL_arg1545z00_1993 = 
CDR(BgL_lz00_1985); 
{ /* ./Lalr/lalr.scm 302 */
obj_t BgL_arg1550z00_1995;
{ /* ./Lalr/lalr.scm 302 */
obj_t BgL_arg1553z00_1996;
BgL_arg1553z00_1996 = 
CAR(BgL_lz00_1985); 
{ 
int BgL_auxz00_3840;
BgL_auxz00_3840 = 
CINT(BgL_arg1553z00_1996); 
BgL_arg1550z00_1995 = 
VECTOR_REF(BGl_derivesz00zz__lalr_globalz00,BgL_auxz00_3840); } } 
BgL_arg1546z00_1994 = 
BGl_sunionz00zz__lalr_utilz00(BgL_arg1550z00_1995, BgL_fdz00_1986); } 
{ 
obj_t BgL_fdz00_3845;obj_t BgL_lz00_3844;
BgL_lz00_3844 = BgL_arg1545z00_1993; 
BgL_fdz00_3845 = BgL_arg1546z00_1994; 
BgL_fdz00_1986 = BgL_fdz00_3845; 
BgL_lz00_1985 = BgL_lz00_3844; 
goto BgL_loop2z00_1984;} } } } 
{ 
int BgL_auxz00_3846;
BgL_auxz00_3846 = 
(int)(BgL_iz00_637); 
VECTOR_SET(BGl_fderivesz00zz__lalr_globalz00,BgL_auxz00_3846,BgL_xz00_640); } 
{ 
long BgL_iz00_3849;
BgL_iz00_3849 = 
(BgL_iz00_637+((long)1)); 
BgL_iz00_637 = BgL_iz00_3849; 
goto BgL_loopz00_638;} }  else 
{ /* ./Lalr/lalr.scm 301 */
return ((bool_t)0);} } } } 
}



/* closure */
obj_t BGl_closurez00zz__lalr_expandz00(obj_t BgL_corez00_6)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 314 */
{ /* ./Lalr/lalr.scm 316 */
obj_t BgL_rulesetz00_652;
BgL_rulesetz00_652 = BUNSPEC; 
{ /* ./Lalr/lalr.scm 316 */
int BgL_auxz00_3851;
BgL_auxz00_3851 = 
CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_rulesetz00_652 = 
make_vector(BgL_auxz00_3851, BFALSE); } 
{ 
obj_t BgL_cspz00_653;
BgL_cspz00_653 = BgL_corez00_6; 
BgL_loopz00_654:
if(
NULLP(BgL_cspz00_653))
{ /* ./Lalr/lalr.scm 319 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 320 */
obj_t BgL_symz00_656;
{ /* ./Lalr/lalr.scm 320 */
obj_t BgL_arg1585z00_666;
BgL_arg1585z00_666 = 
CAR(BgL_cspz00_653); 
{ 
int BgL_auxz00_3857;
BgL_auxz00_3857 = 
CINT(BgL_arg1585z00_666); 
BgL_symz00_656 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3857); } } 
{ /* ./Lalr/lalr.scm 321 */
bool_t BgL_test1560z00_657;
if(
BGl_2zc3zc3zz__r4_numbers_6_5z00(
BINT(((long)-1)), BgL_symz00_656))
{ /* ./Lalr/lalr.scm 321 */
BgL_test1560z00_657 = 
BGl_2zc3zc3zz__r4_numbers_6_5z00(BgL_symz00_656, BGl_nvarsz00zz__lalr_globalz00); }  else 
{ /* ./Lalr/lalr.scm 321 */
BgL_test1560z00_657 = ((bool_t)0); } 
if(BgL_test1560z00_657)
{ /* ./Lalr/lalr.scm 322 */
obj_t BgL_arg1562z00_660;
{ 
int BgL_auxz00_3865;
BgL_auxz00_3865 = 
CINT(BgL_symz00_656); 
BgL_arg1562z00_660 = 
VECTOR_REF(BGl_fderivesz00zz__lalr_globalz00,BgL_auxz00_3865); } 
{ 
obj_t BgL_dspz00_2036;
BgL_dspz00_2036 = BgL_arg1562z00_660; 
BgL_loop2z00_2035:
if(
NULLP(BgL_dspz00_2036))
{ /* ./Lalr/lalr.scm 322 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 322 */
{ /* ./Lalr/lalr.scm 322 */
obj_t BgL_arg1567z00_2041;
BgL_arg1567z00_2041 = 
CAR(BgL_dspz00_2036); 
{ 
int BgL_auxz00_3871;
BgL_auxz00_3871 = 
CINT(BgL_arg1567z00_2041); 
VECTOR_SET(BgL_rulesetz00_652,BgL_auxz00_3871,BTRUE); } } 
{ 
obj_t BgL_dspz00_3874;
BgL_dspz00_3874 = 
CDR(BgL_dspz00_2036); 
BgL_dspz00_2036 = BgL_dspz00_3874; 
goto BgL_loop2z00_2035;} } } }  else 
{ /* ./Lalr/lalr.scm 321 */((bool_t)0); } } 
{ 
obj_t BgL_cspz00_3876;
BgL_cspz00_3876 = 
CDR(BgL_cspz00_653); 
BgL_cspz00_653 = BgL_cspz00_3876; 
goto BgL_loopz00_654;} } } 
{ 
long BgL_rulenoz00_667;obj_t BgL_cspz00_668;obj_t BgL_itemsetvz00_669;
BgL_rulenoz00_667 = ((long)1); 
BgL_cspz00_668 = BgL_corez00_6; 
BgL_itemsetvz00_669 = BNIL; 
BgL_loopz00_670:
{ /* ./Lalr/lalr.scm 330 */
bool_t BgL_testz00_3878;
{ /* ./Lalr/lalr.scm 330 */
long BgL_auxz00_3879;
BgL_auxz00_3879 = 
(long)CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_testz00_3878 = 
(BgL_rulenoz00_667<BgL_auxz00_3879); } 
if(BgL_testz00_3878)
{ /* ./Lalr/lalr.scm 331 */
bool_t BgL_test1591z00_672;
{ /* ./Lalr/lalr.scm 331 */
obj_t BgL_vectorz00_2071;int BgL_kz00_2072;
BgL_vectorz00_2071 = BgL_rulesetz00_652; 
BgL_kz00_2072 = 
(int)(BgL_rulenoz00_667); 
{ /* ./Lalr/lalr.scm 331 */
obj_t BgL_auxz00_3883;
BgL_auxz00_3883 = 
VECTOR_REF(BgL_vectorz00_2071,BgL_kz00_2072); 
BgL_test1591z00_672 = 
CBOOL(BgL_auxz00_3883); } } 
if(BgL_test1591z00_672)
{ /* ./Lalr/lalr.scm 332 */
obj_t BgL_itemnoz00_673;
{ 
int BgL_auxz00_3887;
BgL_auxz00_3887 = 
(int)(BgL_rulenoz00_667); 
BgL_itemnoz00_673 = 
VECTOR_REF(BGl_rrhsz00zz__lalr_globalz00,BgL_auxz00_3887); } 
{ 
obj_t BgL_cz00_674;obj_t BgL_itemsetv2z00_675;
BgL_cz00_674 = BgL_cspz00_668; 
BgL_itemsetv2z00_675 = BgL_itemsetvz00_669; 
BgL_loop2z00_676:
{ /* ./Lalr/lalr.scm 334 */
bool_t BgL_test1593z00_677;
if(
PAIRP(BgL_cz00_674))
{ /* ./Lalr/lalr.scm 335 */
long BgL_auxz00_3896;long BgL_auxz00_3892;
BgL_auxz00_3896 = 
(long)CINT(BgL_itemnoz00_673); 
{ /* ./Lalr/lalr.scm 335 */
obj_t BgL_auxz00_3893;
BgL_auxz00_3893 = 
CAR(BgL_cz00_674); 
BgL_auxz00_3892 = 
(long)CINT(BgL_auxz00_3893); } 
BgL_test1593z00_677 = 
(BgL_auxz00_3892<BgL_auxz00_3896); }  else 
{ /* ./Lalr/lalr.scm 334 */
BgL_test1593z00_677 = ((bool_t)0); } 
if(BgL_test1593z00_677)
{ /* ./Lalr/lalr.scm 336 */
obj_t BgL_arg1595z00_678;obj_t BgL_arg1596z00_679;
BgL_arg1595z00_678 = 
CDR(BgL_cz00_674); 
{ /* ./Lalr/lalr.scm 336 */
obj_t BgL_auxz00_3901;
BgL_auxz00_3901 = 
CAR(BgL_cz00_674); 
BgL_arg1596z00_679 = 
MAKE_PAIR(BgL_auxz00_3901, BgL_itemsetv2z00_675); } 
{ 
obj_t BgL_itemsetv2z00_3905;obj_t BgL_cz00_3904;
BgL_cz00_3904 = BgL_arg1595z00_678; 
BgL_itemsetv2z00_3905 = BgL_arg1596z00_679; 
BgL_itemsetv2z00_675 = BgL_itemsetv2z00_3905; 
BgL_cz00_674 = BgL_cz00_3904; 
goto BgL_loop2z00_676;} }  else 
{ /* ./Lalr/lalr.scm 337 */
long BgL_arg1604z00_681;obj_t BgL_arg1605z00_682;
BgL_arg1604z00_681 = 
(BgL_rulenoz00_667+((long)1)); 
BgL_arg1605z00_682 = 
MAKE_PAIR(BgL_itemnoz00_673, BgL_itemsetv2z00_675); 
{ 
obj_t BgL_itemsetvz00_3910;obj_t BgL_cspz00_3909;long BgL_rulenoz00_3908;
BgL_rulenoz00_3908 = BgL_arg1604z00_681; 
BgL_cspz00_3909 = BgL_cz00_674; 
BgL_itemsetvz00_3910 = BgL_arg1605z00_682; 
BgL_itemsetvz00_669 = BgL_itemsetvz00_3910; 
BgL_cspz00_668 = BgL_cspz00_3909; 
BgL_rulenoz00_667 = BgL_rulenoz00_3908; 
goto BgL_loopz00_670;} } } } }  else 
{ 
long BgL_rulenoz00_3911;
BgL_rulenoz00_3911 = 
(BgL_rulenoz00_667+((long)1)); 
BgL_rulenoz00_667 = BgL_rulenoz00_3911; 
goto BgL_loopz00_670;} }  else 
{ 
obj_t BgL_cz00_2086;obj_t BgL_itemsetv2z00_2087;
BgL_cz00_2086 = BgL_cspz00_668; 
BgL_itemsetv2z00_2087 = BgL_itemsetvz00_669; 
BgL_loop2z00_2085:
if(
PAIRP(BgL_cz00_2086))
{ /* ./Lalr/lalr.scm 339 */
obj_t BgL_arg1624z00_2093;obj_t BgL_arg1625z00_2094;
BgL_arg1624z00_2093 = 
CDR(BgL_cz00_2086); 
{ /* ./Lalr/lalr.scm 339 */
obj_t BgL_auxz00_3916;
BgL_auxz00_3916 = 
CAR(BgL_cz00_2086); 
BgL_arg1625z00_2094 = 
MAKE_PAIR(BgL_auxz00_3916, BgL_itemsetv2z00_2087); } 
{ 
obj_t BgL_itemsetv2z00_3920;obj_t BgL_cz00_3919;
BgL_cz00_3919 = BgL_arg1624z00_2093; 
BgL_itemsetv2z00_3920 = BgL_arg1625z00_2094; 
BgL_itemsetv2z00_2087 = BgL_itemsetv2z00_3920; 
BgL_cz00_2086 = BgL_cz00_3919; 
goto BgL_loop2z00_2085;} }  else 
{ /* ./Lalr/lalr.scm 339 */
return 
bgl_reverse(BgL_itemsetv2z00_2087);} } } } } } 
}



/* allocate-item-sets */
obj_t BGl_allocatezd2itemzd2setsz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 346 */
{ /* ./Lalr/lalr.scm 347 */
obj_t BgL_auxz00_3924;int BgL_auxz00_3922;
BgL_auxz00_3924 = 
BINT(((long)0)); 
BgL_auxz00_3922 = 
CINT(BGl_nsymsz00zz__lalr_globalz00); 
BGl_kernelzd2basezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3922, BgL_auxz00_3924); } 
{ /* ./Lalr/lalr.scm 348 */
int BgL_auxz00_3927;
BgL_auxz00_3927 = 
CINT(BGl_nsymsz00zz__lalr_globalz00); 
return ( 
BGl_kernelzd2endzd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3927, BFALSE), BUNSPEC) ;} } 
}



/* allocate-storage */
obj_t BGl_allocatezd2storagezd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 351 */
BGl_allocatezd2itemzd2setsz00zz__lalr_expandz00(); 
{ /* ./Lalr/lalr.scm 353 */
long BgL_arg1640z00_693;
{ /* ./Lalr/lalr.scm 353 */
long BgL_auxz00_3931;
BgL_auxz00_3931 = 
(long)CINT(BGl_nrulesz00zz__lalr_globalz00); 
BgL_arg1640z00_693 = 
(BgL_auxz00_3931+((long)1)); } 
{ /* ./Lalr/lalr.scm 353 */
obj_t BgL_auxz00_3936;int BgL_auxz00_3934;
BgL_auxz00_3936 = 
BINT(((long)0)); 
BgL_auxz00_3934 = 
(int)(BgL_arg1640z00_693); 
return ( 
BGl_redzd2setzd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_3934, BgL_auxz00_3936), BUNSPEC) ;} } } 
}



/* initialize-states */
obj_t BGl_initializa7ezd2statesz75zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 358 */
{ /* ./Lalr/lalr.scm 359 */
obj_t BgL_pz00_695;
{ /* ./Lalr/lalr.scm 359 */
obj_t BgL_auxz00_3941;int BgL_auxz00_3939;
BgL_auxz00_3941 = 
BINT(((long)0)); 
BgL_auxz00_3939 = 
(int)(((long)4)); 
BgL_pz00_695 = 
make_vector(BgL_auxz00_3939, BgL_auxz00_3941); } 
{ 
obj_t BgL_auxz00_3946;int BgL_auxz00_3944;
BgL_auxz00_3946 = 
BINT(((long)0)); 
BgL_auxz00_3944 = 
(int)(((long)0)); 
VECTOR_SET(BgL_pz00_695,BgL_auxz00_3944,BgL_auxz00_3946); } 
{ 
int BgL_auxz00_3949;
BgL_auxz00_3949 = 
(int)(((long)1)); 
VECTOR_SET(BgL_pz00_695,BgL_auxz00_3949,BFALSE); } 
{ 
obj_t BgL_auxz00_3954;int BgL_auxz00_3952;
BgL_auxz00_3954 = 
BINT(((long)1)); 
BgL_auxz00_3952 = 
(int)(((long)2)); 
VECTOR_SET(BgL_pz00_695,BgL_auxz00_3952,BgL_auxz00_3954); } 
{ 
int BgL_auxz00_3957;
BgL_auxz00_3957 = 
(int)(((long)3)); 
VECTOR_SET(BgL_pz00_695,BgL_auxz00_3957,BGl_list4500z00zz__lalr_expandz00); } 
{ /* ./Lalr/lalr.scm 365 */
obj_t BgL_list1649z00_696;
BgL_list1649z00_696 = 
MAKE_PAIR(BgL_pz00_695, BNIL); 
BGl_firstzd2statezd2zz__lalr_globalz00 = BgL_list1649z00_696; } 
BGl_lastzd2statezd2zz__lalr_globalz00 = BGl_firstzd2statezd2zz__lalr_globalz00; 
return ( 
BGl_nstatesz00zz__lalr_globalz00 = 
BINT(((long)1)), BUNSPEC) ;} } 
}



/* generate-states */
bool_t BGl_generatezd2stateszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 371 */
BGl_allocatezd2storagezd2zz__lalr_expandz00(); 
BGl_setzd2fderiveszd2zz__lalr_expandz00(); 
BGl_initializa7ezd2statesz75zz__lalr_expandz00(); 
{ 
obj_t BgL_thiszd2statezd2_697;
BgL_thiszd2statezd2_697 = BGl_firstzd2statezd2zz__lalr_globalz00; 
BgL_loopz00_698:
if(
PAIRP(BgL_thiszd2statezd2_697))
{ /* ./Lalr/lalr.scm 377 */
obj_t BgL_xz00_700;
BgL_xz00_700 = 
CAR(BgL_thiszd2statezd2_697); 
{ /* ./Lalr/lalr.scm 377 */
obj_t BgL_isz00_701;
{ /* ./Lalr/lalr.scm 378 */
obj_t BgL_auxz00_3968;
{ 
int BgL_auxz00_3969;
BgL_auxz00_3969 = 
(int)(((long)3)); 
BgL_auxz00_3968 = 
VECTOR_REF(BgL_xz00_700,BgL_auxz00_3969); } 
BgL_isz00_701 = 
BGl_closurez00zz__lalr_expandz00(BgL_auxz00_3968); } 
{ /* ./Lalr/lalr.scm 378 */

BGl_savezd2reductionszd2zz__lalr_expandz00(BgL_xz00_700, BgL_isz00_701); 
BGl_newzd2itemsetszd2zz__lalr_expandz00(BgL_isz00_701); 
BGl_appendzd2stateszd2zz__lalr_expandz00(); 
{ /* ./Lalr/lalr.scm 382 */
bool_t BgL_testz00_3976;
{ /* ./Lalr/lalr.scm 382 */
long BgL_auxz00_3977;
BgL_auxz00_3977 = 
(long)CINT(BGl_nshiftsz00zz__lalr_globalz00); 
BgL_testz00_3976 = 
(BgL_auxz00_3977>((long)0)); } 
if(BgL_testz00_3976)
{ /* ./Lalr/lalr.scm 382 */
BGl_savezd2shiftszd2zz__lalr_expandz00(BgL_xz00_700); }  else 
{ /* ./Lalr/lalr.scm 382 */BFALSE; } } 
{ 
obj_t BgL_thiszd2statezd2_3981;
BgL_thiszd2statezd2_3981 = 
CDR(BgL_thiszd2statezd2_697); 
BgL_thiszd2statezd2_697 = BgL_thiszd2statezd2_3981; 
goto BgL_loopz00_698;} } } }  else 
{ /* ./Lalr/lalr.scm 376 */
return ((bool_t)0);} } } 
}



/* new-itemsets */
obj_t BGl_newzd2itemsetszd2zz__lalr_expandz00(obj_t BgL_itemsetz00_7)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 390 */
BGl_shiftzd2symbolzd2zz__lalr_globalz00 = BNIL; 
{ 
long BgL_iz00_2139;
BgL_iz00_2139 = ((long)0); 
BgL_loopz00_2138:
{ /* ./Lalr/lalr.scm 393 */
bool_t BgL_testz00_3983;
{ /* ./Lalr/lalr.scm 393 */
long BgL_auxz00_3984;
BgL_auxz00_3984 = 
(long)CINT(BGl_nsymsz00zz__lalr_globalz00); 
BgL_testz00_3983 = 
(BgL_iz00_2139<BgL_auxz00_3984); } 
if(BgL_testz00_3983)
{ /* ./Lalr/lalr.scm 393 */
{ 
int BgL_auxz00_3987;
BgL_auxz00_3987 = 
(int)(BgL_iz00_2139); 
VECTOR_SET(BGl_kernelzd2endzd2zz__lalr_globalz00,BgL_auxz00_3987,BNIL); } 
{ 
long BgL_iz00_3990;
BgL_iz00_3990 = 
(BgL_iz00_2139+((long)1)); 
BgL_iz00_2139 = BgL_iz00_3990; 
goto BgL_loopz00_2138;} }  else 
{ /* ./Lalr/lalr.scm 393 */((bool_t)0); } } } 
{ 
obj_t BgL_ispz00_709;
BgL_ispz00_709 = BgL_itemsetz00_7; 
BgL_loopz00_710:
if(
PAIRP(BgL_ispz00_709))
{ /* ./Lalr/lalr.scm 401 */
obj_t BgL_iz00_712;
BgL_iz00_712 = 
CAR(BgL_ispz00_709); 
{ /* ./Lalr/lalr.scm 401 */
obj_t BgL_symz00_713;
{ 
int BgL_auxz00_3995;
BgL_auxz00_3995 = 
CINT(BgL_iz00_712); 
BgL_symz00_713 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_3995); } 
{ /* ./Lalr/lalr.scm 402 */

{ /* ./Lalr/lalr.scm 403 */
bool_t BgL_testz00_3998;
{ /* ./Lalr/lalr.scm 403 */
long BgL_auxz00_3999;
BgL_auxz00_3999 = 
(long)CINT(BgL_symz00_713); 
BgL_testz00_3998 = 
(BgL_auxz00_3999>=((long)0)); } 
if(BgL_testz00_3998)
{ /* ./Lalr/lalr.scm 403 */
BGl_shiftzd2symbolzd2zz__lalr_globalz00 = 
BGl_sinsertz00zz__lalr_utilz00(BgL_symz00_713, BGl_shiftzd2symbolzd2zz__lalr_globalz00); 
{ /* ./Lalr/lalr.scm 406 */
obj_t BgL_xz00_715;
{ 
int BgL_auxz00_4003;
BgL_auxz00_4003 = 
CINT(BgL_symz00_713); 
BgL_xz00_715 = 
VECTOR_REF(BGl_kernelzd2endzd2zz__lalr_globalz00,BgL_auxz00_4003); } 
if(
NULLP(BgL_xz00_715))
{ /* ./Lalr/lalr.scm 407 */
{ /* ./Lalr/lalr.scm 409 */
obj_t BgL_arg1688z00_717;
{ /* ./Lalr/lalr.scm 409 */
long BgL_arg1691z00_718;
{ /* ./Lalr/lalr.scm 409 */
long BgL_auxz00_4008;
BgL_auxz00_4008 = 
(long)CINT(BgL_iz00_712); 
BgL_arg1691z00_718 = 
(BgL_auxz00_4008+((long)1)); } 
{ /* ./Lalr/lalr.scm 409 */
obj_t BgL_auxz00_4011;
BgL_auxz00_4011 = 
BINT(BgL_arg1691z00_718); 
BgL_arg1688z00_717 = 
MAKE_PAIR(BgL_auxz00_4011, BgL_xz00_715); } } 
{ 
int BgL_auxz00_4014;
BgL_auxz00_4014 = 
CINT(BgL_symz00_713); 
VECTOR_SET(BGl_kernelzd2basezd2zz__lalr_globalz00,BgL_auxz00_4014,BgL_arg1688z00_717); } } 
{ 
obj_t BgL_auxz00_4019;int BgL_auxz00_4017;
{ 
int BgL_auxz00_4020;
BgL_auxz00_4020 = 
CINT(BgL_symz00_713); 
BgL_auxz00_4019 = 
VECTOR_REF(BGl_kernelzd2basezd2zz__lalr_globalz00,BgL_auxz00_4020); } 
BgL_auxz00_4017 = 
CINT(BgL_symz00_713); 
VECTOR_SET(BGl_kernelzd2endzd2zz__lalr_globalz00,BgL_auxz00_4017,BgL_auxz00_4019); } }  else 
{ /* ./Lalr/lalr.scm 407 */
{ /* ./Lalr/lalr.scm 412 */
obj_t BgL_arg1699z00_720;
{ /* ./Lalr/lalr.scm 412 */
long BgL_arg1702z00_721;
{ /* ./Lalr/lalr.scm 412 */
long BgL_auxz00_4024;
BgL_auxz00_4024 = 
(long)CINT(BgL_iz00_712); 
BgL_arg1702z00_721 = 
(BgL_auxz00_4024+((long)1)); } 
{ /* ./Lalr/lalr.scm 412 */
obj_t BgL_list1704z00_722;
{ /* ./Lalr/lalr.scm 412 */
obj_t BgL_auxz00_4027;
BgL_auxz00_4027 = 
BINT(BgL_arg1702z00_721); 
BgL_list1704z00_722 = 
MAKE_PAIR(BgL_auxz00_4027, BNIL); } 
BgL_arg1699z00_720 = BgL_list1704z00_722; } } 
SET_CDR(BgL_xz00_715, BgL_arg1699z00_720); } 
{ 
obj_t BgL_auxz00_4033;int BgL_auxz00_4031;
BgL_auxz00_4033 = 
CDR(BgL_xz00_715); 
BgL_auxz00_4031 = 
CINT(BgL_symz00_713); 
VECTOR_SET(BGl_kernelzd2endzd2zz__lalr_globalz00,BgL_auxz00_4031,BgL_auxz00_4033); } } } }  else 
{ /* ./Lalr/lalr.scm 403 */BFALSE; } } 
{ 
obj_t BgL_ispz00_4036;
BgL_ispz00_4036 = 
CDR(BgL_ispz00_709); 
BgL_ispz00_709 = BgL_ispz00_4036; 
goto BgL_loopz00_710;} } } }  else 
{ /* ./Lalr/lalr.scm 400 */((bool_t)0); } } 
{ /* ./Lalr/lalr.scm 416 */
long BgL_auxz00_4038;
BgL_auxz00_4038 = 
bgl_list_length(BGl_shiftzd2symbolzd2zz__lalr_globalz00); 
return ( 
BGl_nshiftsz00zz__lalr_globalz00 = 
BINT(BgL_auxz00_4038), BUNSPEC) ;} } 
}



/* get-state */
obj_t BGl_getzd2statezd2zz__lalr_expandz00(obj_t BgL_symz00_8)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 420 */
{ /* ./Lalr/lalr.scm 421 */
obj_t BgL_ispz00_725;
{ 
int BgL_auxz00_4041;
BgL_auxz00_4041 = 
CINT(BgL_symz00_8); 
BgL_ispz00_725 = 
VECTOR_REF(BGl_kernelzd2basezd2zz__lalr_globalz00,BgL_auxz00_4041); } 
{ /* ./Lalr/lalr.scm 421 */
long BgL_nz00_726;
BgL_nz00_726 = 
bgl_list_length(BgL_ispz00_725); 
{ /* ./Lalr/lalr.scm 422 */
long BgL_keyz00_727;
{ 
obj_t BgL_isp1z00_2203;long BgL_kz00_2204;
BgL_isp1z00_2203 = BgL_ispz00_725; 
BgL_kz00_2204 = ((long)0); 
BgL_loopz00_2202:
if(
NULLP(BgL_isp1z00_2203))
{ /* ./Lalr/lalr.scm 423 */
BgL_keyz00_727 = 
BGl_moduloz00zz__r4_numbers_6_5_fixnumz00(BgL_kz00_2204, 
(long)CINT(BGl_STATEzd2TABLEzd2SIZEz00zz__lalr_globalz00)); }  else 
{ 
long BgL_kz00_4051;obj_t BgL_isp1z00_4049;
BgL_isp1z00_4049 = 
CDR(BgL_isp1z00_2203); 
{ /* ./Lalr/lalr.scm 423 */
long BgL_auxz00_4052;
{ /* ./Lalr/lalr.scm 423 */
obj_t BgL_auxz00_4053;
BgL_auxz00_4053 = 
CAR(BgL_isp1z00_2203); 
BgL_auxz00_4052 = 
(long)CINT(BgL_auxz00_4053); } 
BgL_kz00_4051 = 
(BgL_kz00_2204+BgL_auxz00_4052); } 
BgL_kz00_2204 = BgL_kz00_4051; 
BgL_isp1z00_2203 = BgL_isp1z00_4049; 
goto BgL_loopz00_2202;} } 
{ /* ./Lalr/lalr.scm 423 */
obj_t BgL_spz00_728;
{ 
int BgL_auxz00_4057;
BgL_auxz00_4057 = 
(int)(BgL_keyz00_727); 
BgL_spz00_728 = 
VECTOR_REF(BGl_statezd2tablezd2zz__lalr_globalz00,BgL_auxz00_4057); } 
{ /* ./Lalr/lalr.scm 427 */

if(
NULLP(BgL_spz00_728))
{ /* ./Lalr/lalr.scm 429 */
obj_t BgL_xz00_730;
BgL_xz00_730 = 
BGl_newzd2statezd2zz__lalr_expandz00(BgL_symz00_8); 
{ /* ./Lalr/lalr.scm 430 */
obj_t BgL_arg1725z00_731;
{ /* ./Lalr/lalr.scm 430 */
obj_t BgL_list1728z00_732;
BgL_list1728z00_732 = 
MAKE_PAIR(BgL_xz00_730, BNIL); 
BgL_arg1725z00_731 = BgL_list1728z00_732; } 
{ 
int BgL_auxz00_4064;
BgL_auxz00_4064 = 
(int)(BgL_keyz00_727); 
VECTOR_SET(BGl_statezd2tablezd2zz__lalr_globalz00,BgL_auxz00_4064,BgL_arg1725z00_731); } } 
{ 
int BgL_auxz00_4067;
BgL_auxz00_4067 = 
(int)(((long)0)); 
return 
VECTOR_REF(BgL_xz00_730,BgL_auxz00_4067);} }  else 
{ 
obj_t BgL_sp1z00_733;
BgL_sp1z00_733 = BgL_spz00_728; 
BgL_loopz00_734:
{ /* ./Lalr/lalr.scm 433 */
bool_t BgL_test1733z00_735;
{ /* ./Lalr/lalr.scm 433 */
bool_t BgL_testz00_4070;
{ /* ./Lalr/lalr.scm 433 */
obj_t BgL_auxz00_4071;
{ 
int BgL_auxz00_4075;obj_t BgL_auxz00_4073;
BgL_auxz00_4075 = 
(int)(((long)2)); 
BgL_auxz00_4073 = 
CAR(BgL_sp1z00_733); 
BgL_auxz00_4071 = 
VECTOR_REF(BgL_auxz00_4073,BgL_auxz00_4075); } 
BgL_testz00_4070 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_nz00_726), BgL_auxz00_4071); } 
if(BgL_testz00_4070)
{ /* ./Lalr/lalr.scm 434 */
obj_t BgL_arg1758z00_748;
{ 
int BgL_auxz00_4081;obj_t BgL_auxz00_4079;
BgL_auxz00_4081 = 
(int)(((long)3)); 
BgL_auxz00_4079 = 
CAR(BgL_sp1z00_733); 
BgL_arg1758z00_748 = 
VECTOR_REF(BgL_auxz00_4079,BgL_auxz00_4081); } 
{ 
obj_t BgL_i1z00_2255;obj_t BgL_tz00_2256;
BgL_i1z00_2255 = BgL_ispz00_725; 
BgL_tz00_2256 = BgL_arg1758z00_748; 
BgL_loop2z00_2254:
{ /* ./Lalr/lalr.scm 434 */
bool_t BgL_testz00_4084;
if(
PAIRP(BgL_i1z00_2255))
{ /* ./Lalr/lalr.scm 434 */
BgL_testz00_4084 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
CAR(BgL_i1z00_2255), 
CAR(BgL_tz00_2256))
; }  else 
{ /* ./Lalr/lalr.scm 434 */
BgL_testz00_4084 = ((bool_t)0)
; } 
if(BgL_testz00_4084)
{ 
obj_t BgL_tz00_4092;obj_t BgL_i1z00_4090;
BgL_i1z00_4090 = 
CDR(BgL_i1z00_2255); 
BgL_tz00_4092 = 
CDR(BgL_tz00_2256); 
BgL_tz00_2256 = BgL_tz00_4092; 
BgL_i1z00_2255 = BgL_i1z00_4090; 
goto BgL_loop2z00_2254;}  else 
{ /* ./Lalr/lalr.scm 434 */
BgL_test1733z00_735 = 
NULLP(BgL_i1z00_2255); } } } }  else 
{ /* ./Lalr/lalr.scm 433 */
BgL_test1733z00_735 = ((bool_t)0); } } 
if(BgL_test1733z00_735)
{ 
int BgL_auxz00_4098;obj_t BgL_auxz00_4096;
BgL_auxz00_4098 = 
(int)(((long)0)); 
BgL_auxz00_4096 = 
CAR(BgL_sp1z00_733); 
return 
VECTOR_REF(BgL_auxz00_4096,BgL_auxz00_4098);}  else 
{ /* ./Lalr/lalr.scm 441 */
bool_t BgL_testz00_4101;
{ /* ./Lalr/lalr.scm 441 */
obj_t BgL_auxz00_4102;
BgL_auxz00_4102 = 
CDR(BgL_sp1z00_733); 
BgL_testz00_4101 = 
NULLP(BgL_auxz00_4102); } 
if(BgL_testz00_4101)
{ /* ./Lalr/lalr.scm 442 */
obj_t BgL_xz00_739;
BgL_xz00_739 = 
BGl_newzd2statezd2zz__lalr_expandz00(BgL_symz00_8); 
{ /* ./Lalr/lalr.scm 443 */
obj_t BgL_arg1741z00_740;
{ /* ./Lalr/lalr.scm 443 */
obj_t BgL_list1744z00_741;
BgL_list1744z00_741 = 
MAKE_PAIR(BgL_xz00_739, BNIL); 
BgL_arg1741z00_740 = BgL_list1744z00_741; } 
SET_CDR(BgL_sp1z00_733, BgL_arg1741z00_740); } 
{ 
int BgL_auxz00_4108;
BgL_auxz00_4108 = 
(int)(((long)0)); 
return 
VECTOR_REF(BgL_xz00_739,BgL_auxz00_4108);} }  else 
{ 
obj_t BgL_sp1z00_4111;
BgL_sp1z00_4111 = 
CDR(BgL_sp1z00_733); 
BgL_sp1z00_733 = BgL_sp1z00_4111; 
goto BgL_loopz00_734;} } } } } } } } } } 
}



/* new-state */
obj_t BGl_newzd2statezd2zz__lalr_expandz00(obj_t BgL_symz00_9)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 448 */
{ /* ./Lalr/lalr.scm 449 */
obj_t BgL_ispz00_767;
{ 
int BgL_auxz00_4113;
BgL_auxz00_4113 = 
CINT(BgL_symz00_9); 
BgL_ispz00_767 = 
VECTOR_REF(BGl_kernelzd2basezd2zz__lalr_globalz00,BgL_auxz00_4113); } 
{ /* ./Lalr/lalr.scm 449 */
long BgL_nz00_768;
BgL_nz00_768 = 
bgl_list_length(BgL_ispz00_767); 
{ /* ./Lalr/lalr.scm 450 */
obj_t BgL_pz00_769;
{ /* ./Lalr/lalr.scm 451 */
obj_t BgL_auxz00_4119;int BgL_auxz00_4117;
BgL_auxz00_4119 = 
BINT(((long)0)); 
BgL_auxz00_4117 = 
(int)(((long)4)); 
BgL_pz00_769 = 
make_vector(BgL_auxz00_4117, BgL_auxz00_4119); } 
{ /* ./Lalr/lalr.scm 451 */

{ 
int BgL_auxz00_4122;
BgL_auxz00_4122 = 
(int)(((long)0)); 
VECTOR_SET(BgL_pz00_769,BgL_auxz00_4122,BGl_nstatesz00zz__lalr_globalz00); } 
{ 
int BgL_auxz00_4125;
BgL_auxz00_4125 = 
(int)(((long)1)); 
VECTOR_SET(BgL_pz00_769,BgL_auxz00_4125,BgL_symz00_9); } 
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_symz00_9, BGl_nvarsz00zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 454 */
BGl_finalzd2statezd2zz__lalr_globalz00 = BGl_nstatesz00zz__lalr_globalz00; }  else 
{ /* ./Lalr/lalr.scm 454 */BFALSE; } 
{ 
obj_t BgL_auxz00_4132;int BgL_auxz00_4130;
BgL_auxz00_4132 = 
BINT(BgL_nz00_768); 
BgL_auxz00_4130 = 
(int)(((long)2)); 
VECTOR_SET(BgL_pz00_769,BgL_auxz00_4130,BgL_auxz00_4132); } 
{ 
int BgL_auxz00_4135;
BgL_auxz00_4135 = 
(int)(((long)3)); 
VECTOR_SET(BgL_pz00_769,BgL_auxz00_4135,BgL_ispz00_767); } 
{ /* ./Lalr/lalr.scm 457 */
obj_t BgL_arg1813z00_771;
{ /* ./Lalr/lalr.scm 457 */
obj_t BgL_list1816z00_772;
BgL_list1816z00_772 = 
MAKE_PAIR(BgL_pz00_769, BNIL); 
BgL_arg1813z00_771 = BgL_list1816z00_772; } 
SET_CDR(BGl_lastzd2statezd2zz__lalr_globalz00, BgL_arg1813z00_771); } 
BGl_lastzd2statezd2zz__lalr_globalz00 = 
CDR(BGl_lastzd2statezd2zz__lalr_globalz00); 
{ /* ./Lalr/lalr.scm 459 */
long BgL_za71za7_2332;
BgL_za71za7_2332 = 
(long)CINT(BGl_nstatesz00zz__lalr_globalz00); 
{ /* ./Lalr/lalr.scm 459 */
long BgL_auxz00_4142;
BgL_auxz00_4142 = 
(BgL_za71za7_2332+((long)1)); 
BGl_nstatesz00zz__lalr_globalz00 = 
BINT(BgL_auxz00_4142); } } 
return BgL_pz00_769;} } } } } 
}



/* append-states */
obj_t BGl_appendzd2stateszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 465 */
return ( 
BGl_shiftzd2setzd2zz__lalr_globalz00 = 
BGl_loopz72z72z72z72zz__lalr_expandz00(BGl_shiftzd2symbolzd2zz__lalr_globalz00), BUNSPEC) ;} 
}



/* loop''' */
obj_t BGl_loopz72z72z72z72zz__lalr_expandz00(obj_t BgL_lz00_773)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 467 */
if(
NULLP(BgL_lz00_773))
{ /* ./Lalr/lalr.scm 468 */
return BNIL;}  else 
{ /* ./Lalr/lalr.scm 470 */
obj_t BgL_auxz00_4151;obj_t BgL_auxz00_4148;
BgL_auxz00_4151 = 
BGl_loopz72z72z72z72zz__lalr_expandz00(
CDR(BgL_lz00_773)); 
BgL_auxz00_4148 = 
BGl_getzd2statezd2zz__lalr_expandz00(
CAR(BgL_lz00_773)); 
return 
MAKE_PAIR(BgL_auxz00_4148, BgL_auxz00_4151);} } 
}



/* save-shifts */
obj_t BGl_savezd2shiftszd2zz__lalr_expandz00(obj_t BgL_corez00_10)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 474 */
{ /* ./Lalr/lalr.scm 475 */
obj_t BgL_pz00_780;
{ /* ./Lalr/lalr.scm 475 */
obj_t BgL_auxz00_4157;int BgL_auxz00_4155;
BgL_auxz00_4157 = 
BINT(((long)0)); 
BgL_auxz00_4155 = 
(int)(((long)3)); 
BgL_pz00_780 = 
make_vector(BgL_auxz00_4155, BgL_auxz00_4157); } 
{ 
obj_t BgL_auxz00_4162;int BgL_auxz00_4160;
{ 
int BgL_auxz00_4163;
BgL_auxz00_4163 = 
(int)(((long)0)); 
BgL_auxz00_4162 = 
VECTOR_REF(BgL_corez00_10,BgL_auxz00_4163); } 
BgL_auxz00_4160 = 
(int)(((long)0)); 
VECTOR_SET(BgL_pz00_780,BgL_auxz00_4160,BgL_auxz00_4162); } 
{ 
int BgL_auxz00_4167;
BgL_auxz00_4167 = 
(int)(((long)1)); 
VECTOR_SET(BgL_pz00_780,BgL_auxz00_4167,BGl_nshiftsz00zz__lalr_globalz00); } 
{ 
int BgL_auxz00_4170;
BgL_auxz00_4170 = 
(int)(((long)2)); 
VECTOR_SET(BgL_pz00_780,BgL_auxz00_4170,BGl_shiftzd2setzd2zz__lalr_globalz00); } 
if(
CBOOL(BGl_lastzd2shiftzd2zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 479 */
{ /* ./Lalr/lalr.scm 481 */
obj_t BgL_arg1848z00_783;
{ /* ./Lalr/lalr.scm 481 */
obj_t BgL_list1851z00_784;
BgL_list1851z00_784 = 
MAKE_PAIR(BgL_pz00_780, BNIL); 
BgL_arg1848z00_783 = BgL_list1851z00_784; } 
SET_CDR(BGl_lastzd2shiftzd2zz__lalr_globalz00, BgL_arg1848z00_783); } 
return ( 
BGl_lastzd2shiftzd2zz__lalr_globalz00 = 
CDR(BGl_lastzd2shiftzd2zz__lalr_globalz00), BUNSPEC) ;}  else 
{ /* ./Lalr/lalr.scm 479 */
{ /* ./Lalr/lalr.scm 484 */
obj_t BgL_list1855z00_785;
BgL_list1855z00_785 = 
MAKE_PAIR(BgL_pz00_780, BNIL); 
BGl_firstzd2shiftzd2zz__lalr_globalz00 = BgL_list1855z00_785; } 
return ( 
BGl_lastzd2shiftzd2zz__lalr_globalz00 = BGl_firstzd2shiftzd2zz__lalr_globalz00, BUNSPEC) ;} } } 
}



/* save-reductions */
obj_t BGl_savezd2reductionszd2zz__lalr_expandz00(obj_t BgL_corez00_11, obj_t BgL_itemsetz00_12)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 487 */
{ /* ./Lalr/lalr.scm 488 */
obj_t BgL_rsz00_786;
BgL_rsz00_786 = 
BGl_loopz72z72z00zz__lalr_expandz00(BgL_itemsetz00_12); 
if(
PAIRP(BgL_rsz00_786))
{ /* ./Lalr/lalr.scm 496 */
obj_t BgL_pz00_788;
{ /* ./Lalr/lalr.scm 496 */
obj_t BgL_auxz00_4184;int BgL_auxz00_4182;
BgL_auxz00_4184 = 
BINT(((long)0)); 
BgL_auxz00_4182 = 
(int)(((long)3)); 
BgL_pz00_788 = 
make_vector(BgL_auxz00_4182, BgL_auxz00_4184); } 
{ 
obj_t BgL_auxz00_4189;int BgL_auxz00_4187;
{ 
int BgL_auxz00_4190;
BgL_auxz00_4190 = 
(int)(((long)0)); 
BgL_auxz00_4189 = 
VECTOR_REF(BgL_corez00_11,BgL_auxz00_4190); } 
BgL_auxz00_4187 = 
(int)(((long)0)); 
VECTOR_SET(BgL_pz00_788,BgL_auxz00_4187,BgL_auxz00_4189); } 
{ /* ./Lalr/lalr.scm 498 */
long BgL_arg1867z00_792;
BgL_arg1867z00_792 = 
bgl_list_length(BgL_rsz00_786); 
{ 
obj_t BgL_auxz00_4197;int BgL_auxz00_4195;
BgL_auxz00_4197 = 
BINT(BgL_arg1867z00_792); 
BgL_auxz00_4195 = 
(int)(((long)1)); 
VECTOR_SET(BgL_pz00_788,BgL_auxz00_4195,BgL_auxz00_4197); } } 
{ 
int BgL_auxz00_4200;
BgL_auxz00_4200 = 
(int)(((long)2)); 
VECTOR_SET(BgL_pz00_788,BgL_auxz00_4200,BgL_rsz00_786); } 
if(
CBOOL(BGl_lastzd2reductionzd2zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 500 */
{ /* ./Lalr/lalr.scm 502 */
obj_t BgL_arg1872z00_793;
{ /* ./Lalr/lalr.scm 502 */
obj_t BgL_list1875z00_794;
BgL_list1875z00_794 = 
MAKE_PAIR(BgL_pz00_788, BNIL); 
BgL_arg1872z00_793 = BgL_list1875z00_794; } 
SET_CDR(BGl_lastzd2reductionzd2zz__lalr_globalz00, BgL_arg1872z00_793); } 
return ( 
BGl_lastzd2reductionzd2zz__lalr_globalz00 = 
CDR(BGl_lastzd2reductionzd2zz__lalr_globalz00), BUNSPEC) ;}  else 
{ /* ./Lalr/lalr.scm 500 */
{ /* ./Lalr/lalr.scm 505 */
obj_t BgL_list1879z00_795;
BgL_list1879z00_795 = 
MAKE_PAIR(BgL_pz00_788, BNIL); 
BGl_firstzd2reductionzd2zz__lalr_globalz00 = BgL_list1879z00_795; } 
return ( 
BGl_lastzd2reductionzd2zz__lalr_globalz00 = BGl_firstzd2reductionzd2zz__lalr_globalz00, BUNSPEC) ;} }  else 
{ /* ./Lalr/lalr.scm 495 */
return BFALSE;} } } 
}



/* loop'' */
obj_t BGl_loopz72z72z00zz__lalr_expandz00(obj_t BgL_lz00_796)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 488 */
BGl_loopz72z72z00zz__lalr_expandz00:
if(
NULLP(BgL_lz00_796))
{ /* ./Lalr/lalr.scm 489 */
return BNIL;}  else 
{ /* ./Lalr/lalr.scm 491 */
obj_t BgL_itemz00_799;
{ /* ./Lalr/lalr.scm 491 */
obj_t BgL_arg1901z00_805;
BgL_arg1901z00_805 = 
CAR(BgL_lz00_796); 
{ 
int BgL_auxz00_4212;
BgL_auxz00_4212 = 
CINT(BgL_arg1901z00_805); 
BgL_itemz00_799 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_4212); } } 
{ /* ./Lalr/lalr.scm 492 */
bool_t BgL_testz00_4215;
{ /* ./Lalr/lalr.scm 492 */
long BgL_auxz00_4216;
BgL_auxz00_4216 = 
(long)CINT(BgL_itemz00_799); 
BgL_testz00_4215 = 
(BgL_auxz00_4216<((long)0)); } 
if(BgL_testz00_4215)
{ /* ./Lalr/lalr.scm 493 */
long BgL_arg1887z00_801;obj_t BgL_arg1888z00_802;
{ /* ./Lalr/lalr.scm 493 */
long BgL_auxz00_4219;
BgL_auxz00_4219 = 
(long)CINT(BgL_itemz00_799); 
BgL_arg1887z00_801 = 
NEG(BgL_auxz00_4219); } 
BgL_arg1888z00_802 = 
BGl_loopz72z72z00zz__lalr_expandz00(
CDR(BgL_lz00_796)); 
{ /* ./Lalr/lalr.scm 493 */
obj_t BgL_auxz00_4224;
BgL_auxz00_4224 = 
BINT(BgL_arg1887z00_801); 
return 
MAKE_PAIR(BgL_auxz00_4224, BgL_arg1888z00_802);} }  else 
{ 
obj_t BgL_lz00_4227;
BgL_lz00_4227 = 
CDR(BgL_lz00_796); 
BgL_lz00_796 = BgL_lz00_4227; 
goto BGl_loopz72z72z00zz__lalr_expandz00;} } } } 
}



/* lalr */
bool_t BGl_lalrz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 511 */
{ /* ./Lalr/lalr.scm 512 */
long BgL_arg1907z00_807;
{ /* ./Lalr/lalr.scm 512 */
long BgL_auxz00_4229;
BgL_auxz00_4229 = 
(long)CINT(BGl_ntermsz00zz__lalr_globalz00); 
BgL_arg1907z00_807 = 
(BgL_auxz00_4229/((long)28)); } 
{ /* ./Lalr/lalr.scm 512 */
long BgL_auxz00_4232;
BgL_auxz00_4232 = 
(((long)1)+BgL_arg1907z00_807); 
BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00 = 
BINT(BgL_auxz00_4232); } } 
BGl_setzd2accessingzd2symbolz00zz__lalr_expandz00(); 
BGl_setzd2shiftzd2tablez00zz__lalr_expandz00(); 
BGl_setzd2reductionzd2tablez00zz__lalr_expandz00(); 
BGl_setzd2maxzd2rhsz00zz__lalr_expandz00(); 
BGl_initializa7ezd2LAz75zz__lalr_expandz00(); 
BGl_setzd2gotozd2mapz00zz__lalr_expandz00(); 
BGl_initializa7ezd2Fz75zz__lalr_expandz00(); 
BGl_buildzd2relationszd2zz__lalr_expandz00(); 
BGl_digraphz00zz__lalr_expandz00(BGl_includesz00zz__lalr_globalz00); 
return 
BGl_computezd2lookaheadszd2zz__lalr_expandz00();} 
}



/* set-accessing-symbol */
bool_t BGl_setzd2accessingzd2symbolz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 524 */
{ /* ./Lalr/lalr.scm 525 */
int BgL_auxz00_4245;
BgL_auxz00_4245 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BGl_acceszd2symbolzd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4245, BFALSE); } 
{ 
obj_t BgL_lz00_808;
BgL_lz00_808 = BGl_firstzd2statezd2zz__lalr_globalz00; 
BgL_loopz00_809:
if(
PAIRP(BgL_lz00_808))
{ /* ./Lalr/lalr.scm 528 */
obj_t BgL_xz00_811;
BgL_xz00_811 = 
CAR(BgL_lz00_808); 
{ /* ./Lalr/lalr.scm 529 */
obj_t BgL_arg1924z00_812;obj_t BgL_arg1925z00_813;
{ 
int BgL_auxz00_4251;
BgL_auxz00_4251 = 
(int)(((long)0)); 
BgL_arg1924z00_812 = 
VECTOR_REF(BgL_xz00_811,BgL_auxz00_4251); } 
{ 
int BgL_auxz00_4254;
BgL_auxz00_4254 = 
(int)(((long)1)); 
BgL_arg1925z00_813 = 
VECTOR_REF(BgL_xz00_811,BgL_auxz00_4254); } 
{ 
int BgL_auxz00_4257;
BgL_auxz00_4257 = 
CINT(BgL_arg1924z00_812); 
VECTOR_SET(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4257,BgL_arg1925z00_813); } } 
{ 
obj_t BgL_lz00_4260;
BgL_lz00_4260 = 
CDR(BgL_lz00_808); 
BgL_lz00_808 = BgL_lz00_4260; 
goto BgL_loopz00_809;} }  else 
{ /* ./Lalr/lalr.scm 527 */
return ((bool_t)0);} } } 
}



/* set-shift-table */
bool_t BGl_setzd2shiftzd2tablez00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 532 */
{ /* ./Lalr/lalr.scm 533 */
int BgL_auxz00_4262;
BgL_auxz00_4262 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BGl_shiftzd2tablezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4262, BFALSE); } 
{ 
obj_t BgL_lz00_815;
BgL_lz00_815 = BGl_firstzd2shiftzd2zz__lalr_globalz00; 
BgL_loopz00_816:
if(
PAIRP(BgL_lz00_815))
{ /* ./Lalr/lalr.scm 536 */
obj_t BgL_xz00_818;
BgL_xz00_818 = 
CAR(BgL_lz00_815); 
{ /* ./Lalr/lalr.scm 537 */
obj_t BgL_arg1939z00_819;
{ 
int BgL_auxz00_4268;
BgL_auxz00_4268 = 
(int)(((long)0)); 
BgL_arg1939z00_819 = 
VECTOR_REF(BgL_xz00_818,BgL_auxz00_4268); } 
{ 
int BgL_auxz00_4271;
BgL_auxz00_4271 = 
CINT(BgL_arg1939z00_819); 
VECTOR_SET(BGl_shiftzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4271,BgL_xz00_818); } } 
{ 
obj_t BgL_lz00_4274;
BgL_lz00_4274 = 
CDR(BgL_lz00_815); 
BgL_lz00_815 = BgL_lz00_4274; 
goto BgL_loopz00_816;} }  else 
{ /* ./Lalr/lalr.scm 535 */
return ((bool_t)0);} } } 
}



/* set-reduction-table */
bool_t BGl_setzd2reductionzd2tablez00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 540 */
{ /* ./Lalr/lalr.scm 541 */
int BgL_auxz00_4276;
BgL_auxz00_4276 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BGl_reductionzd2tablezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4276, BFALSE); } 
{ 
obj_t BgL_lz00_821;
BgL_lz00_821 = BGl_firstzd2reductionzd2zz__lalr_globalz00; 
BgL_loopz00_822:
if(
PAIRP(BgL_lz00_821))
{ /* ./Lalr/lalr.scm 544 */
obj_t BgL_xz00_824;
BgL_xz00_824 = 
CAR(BgL_lz00_821); 
{ /* ./Lalr/lalr.scm 545 */
obj_t BgL_arg1952z00_825;
{ 
int BgL_auxz00_4282;
BgL_auxz00_4282 = 
(int)(((long)0)); 
BgL_arg1952z00_825 = 
VECTOR_REF(BgL_xz00_824,BgL_auxz00_4282); } 
{ 
int BgL_auxz00_4285;
BgL_auxz00_4285 = 
CINT(BgL_arg1952z00_825); 
VECTOR_SET(BGl_reductionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4285,BgL_xz00_824); } } 
{ 
obj_t BgL_lz00_4288;
BgL_lz00_4288 = 
CDR(BgL_lz00_821); 
BgL_lz00_821 = BgL_lz00_4288; 
goto BgL_loopz00_822;} }  else 
{ /* ./Lalr/lalr.scm 543 */
return ((bool_t)0);} } } 
}



/* set-max-rhs */
obj_t BGl_setzd2maxzd2rhsz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 548 */
{ 
long BgL_pz00_827;obj_t BgL_curmaxz00_828;long BgL_lengthz00_829;
BgL_pz00_827 = ((long)0); 
BgL_curmaxz00_828 = 
BINT(((long)0)); 
BgL_lengthz00_829 = ((long)0); 
BgL_loopz00_830:
{ /* ./Lalr/lalr.scm 550 */
obj_t BgL_xz00_831;
{ 
int BgL_auxz00_4290;
BgL_auxz00_4290 = 
(int)(BgL_pz00_827); 
BgL_xz00_831 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_4290); } 
if(
CBOOL(BgL_xz00_831))
{ /* ./Lalr/lalr.scm 552 */
bool_t BgL_testz00_4295;
{ /* ./Lalr/lalr.scm 552 */
long BgL_auxz00_4296;
BgL_auxz00_4296 = 
(long)CINT(BgL_xz00_831); 
BgL_testz00_4295 = 
(BgL_auxz00_4296>=((long)0)); } 
if(BgL_testz00_4295)
{ 
long BgL_lengthz00_4301;long BgL_pz00_4299;
BgL_pz00_4299 = 
(BgL_pz00_827+((long)1)); 
BgL_lengthz00_4301 = 
(BgL_lengthz00_829+((long)1)); 
BgL_lengthz00_829 = BgL_lengthz00_4301; 
BgL_pz00_827 = BgL_pz00_4299; 
goto BgL_loopz00_830;}  else 
{ /* ./Lalr/lalr.scm 554 */
long BgL_arg1970z00_835;obj_t BgL_arg1971z00_836;
BgL_arg1970z00_835 = 
(BgL_pz00_827+((long)1)); 
{ /* ./Lalr/lalr.scm 554 */
obj_t BgL_list1977z00_838;
{ /* ./Lalr/lalr.scm 554 */
obj_t BgL_auxz00_4304;
BgL_auxz00_4304 = 
BINT(BgL_lengthz00_829); 
BgL_list1977z00_838 = 
MAKE_PAIR(BgL_auxz00_4304, BNIL); } 
BgL_arg1971z00_836 = 
BGl_maxz00zz__r4_numbers_6_5z00(BgL_curmaxz00_828, BgL_list1977z00_838); } 
{ 
long BgL_lengthz00_4310;obj_t BgL_curmaxz00_4309;long BgL_pz00_4308;
BgL_pz00_4308 = BgL_arg1970z00_835; 
BgL_curmaxz00_4309 = BgL_arg1971z00_836; 
BgL_lengthz00_4310 = ((long)0); 
BgL_lengthz00_829 = BgL_lengthz00_4310; 
BgL_curmaxz00_828 = BgL_curmaxz00_4309; 
BgL_pz00_827 = BgL_pz00_4308; 
goto BgL_loopz00_830;} } }  else 
{ /* ./Lalr/lalr.scm 551 */
return ( 
BGl_maxrhsz00zz__lalr_globalz00 = BgL_curmaxz00_828, BUNSPEC) ;} } } } 
}



/* initialize-LA */
bool_t BGl_initializa7ezd2LAz75zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 557 */
{ /* ./Lalr/lalr.scm 563 */
int BgL_auxz00_4312;
BgL_auxz00_4312 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BGl_consistentz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4312, BFALSE); } 
{ /* ./Lalr/lalr.scm 564 */
long BgL_arg1983z00_840;
{ /* ./Lalr/lalr.scm 564 */
long BgL_auxz00_4315;
BgL_auxz00_4315 = 
(long)CINT(BGl_nstatesz00zz__lalr_globalz00); 
BgL_arg1983z00_840 = 
(BgL_auxz00_4315+((long)1)); } 
{ /* ./Lalr/lalr.scm 564 */
int BgL_auxz00_4318;
BgL_auxz00_4318 = 
(int)(BgL_arg1983z00_840); 
BGl_lookaheadsz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4318, BFALSE); } } 
{ 
long BgL_countz00_841;long BgL_iz00_842;
BgL_countz00_841 = ((long)0); 
BgL_iz00_842 = ((long)0); 
BgL_loopz00_843:
{ /* ./Lalr/lalr.scm 567 */
bool_t BgL_testz00_4321;
{ /* ./Lalr/lalr.scm 567 */
long BgL_auxz00_4322;
BgL_auxz00_4322 = 
(long)CINT(BGl_nstatesz00zz__lalr_globalz00); 
BgL_testz00_4321 = 
(BgL_iz00_842<BgL_auxz00_4322); } 
if(BgL_testz00_4321)
{ /* ./Lalr/lalr.scm 567 */
{ 
obj_t BgL_auxz00_4327;int BgL_auxz00_4325;
BgL_auxz00_4327 = 
BINT(BgL_countz00_841); 
BgL_auxz00_4325 = 
(int)(BgL_iz00_842); 
VECTOR_SET(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_4325,BgL_auxz00_4327); } 
{ /* ./Lalr/lalr.scm 570 */
obj_t BgL_rpz00_845;obj_t BgL_spz00_846;
{ 
int BgL_auxz00_4330;
BgL_auxz00_4330 = 
(int)(BgL_iz00_842); 
BgL_rpz00_845 = 
VECTOR_REF(BGl_reductionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4330); } 
{ 
int BgL_auxz00_4333;
BgL_auxz00_4333 = 
(int)(BgL_iz00_842); 
BgL_spz00_846 = 
VECTOR_REF(BGl_shiftzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4333); } 
{ /* ./Lalr/lalr.scm 572 */
bool_t BgL_test1989z00_847;
if(
CBOOL(BgL_rpz00_845))
{ /* ./Lalr/lalr.scm 573 */
bool_t BgL__ortest_1048z00_852;
{ /* ./Lalr/lalr.scm 573 */
obj_t BgL_arg2018z00_858;
{ 
int BgL_auxz00_4338;
BgL_auxz00_4338 = 
(int)(((long)1)); 
BgL_arg2018z00_858 = 
VECTOR_REF(BgL_rpz00_845,BgL_auxz00_4338); } 
{ /* ./Lalr/lalr.scm 573 */
long BgL_auxz00_4341;
BgL_auxz00_4341 = 
(long)CINT(BgL_arg2018z00_858); 
BgL__ortest_1048z00_852 = 
(BgL_auxz00_4341>((long)1)); } } 
if(BgL__ortest_1048z00_852)
{ /* ./Lalr/lalr.scm 573 */
BgL_test1989z00_847 = BgL__ortest_1048z00_852; }  else 
{ /* ./Lalr/lalr.scm 573 */
if(
CBOOL(BgL_spz00_846))
{ /* ./Lalr/lalr.scm 575 */
bool_t BgL_test2004z00_854;
{ /* ./Lalr/lalr.scm 577 */
obj_t BgL_arg2006z00_855;
{ /* ./Lalr/lalr.scm 577 */
obj_t BgL_arg2010z00_856;
{ /* ./Lalr/lalr.scm 577 */
obj_t BgL_arg2014z00_857;
{ 
int BgL_auxz00_4347;
BgL_auxz00_4347 = 
(int)(((long)2)); 
BgL_arg2014z00_857 = 
VECTOR_REF(BgL_spz00_846,BgL_auxz00_4347); } 
{ 
obj_t BgL_lz00_2441;
BgL_lz00_2441 = BgL_arg2014z00_857; 
BgL_lastz00_2440:
{ /* ./Lalr/lalr.scm 577 */
bool_t BgL_testz00_4350;
{ /* ./Lalr/lalr.scm 577 */
obj_t BgL_auxz00_4351;
BgL_auxz00_4351 = 
CDR(BgL_lz00_2441); 
BgL_testz00_4350 = 
NULLP(BgL_auxz00_4351); } 
if(BgL_testz00_4350)
{ /* ./Lalr/lalr.scm 577 */
BgL_arg2010z00_856 = 
CAR(BgL_lz00_2441); }  else 
{ 
obj_t BgL_lz00_4355;
BgL_lz00_4355 = 
CDR(BgL_lz00_2441); 
BgL_lz00_2441 = BgL_lz00_4355; 
goto BgL_lastz00_2440;} } } } 
{ 
int BgL_auxz00_4357;
BgL_auxz00_4357 = 
CINT(BgL_arg2010z00_856); 
BgL_arg2006z00_855 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4357); } } 
{ /* ./Lalr/lalr.scm 576 */
long BgL_auxz00_4362;long BgL_auxz00_4360;
BgL_auxz00_4362 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4360 = 
(long)CINT(BgL_arg2006z00_855); 
BgL_test2004z00_854 = 
(BgL_auxz00_4360<BgL_auxz00_4362); } } 
if(BgL_test2004z00_854)
{ /* ./Lalr/lalr.scm 575 */
BgL_test1989z00_847 = ((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 575 */
BgL_test1989z00_847 = ((bool_t)1); } }  else 
{ /* ./Lalr/lalr.scm 574 */
BgL_test1989z00_847 = ((bool_t)0); } } }  else 
{ /* ./Lalr/lalr.scm 572 */
BgL_test1989z00_847 = ((bool_t)0); } 
if(BgL_test1989z00_847)
{ /* ./Lalr/lalr.scm 579 */
long BgL_arg1991z00_848;long BgL_arg1992z00_849;
{ /* ./Lalr/lalr.scm 579 */
obj_t BgL_arg1995z00_850;
{ 
int BgL_auxz00_4367;
BgL_auxz00_4367 = 
(int)(((long)1)); 
BgL_arg1995z00_850 = 
VECTOR_REF(BgL_rpz00_845,BgL_auxz00_4367); } 
{ /* ./Lalr/lalr.scm 579 */
long BgL_auxz00_4370;
BgL_auxz00_4370 = 
(long)CINT(BgL_arg1995z00_850); 
BgL_arg1991z00_848 = 
(BgL_countz00_841+BgL_auxz00_4370); } } 
BgL_arg1992z00_849 = 
(BgL_iz00_842+((long)1)); 
{ 
long BgL_iz00_4375;long BgL_countz00_4374;
BgL_countz00_4374 = BgL_arg1991z00_848; 
BgL_iz00_4375 = BgL_arg1992z00_849; 
BgL_iz00_842 = BgL_iz00_4375; 
BgL_countz00_841 = BgL_countz00_4374; 
goto BgL_loopz00_843;} }  else 
{ /* ./Lalr/lalr.scm 572 */
{ 
int BgL_auxz00_4376;
BgL_auxz00_4376 = 
(int)(BgL_iz00_842); 
VECTOR_SET(BGl_consistentz00zz__lalr_globalz00,BgL_auxz00_4376,BTRUE); } 
{ 
long BgL_iz00_4379;
BgL_iz00_4379 = 
(BgL_iz00_842+((long)1)); 
BgL_iz00_842 = BgL_iz00_4379; 
goto BgL_loopz00_843;} } } } }  else 
{ /* ./Lalr/lalr.scm 567 */
{ 
obj_t BgL_auxz00_4383;int BgL_auxz00_4381;
BgL_auxz00_4383 = 
BINT(BgL_countz00_841); 
BgL_auxz00_4381 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
VECTOR_SET(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_4381,BgL_auxz00_4383); } 
{ /* ./Lalr/lalr.scm 586 */
obj_t BgL_cz00_860;
{ /* ./Lalr/lalr.scm 586 */
obj_t BgL_list2042z00_868;
{ /* ./Lalr/lalr.scm 586 */
obj_t BgL_auxz00_4386;
BgL_auxz00_4386 = 
BINT(((long)1)); 
BgL_list2042z00_868 = 
MAKE_PAIR(BgL_auxz00_4386, BNIL); } 
BgL_cz00_860 = 
BGl_maxz00zz__r4_numbers_6_5z00(
BINT(BgL_countz00_841), BgL_list2042z00_868); } 
{ /* ./Lalr/lalr.scm 587 */
int BgL_auxz00_4391;
BgL_auxz00_4391 = 
CINT(BgL_cz00_860); 
BGl_LAz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4391, BFALSE); } 
{ 
long BgL_jz00_862;
BgL_jz00_862 = ((long)0); 
BgL_zc3anonymousza32027ze3z83_863:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_jz00_862), BgL_cz00_860))
{ /* ./Lalr/lalr.scm 588 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 588 */
{ 
obj_t BgL_auxz00_4399;int BgL_auxz00_4397;
{ /* ./Lalr/lalr.scm 588 */
obj_t BgL_auxz00_4402;int BgL_auxz00_4400;
BgL_auxz00_4402 = 
BINT(((long)0)); 
BgL_auxz00_4400 = 
CINT(BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00); 
BgL_auxz00_4399 = 
make_vector(BgL_auxz00_4400, BgL_auxz00_4402); } 
BgL_auxz00_4397 = 
(int)(BgL_jz00_862); 
VECTOR_SET(BGl_LAz00zz__lalr_globalz00,BgL_auxz00_4397,BgL_auxz00_4399); } 
{ 
long BgL_jz00_4406;
BgL_jz00_4406 = 
(BgL_jz00_862+((long)1)); 
BgL_jz00_862 = BgL_jz00_4406; 
goto BgL_zc3anonymousza32027ze3z83_863;} } } 
{ /* ./Lalr/lalr.scm 589 */
obj_t BgL_auxz00_4410;int BgL_auxz00_4408;
BgL_auxz00_4410 = 
BINT(((long)-1)); 
BgL_auxz00_4408 = 
CINT(BgL_cz00_860); 
BGl_LArulenoz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4408, BgL_auxz00_4410); } 
{ /* ./Lalr/lalr.scm 590 */
int BgL_auxz00_4413;
BgL_auxz00_4413 = 
CINT(BgL_cz00_860); 
BGl_lookbackz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4413, BFALSE); } } 
{ 
long BgL_iz00_869;long BgL_npz00_870;
BgL_iz00_869 = ((long)0); 
BgL_npz00_870 = ((long)0); 
BgL_loopz00_871:
{ /* ./Lalr/lalr.scm 592 */
bool_t BgL_testz00_4416;
{ /* ./Lalr/lalr.scm 592 */
long BgL_auxz00_4417;
BgL_auxz00_4417 = 
(long)CINT(BGl_nstatesz00zz__lalr_globalz00); 
BgL_testz00_4416 = 
(BgL_iz00_869<BgL_auxz00_4417); } 
if(BgL_testz00_4416)
{ /* ./Lalr/lalr.scm 593 */
bool_t BgL_test2046z00_873;
{ /* ./Lalr/lalr.scm 593 */
obj_t BgL_vectorz00_2477;int BgL_kz00_2478;
BgL_vectorz00_2477 = BGl_consistentz00zz__lalr_globalz00; 
BgL_kz00_2478 = 
(int)(BgL_iz00_869); 
{ /* ./Lalr/lalr.scm 593 */
obj_t BgL_auxz00_4421;
BgL_auxz00_4421 = 
VECTOR_REF(BgL_vectorz00_2477,BgL_kz00_2478); 
BgL_test2046z00_873 = 
CBOOL(BgL_auxz00_4421); } } 
if(BgL_test2046z00_873)
{ 
long BgL_iz00_4425;
BgL_iz00_4425 = 
(BgL_iz00_869+((long)1)); 
BgL_iz00_869 = BgL_iz00_4425; 
goto BgL_loopz00_871;}  else 
{ /* ./Lalr/lalr.scm 595 */
obj_t BgL_rpz00_875;
{ 
int BgL_auxz00_4427;
BgL_auxz00_4427 = 
(int)(BgL_iz00_869); 
BgL_rpz00_875 = 
VECTOR_REF(BGl_reductionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4427); } 
if(
CBOOL(BgL_rpz00_875))
{ 
obj_t BgL_jz00_876;long BgL_np2z00_877;
{ 
int BgL_auxz00_4446;
BgL_auxz00_4446 = 
(int)(((long)2)); 
BgL_jz00_876 = 
VECTOR_REF(BgL_rpz00_875,BgL_auxz00_4446); } 
BgL_np2z00_877 = BgL_npz00_870; 
BgL_loop2z00_878:
if(
NULLP(BgL_jz00_876))
{ 
long BgL_npz00_4436;long BgL_iz00_4434;
BgL_iz00_4434 = 
(BgL_iz00_869+((long)1)); 
BgL_npz00_4436 = BgL_np2z00_877; 
BgL_npz00_870 = BgL_npz00_4436; 
BgL_iz00_869 = BgL_iz00_4434; 
goto BgL_loopz00_871;}  else 
{ /* ./Lalr/lalr.scm 598 */
{ 
obj_t BgL_auxz00_4439;int BgL_auxz00_4437;
BgL_auxz00_4439 = 
CAR(BgL_jz00_876); 
BgL_auxz00_4437 = 
(int)(BgL_np2z00_877); 
VECTOR_SET(BGl_LArulenoz00zz__lalr_globalz00,BgL_auxz00_4437,BgL_auxz00_4439); } 
{ 
long BgL_np2z00_4444;obj_t BgL_jz00_4442;
BgL_jz00_4442 = 
CDR(BgL_jz00_876); 
BgL_np2z00_4444 = 
(BgL_np2z00_877+((long)1)); 
BgL_np2z00_877 = BgL_np2z00_4444; 
BgL_jz00_876 = BgL_jz00_4442; 
goto BgL_loop2z00_878;} } }  else 
{ 
long BgL_iz00_4449;
BgL_iz00_4449 = 
(BgL_iz00_869+((long)1)); 
BgL_iz00_869 = BgL_iz00_4449; 
goto BgL_loopz00_871;} } }  else 
{ /* ./Lalr/lalr.scm 592 */
return ((bool_t)0);} } } } } } } 
}



/* set-goto-map */
bool_t BGl_setzd2gotozd2mapz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 606 */
{ /* ./Lalr/lalr.scm 607 */
long BgL_arg2091z00_892;
{ /* ./Lalr/lalr.scm 607 */
long BgL_auxz00_4451;
BgL_auxz00_4451 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_arg2091z00_892 = 
(BgL_auxz00_4451+((long)1)); } 
{ /* ./Lalr/lalr.scm 607 */
obj_t BgL_auxz00_4456;int BgL_auxz00_4454;
BgL_auxz00_4456 = 
BINT(((long)0)); 
BgL_auxz00_4454 = 
(int)(BgL_arg2091z00_892); 
BGl_gotozd2mapzd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4454, BgL_auxz00_4456); } } 
{ /* ./Lalr/lalr.scm 608 */
obj_t BgL_tempzd2mapzd2_894;
{ /* ./Lalr/lalr.scm 608 */
long BgL_arg2203z00_951;
{ /* ./Lalr/lalr.scm 608 */
long BgL_auxz00_4459;
BgL_auxz00_4459 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_arg2203z00_951 = 
(BgL_auxz00_4459+((long)1)); } 
{ /* ./Lalr/lalr.scm 608 */
obj_t BgL_auxz00_4464;int BgL_auxz00_4462;
BgL_auxz00_4464 = 
BINT(((long)0)); 
BgL_auxz00_4462 = 
(int)(BgL_arg2203z00_951); 
BgL_tempzd2mapzd2_894 = 
make_vector(BgL_auxz00_4462, BgL_auxz00_4464); } } 
{ 
long BgL_ngz00_895;obj_t BgL_spz00_896;
BgL_ngz00_895 = ((long)0); 
BgL_spz00_896 = BGl_firstzd2shiftzd2zz__lalr_globalz00; 
BgL_loopz00_897:
if(
PAIRP(BgL_spz00_896))
{ 
obj_t BgL_iz00_899;long BgL_ng2z00_900;
{ /* ./Lalr/lalr.scm 611 */
obj_t BgL_auxz00_4501;
{ 
int BgL_auxz00_4504;obj_t BgL_auxz00_4502;
BgL_auxz00_4504 = 
(int)(((long)2)); 
BgL_auxz00_4502 = 
CAR(BgL_spz00_896); 
BgL_auxz00_4501 = 
VECTOR_REF(BgL_auxz00_4502,BgL_auxz00_4504); } 
BgL_iz00_899 = 
bgl_reverse(BgL_auxz00_4501); } 
BgL_ng2z00_900 = BgL_ngz00_895; 
BgL_loop2z00_901:
if(
PAIRP(BgL_iz00_899))
{ /* ./Lalr/lalr.scm 613 */
obj_t BgL_symbolz00_907;
{ /* ./Lalr/lalr.scm 613 */
obj_t BgL_arg2132z00_915;
BgL_arg2132z00_915 = 
CAR(BgL_iz00_899); 
{ 
int BgL_auxz00_4472;
BgL_auxz00_4472 = 
CINT(BgL_arg2132z00_915); 
BgL_symbolz00_907 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4472); } } 
{ /* ./Lalr/lalr.scm 614 */
bool_t BgL_testz00_4475;
{ /* ./Lalr/lalr.scm 614 */
long BgL_auxz00_4478;long BgL_auxz00_4476;
BgL_auxz00_4478 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4476 = 
(long)CINT(BgL_symbolz00_907); 
BgL_testz00_4475 = 
(BgL_auxz00_4476<BgL_auxz00_4478); } 
if(BgL_testz00_4475)
{ /* ./Lalr/lalr.scm 614 */
{ /* ./Lalr/lalr.scm 617 */
long BgL_arg2112z00_909;
{ /* ./Lalr/lalr.scm 617 */
obj_t BgL_arg2116z00_911;
{ 
int BgL_auxz00_4481;
BgL_auxz00_4481 = 
CINT(BgL_symbolz00_907); 
BgL_arg2116z00_911 = 
VECTOR_REF(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4481); } 
{ /* ./Lalr/lalr.scm 617 */
long BgL_auxz00_4484;
BgL_auxz00_4484 = 
(long)CINT(BgL_arg2116z00_911); 
BgL_arg2112z00_909 = 
(((long)1)+BgL_auxz00_4484); } } 
{ 
obj_t BgL_auxz00_4489;int BgL_auxz00_4487;
BgL_auxz00_4489 = 
BINT(BgL_arg2112z00_909); 
BgL_auxz00_4487 = 
CINT(BgL_symbolz00_907); 
VECTOR_SET(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4487,BgL_auxz00_4489); } } 
{ 
long BgL_ng2z00_4494;obj_t BgL_iz00_4492;
BgL_iz00_4492 = 
CDR(BgL_iz00_899); 
BgL_ng2z00_4494 = 
(BgL_ng2z00_900+((long)1)); 
BgL_ng2z00_900 = BgL_ng2z00_4494; 
BgL_iz00_899 = BgL_iz00_4492; 
goto BgL_loop2z00_901;} }  else 
{ 
obj_t BgL_iz00_4496;
BgL_iz00_4496 = 
CDR(BgL_iz00_899); 
BgL_iz00_899 = BgL_iz00_4496; 
goto BgL_loop2z00_901;} } }  else 
{ 
obj_t BgL_spz00_4499;long BgL_ngz00_4498;
BgL_ngz00_4498 = BgL_ng2z00_900; 
BgL_spz00_4499 = 
CDR(BgL_spz00_896); 
BgL_spz00_896 = BgL_spz00_4499; 
BgL_ngz00_895 = BgL_ngz00_4498; 
goto BgL_loopz00_897;} }  else 
{ 
long BgL_kz00_917;long BgL_iz00_918;
BgL_kz00_917 = ((long)0); 
BgL_iz00_918 = ((long)0); 
BgL_loopz00_919:
{ /* ./Lalr/lalr.scm 623 */
bool_t BgL_testz00_4508;
{ /* ./Lalr/lalr.scm 623 */
long BgL_auxz00_4509;
BgL_auxz00_4509 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_4508 = 
(BgL_iz00_918<BgL_auxz00_4509); } 
if(BgL_testz00_4508)
{ /* ./Lalr/lalr.scm 623 */
{ 
obj_t BgL_auxz00_4514;int BgL_auxz00_4512;
BgL_auxz00_4514 = 
BINT(BgL_kz00_917); 
BgL_auxz00_4512 = 
(int)(BgL_iz00_918); 
VECTOR_SET(BgL_tempzd2mapzd2_894,BgL_auxz00_4512,BgL_auxz00_4514); } 
{ /* ./Lalr/lalr.scm 626 */
long BgL_arg2144z00_921;long BgL_arg2145z00_922;
{ /* ./Lalr/lalr.scm 626 */
obj_t BgL_arg2148z00_923;
{ 
int BgL_auxz00_4517;
BgL_auxz00_4517 = 
(int)(BgL_iz00_918); 
BgL_arg2148z00_923 = 
VECTOR_REF(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4517); } 
{ /* ./Lalr/lalr.scm 626 */
long BgL_auxz00_4520;
BgL_auxz00_4520 = 
(long)CINT(BgL_arg2148z00_923); 
BgL_arg2144z00_921 = 
(BgL_kz00_917+BgL_auxz00_4520); } } 
BgL_arg2145z00_922 = 
(BgL_iz00_918+((long)1)); 
{ 
long BgL_iz00_4525;long BgL_kz00_4524;
BgL_kz00_4524 = BgL_arg2144z00_921; 
BgL_iz00_4525 = BgL_arg2145z00_922; 
BgL_iz00_918 = BgL_iz00_4525; 
BgL_kz00_917 = BgL_kz00_4524; 
goto BgL_loopz00_919;} } }  else 
{ /* ./Lalr/lalr.scm 623 */
{ 
long BgL_iz00_925;
BgL_iz00_925 = ((long)0); 
BgL_zc3anonymousza32153ze3z83_926:
{ /* ./Lalr/lalr.scm 629 */
bool_t BgL_testz00_4526;
{ /* ./Lalr/lalr.scm 630 */
long BgL_auxz00_4527;
BgL_auxz00_4527 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_testz00_4526 = 
(BgL_iz00_925>=BgL_auxz00_4527); } 
if(BgL_testz00_4526)
{ /* ./Lalr/lalr.scm 629 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 629 */
{ 
obj_t BgL_auxz00_4532;int BgL_auxz00_4530;
{ 
int BgL_auxz00_4533;
BgL_auxz00_4533 = 
(int)(BgL_iz00_925); 
BgL_auxz00_4532 = 
VECTOR_REF(BgL_tempzd2mapzd2_894,BgL_auxz00_4533); } 
BgL_auxz00_4530 = 
(int)(BgL_iz00_925); 
VECTOR_SET(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4530,BgL_auxz00_4532); } 
{ 
long BgL_iz00_4537;
BgL_iz00_4537 = 
(BgL_iz00_925+((long)1)); 
BgL_iz00_925 = BgL_iz00_4537; 
goto BgL_zc3anonymousza32153ze3z83_926;} } } } 
BGl_ngotosz00zz__lalr_globalz00 = 
BINT(BgL_ngz00_895); 
{ 
int BgL_auxz00_4540;
BgL_auxz00_4540 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
VECTOR_SET(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4540,BGl_ngotosz00zz__lalr_globalz00); } 
{ 
int BgL_auxz00_4543;
BgL_auxz00_4543 = 
CINT(BGl_nvarsz00zz__lalr_globalz00); 
VECTOR_SET(BgL_tempzd2mapzd2_894,BgL_auxz00_4543,BGl_ngotosz00zz__lalr_globalz00); } 
{ /* ./Lalr/lalr.scm 636 */
int BgL_auxz00_4546;
BgL_auxz00_4546 = 
CINT(BGl_ngotosz00zz__lalr_globalz00); 
BGl_fromzd2statezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4546, BFALSE); } 
{ /* ./Lalr/lalr.scm 637 */
int BgL_auxz00_4549;
BgL_auxz00_4549 = 
CINT(BGl_ngotosz00zz__lalr_globalz00); 
BGl_tozd2statezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4549, BFALSE); } 
{ 
obj_t BgL_spz00_932;
BgL_spz00_932 = BGl_firstzd2shiftzd2zz__lalr_globalz00; 
BgL_zc3anonymousza32169ze3z83_933:
if(
NULLP(BgL_spz00_932))
{ /* ./Lalr/lalr.scm 639 */
return ((bool_t)0);}  else 
{ /* ./Lalr/lalr.scm 639 */
{ /* ./Lalr/lalr.scm 641 */
obj_t BgL_xz00_935;
BgL_xz00_935 = 
CAR(BgL_spz00_932); 
{ /* ./Lalr/lalr.scm 641 */
obj_t BgL_state1z00_936;
{ 
int BgL_auxz00_4555;
BgL_auxz00_4555 = 
(int)(((long)0)); 
BgL_state1z00_936 = 
VECTOR_REF(BgL_xz00_935,BgL_auxz00_4555); } 
{ /* ./Lalr/lalr.scm 642 */

{ 
obj_t BgL_iz00_939;
{ 
int BgL_auxz00_4589;
BgL_auxz00_4589 = 
(int)(((long)2)); 
BgL_iz00_939 = 
VECTOR_REF(BgL_xz00_935,BgL_auxz00_4589); } 
BgL_zc3anonymousza32175ze3z83_940:
if(
NULLP(BgL_iz00_939))
{ /* ./Lalr/lalr.scm 643 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 643 */
{ /* ./Lalr/lalr.scm 645 */
obj_t BgL_state2z00_942;
BgL_state2z00_942 = 
CAR(BgL_iz00_939); 
{ /* ./Lalr/lalr.scm 645 */
obj_t BgL_symbolz00_943;
{ 
int BgL_auxz00_4561;
BgL_auxz00_4561 = 
CINT(BgL_state2z00_942); 
BgL_symbolz00_943 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4561); } 
{ /* ./Lalr/lalr.scm 646 */

{ /* ./Lalr/lalr.scm 647 */
bool_t BgL_testz00_4564;
{ /* ./Lalr/lalr.scm 647 */
long BgL_auxz00_4567;long BgL_auxz00_4565;
BgL_auxz00_4567 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4565 = 
(long)CINT(BgL_symbolz00_943); 
BgL_testz00_4564 = 
(BgL_auxz00_4565<BgL_auxz00_4567); } 
if(BgL_testz00_4564)
{ /* ./Lalr/lalr.scm 648 */
obj_t BgL_kz00_945;
{ 
int BgL_auxz00_4570;
BgL_auxz00_4570 = 
CINT(BgL_symbolz00_943); 
BgL_kz00_945 = 
VECTOR_REF(BgL_tempzd2mapzd2_894,BgL_auxz00_4570); } 
{ /* ./Lalr/lalr.scm 649 */
long BgL_arg2179z00_946;
{ /* ./Lalr/lalr.scm 649 */
long BgL_auxz00_4573;
BgL_auxz00_4573 = 
(long)CINT(BgL_kz00_945); 
BgL_arg2179z00_946 = 
(BgL_auxz00_4573+((long)1)); } 
{ 
obj_t BgL_auxz00_4578;int BgL_auxz00_4576;
BgL_auxz00_4578 = 
BINT(BgL_arg2179z00_946); 
BgL_auxz00_4576 = 
CINT(BgL_symbolz00_943); 
VECTOR_SET(BgL_tempzd2mapzd2_894,BgL_auxz00_4576,BgL_auxz00_4578); } } 
{ 
int BgL_auxz00_4581;
BgL_auxz00_4581 = 
CINT(BgL_kz00_945); 
VECTOR_SET(BGl_fromzd2statezd2zz__lalr_globalz00,BgL_auxz00_4581,BgL_state1z00_936); } 
{ 
int BgL_auxz00_4584;
BgL_auxz00_4584 = 
CINT(BgL_kz00_945); 
VECTOR_SET(BGl_tozd2statezd2zz__lalr_globalz00,BgL_auxz00_4584,BgL_state2z00_942); } }  else 
{ /* ./Lalr/lalr.scm 647 */BFALSE; } } } } } 
{ 
obj_t BgL_iz00_4587;
BgL_iz00_4587 = 
CDR(BgL_iz00_939); 
BgL_iz00_939 = BgL_iz00_4587; 
goto BgL_zc3anonymousza32175ze3z83_940;} } } } } } 
{ 
obj_t BgL_spz00_4592;
BgL_spz00_4592 = 
CDR(BgL_spz00_932); 
BgL_spz00_932 = BgL_spz00_4592; 
goto BgL_zc3anonymousza32169ze3z83_933;} } } } } } } } } 
}



/* map-goto */
long BGl_mapzd2gotozd2zz__lalr_expandz00(obj_t BgL_statez00_13, obj_t BgL_symbolz00_14)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 654 */
{ 
obj_t BgL_lowz00_953;long BgL_highz00_954;
{ /* ./Lalr/lalr.scm 655 */
obj_t BgL_arg2209z00_956;long BgL_arg2210z00_957;
{ 
int BgL_auxz00_4594;
BgL_auxz00_4594 = 
CINT(BgL_symbolz00_14); 
BgL_arg2209z00_956 = 
VECTOR_REF(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4594); } 
{ /* ./Lalr/lalr.scm 656 */
obj_t BgL_arg2214z00_958;
{ /* ./Lalr/lalr.scm 656 */
long BgL_arg2218z00_960;
{ /* ./Lalr/lalr.scm 656 */
long BgL_auxz00_4597;
BgL_auxz00_4597 = 
(long)CINT(BgL_symbolz00_14); 
BgL_arg2218z00_960 = 
(BgL_auxz00_4597+((long)1)); } 
{ 
int BgL_auxz00_4600;
BgL_auxz00_4600 = 
(int)(BgL_arg2218z00_960); 
BgL_arg2214z00_958 = 
VECTOR_REF(BGl_gotozd2mapzd2zz__lalr_globalz00,BgL_auxz00_4600); } } 
{ /* ./Lalr/lalr.scm 656 */
long BgL_auxz00_4603;
BgL_auxz00_4603 = 
(long)CINT(BgL_arg2214z00_958); 
BgL_arg2210z00_957 = 
(BgL_auxz00_4603-((long)1)); } } 
BgL_lowz00_953 = BgL_arg2209z00_956; 
BgL_highz00_954 = BgL_arg2210z00_957; 
BgL_loopz00_955:
{ /* ./Lalr/lalr.scm 657 */
bool_t BgL_testz00_4606;
{ /* ./Lalr/lalr.scm 657 */
long BgL_auxz00_4607;
BgL_auxz00_4607 = 
(long)CINT(BgL_lowz00_953); 
BgL_testz00_4606 = 
(BgL_auxz00_4607>BgL_highz00_954); } 
if(BgL_testz00_4606)
{ /* ./Lalr/lalr.scm 657 */
{ /* ./Lalr/lalr.scm 659 */
obj_t BgL_arg2223z00_962;obj_t BgL_arg2224z00_963;
{ /* ./Lalr/lalr.scm 659 */
obj_t BgL_list2227z00_964;
{ /* ./Lalr/lalr.scm 659 */
obj_t BgL_arg2230z00_966;
{ /* ./Lalr/lalr.scm 659 */
obj_t BgL_arg2233z00_967;
BgL_arg2233z00_967 = 
MAKE_PAIR(BgL_symbolz00_14, BNIL); 
BgL_arg2230z00_966 = 
MAKE_PAIR(BgL_statez00_13, BgL_arg2233z00_967); } 
BgL_list2227z00_964 = 
MAKE_PAIR(BGl_string4502z00zz__lalr_expandz00, BgL_arg2230z00_966); } 
BgL_arg2223z00_962 = BgL_list2227z00_964; } 
BgL_arg2224z00_963 = 
BGL_CURRENT_OUTPUT_PORT(); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_arg2223z00_962, BgL_arg2224z00_963); } 
{ /* ./Lalr/lalr.scm 659 */
obj_t BgL_arg2238z00_968;
BgL_arg2238z00_968 = 
BGL_CURRENT_OUTPUT_PORT(); 
WRITE_CHAR(((unsigned char)'\n'), BgL_arg2238z00_968); } 
return ((long)0);}  else 
{ /* ./Lalr/lalr.scm 661 */
long BgL_middlez00_969;
{ /* ./Lalr/lalr.scm 661 */
long BgL_auxz00_4617;
{ /* ./Lalr/lalr.scm 661 */
long BgL_auxz00_4618;
BgL_auxz00_4618 = 
(long)CINT(BgL_lowz00_953); 
BgL_auxz00_4617 = 
(BgL_auxz00_4618+BgL_highz00_954); } 
BgL_middlez00_969 = 
(BgL_auxz00_4617/((long)2)); } 
{ /* ./Lalr/lalr.scm 661 */
obj_t BgL_sz00_970;
{ 
int BgL_auxz00_4622;
BgL_auxz00_4622 = 
(int)(BgL_middlez00_969); 
BgL_sz00_970 = 
VECTOR_REF(BGl_fromzd2statezd2zz__lalr_globalz00,BgL_auxz00_4622); } 
{ /* ./Lalr/lalr.scm 662 */

if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_sz00_970, BgL_statez00_13))
{ /* ./Lalr/lalr.scm 664 */
return BgL_middlez00_969;}  else 
{ /* ./Lalr/lalr.scm 666 */
bool_t BgL_testz00_4627;
{ /* ./Lalr/lalr.scm 666 */
long BgL_auxz00_4630;long BgL_auxz00_4628;
BgL_auxz00_4630 = 
(long)CINT(BgL_statez00_13); 
BgL_auxz00_4628 = 
(long)CINT(BgL_sz00_970); 
BgL_testz00_4627 = 
(BgL_auxz00_4628<BgL_auxz00_4630); } 
if(BgL_testz00_4627)
{ /* ./Lalr/lalr.scm 666 */
{ /* ./Lalr/lalr.scm 667 */
long BgL_arg2244z00_973;
BgL_arg2244z00_973 = 
(BgL_middlez00_969+((long)1)); 
{ 
obj_t BgL_lowz00_4634;
BgL_lowz00_4634 = 
BINT(BgL_arg2244z00_973); 
BgL_lowz00_953 = BgL_lowz00_4634; 
goto BgL_loopz00_955;} } }  else 
{ /* ./Lalr/lalr.scm 666 */
{ 
long BgL_highz00_4636;
BgL_highz00_4636 = 
(BgL_middlez00_969-((long)1)); 
BgL_highz00_954 = BgL_highz00_4636; 
goto BgL_loopz00_955;} } } } } } } } } } 
}



/* initialize-F */
bool_t BGl_initializa7ezd2Fz75zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 672 */
{ /* ./Lalr/lalr.scm 673 */
int BgL_auxz00_4638;
BgL_auxz00_4638 = 
CINT(BGl_ngotosz00zz__lalr_globalz00); 
BGl_Fz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4638, BFALSE); } 
{ 
long BgL_iz00_978;
BgL_iz00_978 = ((long)0); 
BgL_zc3anonymousza32262ze3z83_979:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_978), BGl_ngotosz00zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 674 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 674 */
{ 
obj_t BgL_auxz00_4646;int BgL_auxz00_4644;
{ /* ./Lalr/lalr.scm 674 */
obj_t BgL_auxz00_4649;int BgL_auxz00_4647;
BgL_auxz00_4649 = 
BINT(((long)0)); 
BgL_auxz00_4647 = 
CINT(BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00); 
BgL_auxz00_4646 = 
make_vector(BgL_auxz00_4647, BgL_auxz00_4649); } 
BgL_auxz00_4644 = 
(int)(BgL_iz00_978); 
VECTOR_SET(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_4644,BgL_auxz00_4646); } 
{ 
long BgL_iz00_4653;
BgL_iz00_4653 = 
(BgL_iz00_978+((long)1)); 
BgL_iz00_978 = BgL_iz00_4653; 
goto BgL_zc3anonymousza32262ze3z83_979;} } } 
{ /* ./Lalr/lalr.scm 676 */
obj_t BgL_readsz00_984;
{ /* ./Lalr/lalr.scm 676 */
int BgL_auxz00_4655;
BgL_auxz00_4655 = 
CINT(BGl_ngotosz00zz__lalr_globalz00); 
BgL_readsz00_984 = 
make_vector(BgL_auxz00_4655, BFALSE); } 
{ 
long BgL_iz00_985;long BgL_rowpz00_986;
BgL_iz00_985 = ((long)0); 
BgL_rowpz00_986 = ((long)0); 
BgL_loopz00_987:
{ /* ./Lalr/lalr.scm 679 */
bool_t BgL_testz00_4658;
{ /* ./Lalr/lalr.scm 679 */
long BgL_auxz00_4659;
BgL_auxz00_4659 = 
(long)CINT(BGl_ngotosz00zz__lalr_globalz00); 
BgL_testz00_4658 = 
(BgL_iz00_985<BgL_auxz00_4659); } 
if(BgL_testz00_4658)
{ /* ./Lalr/lalr.scm 680 */
obj_t BgL_rowfz00_989;
{ 
int BgL_auxz00_4662;
BgL_auxz00_4662 = 
(int)(BgL_rowpz00_986); 
BgL_rowfz00_989 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_4662); } 
{ /* ./Lalr/lalr.scm 680 */
obj_t BgL_statenoz00_990;
{ 
int BgL_auxz00_4665;
BgL_auxz00_4665 = 
(int)(BgL_iz00_985); 
BgL_statenoz00_990 = 
VECTOR_REF(BGl_tozd2statezd2zz__lalr_globalz00,BgL_auxz00_4665); } 
{ /* ./Lalr/lalr.scm 681 */
obj_t BgL_spz00_991;
{ 
int BgL_auxz00_4668;
BgL_auxz00_4668 = 
CINT(BgL_statenoz00_990); 
BgL_spz00_991 = 
VECTOR_REF(BGl_shiftzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4668); } 
{ /* ./Lalr/lalr.scm 682 */

if(
CBOOL(BgL_spz00_991))
{ 
obj_t BgL_jz00_992;obj_t BgL_edgesz00_993;
{ 
int BgL_auxz00_4738;
BgL_auxz00_4738 = 
(int)(((long)2)); 
BgL_jz00_992 = 
VECTOR_REF(BgL_spz00_991,BgL_auxz00_4738); } 
BgL_edgesz00_993 = BNIL; 
BgL_loop2z00_994:
if(
PAIRP(BgL_jz00_992))
{ /* ./Lalr/lalr.scm 686 */
obj_t BgL_symbolz00_998;
{ /* ./Lalr/lalr.scm 686 */
obj_t BgL_arg2324z00_1016;
BgL_arg2324z00_1016 = 
CAR(BgL_jz00_992); 
{ 
int BgL_auxz00_4676;
BgL_auxz00_4676 = 
CINT(BgL_arg2324z00_1016); 
BgL_symbolz00_998 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4676); } } 
{ /* ./Lalr/lalr.scm 687 */
bool_t BgL_testz00_4679;
{ /* ./Lalr/lalr.scm 687 */
long BgL_auxz00_4682;long BgL_auxz00_4680;
BgL_auxz00_4682 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4680 = 
(long)CINT(BgL_symbolz00_998); 
BgL_testz00_4679 = 
(BgL_auxz00_4680<BgL_auxz00_4682); } 
if(BgL_testz00_4679)
{ /* ./Lalr/lalr.scm 688 */
bool_t BgL_test2282z00_1000;
{ /* ./Lalr/lalr.scm 688 */
obj_t BgL_vectorz00_2637;int BgL_kz00_2638;
BgL_vectorz00_2637 = BGl_nullablez00zz__lalr_globalz00; 
BgL_kz00_2638 = 
CINT(BgL_symbolz00_998); 
{ /* ./Lalr/lalr.scm 688 */
obj_t BgL_auxz00_4686;
BgL_auxz00_4686 = 
VECTOR_REF(BgL_vectorz00_2637,BgL_kz00_2638); 
BgL_test2282z00_1000 = 
CBOOL(BgL_auxz00_4686); } } 
if(BgL_test2282z00_1000)
{ /* ./Lalr/lalr.scm 689 */
obj_t BgL_arg2284z00_1001;obj_t BgL_arg2285z00_1002;
BgL_arg2284z00_1001 = 
CDR(BgL_jz00_992); 
{ /* ./Lalr/lalr.scm 689 */
long BgL_arg2289z00_1003;
BgL_arg2289z00_1003 = 
BGl_mapzd2gotozd2zz__lalr_expandz00(BgL_statenoz00_990, BgL_symbolz00_998); 
{ /* ./Lalr/lalr.scm 689 */
obj_t BgL_auxz00_4692;
BgL_auxz00_4692 = 
BINT(BgL_arg2289z00_1003); 
BgL_arg2285z00_1002 = 
MAKE_PAIR(BgL_auxz00_4692, BgL_edgesz00_993); } } 
{ 
obj_t BgL_edgesz00_4696;obj_t BgL_jz00_4695;
BgL_jz00_4695 = BgL_arg2284z00_1001; 
BgL_edgesz00_4696 = BgL_arg2285z00_1002; 
BgL_edgesz00_993 = BgL_edgesz00_4696; 
BgL_jz00_992 = BgL_jz00_4695; 
goto BgL_loop2z00_994;} }  else 
{ 
obj_t BgL_jz00_4697;
BgL_jz00_4697 = 
CDR(BgL_jz00_992); 
BgL_jz00_992 = BgL_jz00_4697; 
goto BgL_loop2z00_994;} }  else 
{ /* ./Lalr/lalr.scm 687 */
{ /* ./Lalr/lalr.scm 693 */
long BgL_xz00_1005;obj_t BgL_yz00_1006;
{ /* ./Lalr/lalr.scm 693 */
long BgL_auxz00_4699;
{ /* ./Lalr/lalr.scm 693 */
long BgL_auxz00_4702;long BgL_auxz00_4700;
BgL_auxz00_4702 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4700 = 
(long)CINT(BgL_symbolz00_998); 
BgL_auxz00_4699 = 
(BgL_auxz00_4700-BgL_auxz00_4702); } 
BgL_xz00_1005 = 
(BgL_auxz00_4699/((long)28)); } 
{ /* ./Lalr/lalr.scm 693 */
long BgL_arg2311z00_1012;
{ /* ./Lalr/lalr.scm 693 */
long BgL_auxz00_4706;
{ /* ./Lalr/lalr.scm 693 */
long BgL_auxz00_4709;long BgL_auxz00_4707;
BgL_auxz00_4709 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_4707 = 
(long)CINT(BgL_symbolz00_998); 
BgL_auxz00_4706 = 
(BgL_auxz00_4707-BgL_auxz00_4709); } 
BgL_arg2311z00_1012 = 
(BgL_auxz00_4706%((long)28)); } 
BgL_yz00_1006 = 
BGl_exptz00zz__r4_numbers_6_5z00(
BINT(((long)2)), 
BINT(BgL_arg2311z00_1012)); } 
{ /* ./Lalr/lalr.scm 693 */
long BgL_arg2298z00_1007;
{ /* ./Lalr/lalr.scm 693 */
obj_t BgL_arg2301z00_1008;
{ 
int BgL_auxz00_4716;
BgL_auxz00_4716 = 
(int)(BgL_xz00_1005); 
BgL_arg2301z00_1008 = 
VECTOR_REF(BgL_rowfz00_989,BgL_auxz00_4716); } 
{ /* ./Lalr/lalr.scm 693 */
long BgL_auxz00_4721;long BgL_auxz00_4719;
BgL_auxz00_4721 = 
(long)CINT(BgL_yz00_1006); 
BgL_auxz00_4719 = 
(long)CINT(BgL_arg2301z00_1008); 
BgL_arg2298z00_1007 = 
(BgL_auxz00_4719 | BgL_auxz00_4721); } } 
{ 
obj_t BgL_auxz00_4726;int BgL_auxz00_4724;
BgL_auxz00_4726 = 
BINT(BgL_arg2298z00_1007); 
BgL_auxz00_4724 = 
(int)(BgL_xz00_1005); 
VECTOR_SET(BgL_rowfz00_989,BgL_auxz00_4724,BgL_auxz00_4726); } } } 
{ 
obj_t BgL_jz00_4729;
BgL_jz00_4729 = 
CDR(BgL_jz00_992); 
BgL_jz00_992 = BgL_jz00_4729; 
goto BgL_loop2z00_994;} } } }  else 
{ /* ./Lalr/lalr.scm 685 */
if(
PAIRP(BgL_edgesz00_993))
{ 
obj_t BgL_auxz00_4735;int BgL_auxz00_4733;
BgL_auxz00_4735 = 
bgl_reverse(BgL_edgesz00_993); 
BgL_auxz00_4733 = 
(int)(BgL_iz00_985); 
VECTOR_SET(BgL_readsz00_984,BgL_auxz00_4733,BgL_auxz00_4735); }  else 
{ /* ./Lalr/lalr.scm 695 */BFALSE; } } }  else 
{ /* ./Lalr/lalr.scm 683 */BFALSE; } 
{ 
long BgL_rowpz00_4743;long BgL_iz00_4741;
BgL_iz00_4741 = 
(BgL_iz00_985+((long)1)); 
BgL_rowpz00_4743 = 
(BgL_rowpz00_986+((long)1)); 
BgL_rowpz00_986 = BgL_rowpz00_4743; 
BgL_iz00_985 = BgL_iz00_4741; 
goto BgL_loopz00_987;} } } } }  else 
{ /* ./Lalr/lalr.scm 679 */((bool_t)0); } } } 
return 
BGl_digraphz00zz__lalr_expandz00(BgL_readsz00_984);} } 
}



/* add-lookback-edge */
obj_t BGl_addzd2lookbackzd2edgez00zz__lalr_expandz00(obj_t BgL_statenoz00_15, obj_t BgL_rulenoz00_16, long BgL_gotonoz00_17)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 700 */
{ /* ./Lalr/lalr.scm 701 */
obj_t BgL_kz00_1021;
{ /* ./Lalr/lalr.scm 701 */
long BgL_arg2395z00_1040;
{ /* ./Lalr/lalr.scm 701 */
long BgL_auxz00_4746;
BgL_auxz00_4746 = 
(long)CINT(BgL_statenoz00_15); 
BgL_arg2395z00_1040 = 
(BgL_auxz00_4746+((long)1)); } 
{ 
int BgL_auxz00_4749;
BgL_auxz00_4749 = 
(int)(BgL_arg2395z00_1040); 
BgL_kz00_1021 = 
VECTOR_REF(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_4749); } } 
{ 
bool_t BgL_foundz00_1022;obj_t BgL_iz00_1023;
BgL_foundz00_1022 = ((bool_t)0); 
{ 
int BgL_auxz00_4793;
BgL_auxz00_4793 = 
CINT(BgL_statenoz00_15); 
BgL_iz00_1023 = 
VECTOR_REF(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_4793); } 
BgL_loopz00_1024:
{ /* ./Lalr/lalr.scm 703 */
bool_t BgL_test2351z00_1026;
if(BgL_foundz00_1022)
{ /* ./Lalr/lalr.scm 703 */
BgL_test2351z00_1026 = ((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 703 */
long BgL_auxz00_4755;long BgL_auxz00_4753;
BgL_auxz00_4755 = 
(long)CINT(BgL_kz00_1021); 
BgL_auxz00_4753 = 
(long)CINT(BgL_iz00_1023); 
BgL_test2351z00_1026 = 
(BgL_auxz00_4753<BgL_auxz00_4755); } 
if(BgL_test2351z00_1026)
{ /* ./Lalr/lalr.scm 704 */
bool_t BgL_testz00_4759;
{ /* ./Lalr/lalr.scm 704 */
obj_t BgL_auxz00_4760;
{ 
int BgL_auxz00_4761;
BgL_auxz00_4761 = 
CINT(BgL_iz00_1023); 
BgL_auxz00_4760 = 
VECTOR_REF(BGl_LArulenoz00zz__lalr_globalz00,BgL_auxz00_4761); } 
BgL_testz00_4759 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_auxz00_4760, BgL_rulenoz00_16); } 
if(BgL_testz00_4759)
{ 
bool_t BgL_foundz00_4765;
BgL_foundz00_4765 = ((bool_t)1); 
BgL_foundz00_1022 = BgL_foundz00_4765; 
goto BgL_loopz00_1024;}  else 
{ /* ./Lalr/lalr.scm 706 */
long BgL_arg2355z00_1028;
{ /* ./Lalr/lalr.scm 706 */
long BgL_auxz00_4766;
BgL_auxz00_4766 = 
(long)CINT(BgL_iz00_1023); 
BgL_arg2355z00_1028 = 
(BgL_auxz00_4766+((long)1)); } 
{ 
obj_t BgL_iz00_4769;
BgL_iz00_4769 = 
BINT(BgL_arg2355z00_1028); 
BgL_iz00_1023 = BgL_iz00_4769; 
goto BgL_loopz00_1024;} } }  else 
{ /* ./Lalr/lalr.scm 703 */
if(BgL_foundz00_1022)
{ /* ./Lalr/lalr.scm 712 */
obj_t BgL_arg2364z00_1030;
{ /* ./Lalr/lalr.scm 712 */
obj_t BgL_auxz00_4774;obj_t BgL_auxz00_4772;
{ 
int BgL_auxz00_4775;
BgL_auxz00_4775 = 
CINT(BgL_iz00_1023); 
BgL_auxz00_4774 = 
VECTOR_REF(BGl_lookbackz00zz__lalr_globalz00,BgL_auxz00_4775); } 
BgL_auxz00_4772 = 
BINT(BgL_gotonoz00_17); 
BgL_arg2364z00_1030 = 
MAKE_PAIR(BgL_auxz00_4772, BgL_auxz00_4774); } 
{ 
int BgL_auxz00_4779;
BgL_auxz00_4779 = 
CINT(BgL_iz00_1023); 
return 
VECTOR_SET(BGl_lookbackz00zz__lalr_globalz00,BgL_auxz00_4779,BgL_arg2364z00_1030);} }  else 
{ /* ./Lalr/lalr.scm 708 */
{ /* ./Lalr/lalr.scm 709 */
obj_t BgL_arg2372z00_1033;
BgL_arg2372z00_1033 = 
BGL_CURRENT_OUTPUT_PORT(); 
display_string(BGl_string4503z00zz__lalr_expandz00, BgL_arg2372z00_1033); } 
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_arg2376z00_1034;obj_t BgL_arg2377z00_1035;
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_list2380z00_1036;
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_arg2382z00_1037;
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_arg2385z00_1038;
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_auxz00_4784;
BgL_auxz00_4784 = 
BINT(BgL_gotonoz00_17); 
BgL_arg2385z00_1038 = 
MAKE_PAIR(BgL_auxz00_4784, BNIL); } 
BgL_arg2382z00_1037 = 
MAKE_PAIR(BgL_rulenoz00_16, BgL_arg2385z00_1038); } 
BgL_list2380z00_1036 = 
MAKE_PAIR(BgL_statenoz00_15, BgL_arg2382z00_1037); } 
BgL_arg2376z00_1034 = BgL_list2380z00_1036; } 
BgL_arg2377z00_1035 = 
BGL_CURRENT_OUTPUT_PORT(); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_arg2376z00_1034, BgL_arg2377z00_1035); } 
{ /* ./Lalr/lalr.scm 710 */
obj_t BgL_arg2390z00_1039;
BgL_arg2390z00_1039 = 
BGL_CURRENT_OUTPUT_PORT(); 
return 
WRITE_CHAR(((unsigned char)'\n'), BgL_arg2390z00_1039);} } } } } } } 
}



/* transpose */
obj_t BGl_transposez00zz__lalr_expandz00(obj_t BgL_rzd2argzd2_18, obj_t BgL_nz00_19)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 715 */
{ /* ./Lalr/lalr.scm 716 */
obj_t BgL_newzd2endzd2_1041;obj_t BgL_newzd2rzd2_1042;
{ /* ./Lalr/lalr.scm 716 */
int BgL_auxz00_4796;
BgL_auxz00_4796 = 
CINT(BgL_nz00_19); 
BgL_newzd2endzd2_1041 = 
make_vector(BgL_auxz00_4796, BFALSE); } 
{ /* ./Lalr/lalr.scm 717 */
int BgL_auxz00_4799;
BgL_auxz00_4799 = 
CINT(BgL_nz00_19); 
BgL_newzd2rzd2_1042 = 
make_vector(BgL_auxz00_4799, BFALSE); } 
{ 
long BgL_iz00_1044;
BgL_iz00_1044 = ((long)0); 
BgL_zc3anonymousza32399ze3z83_1045:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1044), BgL_nz00_19))
{ /* ./Lalr/lalr.scm 718 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 718 */
{ /* ./Lalr/lalr.scm 720 */
obj_t BgL_xz00_1047;
{ /* ./Lalr/lalr.scm 720 */
obj_t BgL_list2404z00_1048;
BgL_list2404z00_1048 = 
MAKE_PAIR(BGl_symbol4504z00zz__lalr_expandz00, BNIL); 
BgL_xz00_1047 = BgL_list2404z00_1048; } 
{ 
int BgL_auxz00_4806;
BgL_auxz00_4806 = 
(int)(BgL_iz00_1044); 
VECTOR_SET(BgL_newzd2rzd2_1042,BgL_auxz00_4806,BgL_xz00_1047); } 
{ 
int BgL_auxz00_4809;
BgL_auxz00_4809 = 
(int)(BgL_iz00_1044); 
VECTOR_SET(BgL_newzd2endzd2_1041,BgL_auxz00_4809,BgL_xz00_1047); } } 
{ 
long BgL_iz00_4812;
BgL_iz00_4812 = 
(BgL_iz00_1044+((long)1)); 
BgL_iz00_1044 = BgL_iz00_4812; 
goto BgL_zc3anonymousza32399ze3z83_1045;} } } 
{ 
long BgL_iz00_1052;
BgL_iz00_1052 = ((long)0); 
BgL_zc3anonymousza32412ze3z83_1053:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1052), BgL_nz00_19))
{ /* ./Lalr/lalr.scm 723 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 723 */
{ /* ./Lalr/lalr.scm 725 */
obj_t BgL_spz00_1055;
{ 
int BgL_auxz00_4817;
BgL_auxz00_4817 = 
(int)(BgL_iz00_1052); 
BgL_spz00_1055 = 
VECTOR_REF(BgL_rzd2argzd2_18,BgL_auxz00_4817); } 
if(
PAIRP(BgL_spz00_1055))
{ 
obj_t BgL_sp2z00_1057;
BgL_sp2z00_1057 = BgL_spz00_1055; 
BgL_loopz00_1058:
if(
PAIRP(BgL_sp2z00_1057))
{ /* ./Lalr/lalr.scm 729 */
obj_t BgL_xz00_1060;
BgL_xz00_1060 = 
CAR(BgL_sp2z00_1057); 
{ /* ./Lalr/lalr.scm 729 */
obj_t BgL_yz00_1061;
{ 
int BgL_auxz00_4825;
BgL_auxz00_4825 = 
CINT(BgL_xz00_1060); 
BgL_yz00_1061 = 
VECTOR_REF(BgL_newzd2endzd2_1041,BgL_auxz00_4825); } 
{ /* ./Lalr/lalr.scm 730 */

{ /* ./Lalr/lalr.scm 731 */
obj_t BgL_arg2418z00_1062;
{ /* ./Lalr/lalr.scm 731 */
obj_t BgL_auxz00_4830;obj_t BgL_auxz00_4828;
BgL_auxz00_4830 = 
CDR(BgL_yz00_1061); 
BgL_auxz00_4828 = 
BINT(BgL_iz00_1052); 
BgL_arg2418z00_1062 = 
MAKE_PAIR(BgL_auxz00_4828, BgL_auxz00_4830); } 
SET_CDR(BgL_yz00_1061, BgL_arg2418z00_1062); } 
{ 
obj_t BgL_auxz00_4836;int BgL_auxz00_4834;
BgL_auxz00_4836 = 
CDR(BgL_yz00_1061); 
BgL_auxz00_4834 = 
CINT(BgL_xz00_1060); 
VECTOR_SET(BgL_newzd2endzd2_1041,BgL_auxz00_4834,BgL_auxz00_4836); } 
{ 
obj_t BgL_sp2z00_4839;
BgL_sp2z00_4839 = 
CDR(BgL_sp2z00_1057); 
BgL_sp2z00_1057 = BgL_sp2z00_4839; 
goto BgL_loopz00_1058;} } } }  else 
{ /* ./Lalr/lalr.scm 728 */((bool_t)0); } }  else 
{ /* ./Lalr/lalr.scm 726 */((bool_t)0); } } 
{ 
long BgL_iz00_4841;
BgL_iz00_4841 = 
(BgL_iz00_1052+((long)1)); 
BgL_iz00_1052 = BgL_iz00_4841; 
goto BgL_zc3anonymousza32412ze3z83_1053;} } } 
{ 
long BgL_iz00_1069;
BgL_iz00_1069 = ((long)0); 
BgL_zc3anonymousza32443ze3z83_1070:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1069), BgL_nz00_19))
{ /* ./Lalr/lalr.scm 734 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 734 */
{ 
obj_t BgL_auxz00_4848;int BgL_auxz00_4846;
{ /* ./Lalr/lalr.scm 736 */
obj_t BgL_auxz00_4849;
{ 
int BgL_auxz00_4850;
BgL_auxz00_4850 = 
(int)(BgL_iz00_1069); 
BgL_auxz00_4849 = 
VECTOR_REF(BgL_newzd2rzd2_1042,BgL_auxz00_4850); } 
BgL_auxz00_4848 = 
CDR(BgL_auxz00_4849); } 
BgL_auxz00_4846 = 
(int)(BgL_iz00_1069); 
VECTOR_SET(BgL_newzd2rzd2_1042,BgL_auxz00_4846,BgL_auxz00_4848); } 
{ 
long BgL_iz00_4855;
BgL_iz00_4855 = 
(BgL_iz00_1069+((long)1)); 
BgL_iz00_1069 = BgL_iz00_4855; 
goto BgL_zc3anonymousza32443ze3z83_1070;} } } 
return BgL_newzd2rzd2_1042;} } 
}



/* build-relations */
obj_t BGl_buildzd2relationszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 742 */
{ 
obj_t BgL_statenoz00_1124;obj_t BgL_symbolz00_1125;
{ /* ./Lalr/lalr.scm 754 */
int BgL_auxz00_4857;
BgL_auxz00_4857 = 
CINT(BGl_ngotosz00zz__lalr_globalz00); 
BGl_includesz00zz__lalr_globalz00 = 
make_vector(BgL_auxz00_4857, BFALSE); } 
{ 
long BgL_iz00_1078;
BgL_iz00_1078 = ((long)0); 
BgL_zc3anonymousza32461ze3z83_1079:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1078), BGl_ngotosz00zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 755 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 755 */
{ /* ./Lalr/lalr.scm 757 */
obj_t BgL_state1z00_1081;obj_t BgL_symbol1z00_1082;
{ 
int BgL_auxz00_4863;
BgL_auxz00_4863 = 
(int)(BgL_iz00_1078); 
BgL_state1z00_1081 = 
VECTOR_REF(BGl_fromzd2statezd2zz__lalr_globalz00,BgL_auxz00_4863); } 
{ /* ./Lalr/lalr.scm 758 */
obj_t BgL_arg2527z00_1121;
{ 
int BgL_auxz00_4866;
BgL_auxz00_4866 = 
(int)(BgL_iz00_1078); 
BgL_arg2527z00_1121 = 
VECTOR_REF(BGl_tozd2statezd2zz__lalr_globalz00,BgL_auxz00_4866); } 
{ 
int BgL_auxz00_4869;
BgL_auxz00_4869 = 
CINT(BgL_arg2527z00_1121); 
BgL_symbol1z00_1082 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4869); } } 
{ 
obj_t BgL_rulepz00_1083;obj_t BgL_edgesz00_1084;
{ 
int BgL_auxz00_4954;
BgL_auxz00_4954 = 
CINT(BgL_symbol1z00_1082); 
BgL_rulepz00_1083 = 
VECTOR_REF(BGl_derivesz00zz__lalr_globalz00,BgL_auxz00_4954); } 
BgL_edgesz00_1084 = BNIL; 
BgL_loopz00_1085:
if(
PAIRP(BgL_rulepz00_1083))
{ /* ./Lalr/lalr.scm 762 */
obj_t BgL_za2rulepza2_1089;
BgL_za2rulepza2_1089 = 
CAR(BgL_rulepz00_1083); 
{ 
obj_t BgL_rpz00_1090;obj_t BgL_statenoz00_1091;obj_t BgL_statesz00_1092;
{ /* ./Lalr/lalr.scm 763 */
obj_t BgL_arg2470z00_1094;obj_t BgL_arg2471z00_1095;
{ 
int BgL_auxz00_4875;
BgL_auxz00_4875 = 
CINT(BgL_za2rulepza2_1089); 
BgL_arg2470z00_1094 = 
VECTOR_REF(BGl_rrhsz00zz__lalr_globalz00,BgL_auxz00_4875); } 
{ /* ./Lalr/lalr.scm 765 */
obj_t BgL_list2475z00_1096;
BgL_list2475z00_1096 = 
MAKE_PAIR(BgL_state1z00_1081, BNIL); 
BgL_arg2471z00_1095 = BgL_list2475z00_1096; } 
BgL_rpz00_1090 = BgL_arg2470z00_1094; 
BgL_statenoz00_1091 = BgL_state1z00_1081; 
BgL_statesz00_1092 = BgL_arg2471z00_1095; 
BgL_loop2z00_1093:
{ /* ./Lalr/lalr.scm 766 */
obj_t BgL_za2rpza2_1097;
{ 
int BgL_auxz00_4879;
BgL_auxz00_4879 = 
CINT(BgL_rpz00_1090); 
BgL_za2rpza2_1097 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_4879); } 
{ /* ./Lalr/lalr.scm 767 */
bool_t BgL_testz00_4882;
{ /* ./Lalr/lalr.scm 767 */
long BgL_auxz00_4883;
BgL_auxz00_4883 = 
(long)CINT(BgL_za2rpza2_1097); 
BgL_testz00_4882 = 
(BgL_auxz00_4883>((long)0)); } 
if(BgL_testz00_4882)
{ /* ./Lalr/lalr.scm 768 */
obj_t BgL_stz00_1099;
BgL_statenoz00_1124 = BgL_statenoz00_1091; 
BgL_symbolz00_1125 = BgL_za2rpza2_1097; 
{ /* ./Lalr/lalr.scm 745 */
obj_t BgL_arg2538z00_1130;
{ 
int BgL_auxz00_4890;obj_t BgL_auxz00_4886;
BgL_auxz00_4890 = 
(int)(((long)2)); 
{ 
int BgL_auxz00_4887;
BgL_auxz00_4887 = 
CINT(BgL_statenoz00_1124); 
BgL_auxz00_4886 = 
VECTOR_REF(BGl_shiftzd2tablezd2zz__lalr_globalz00,BgL_auxz00_4887); } 
BgL_arg2538z00_1130 = 
VECTOR_REF(BgL_auxz00_4886,BgL_auxz00_4890); } 
{ 
obj_t BgL_jz00_2764;obj_t BgL_stnoz00_2765;
BgL_jz00_2764 = BgL_arg2538z00_1130; 
BgL_stnoz00_2765 = BgL_statenoz00_1124; 
BgL_loopz00_2763:
if(
NULLP(BgL_jz00_2764))
{ /* ./Lalr/lalr.scm 745 */
BgL_stz00_1099 = BgL_stnoz00_2765; }  else 
{ /* ./Lalr/lalr.scm 745 */
obj_t BgL_st2z00_2772;
BgL_st2z00_2772 = 
CAR(BgL_jz00_2764); 
{ /* ./Lalr/lalr.scm 745 */
bool_t BgL_testz00_4896;
{ /* ./Lalr/lalr.scm 745 */
obj_t BgL_auxz00_4897;
{ 
int BgL_auxz00_4898;
BgL_auxz00_4898 = 
CINT(BgL_st2z00_2772); 
BgL_auxz00_4897 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_4898); } 
BgL_testz00_4896 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_auxz00_4897, BgL_symbolz00_1125); } 
if(BgL_testz00_4896)
{ /* ./Lalr/lalr.scm 745 */
BgL_stz00_1099 = BgL_st2z00_2772; }  else 
{ 
obj_t BgL_stnoz00_4904;obj_t BgL_jz00_4902;
BgL_jz00_4902 = 
CDR(BgL_jz00_2764); 
BgL_stnoz00_4904 = BgL_st2z00_2772; 
BgL_stnoz00_2765 = BgL_stnoz00_4904; 
BgL_jz00_2764 = BgL_jz00_4902; 
goto BgL_loopz00_2763;} } } } } 
{ /* ./Lalr/lalr.scm 769 */
long BgL_arg2479z00_1100;obj_t BgL_arg2480z00_1101;
{ /* ./Lalr/lalr.scm 769 */
long BgL_auxz00_4905;
BgL_auxz00_4905 = 
(long)CINT(BgL_rpz00_1090); 
BgL_arg2479z00_1100 = 
(BgL_auxz00_4905+((long)1)); } 
BgL_arg2480z00_1101 = 
MAKE_PAIR(BgL_stz00_1099, BgL_statesz00_1092); 
{ 
obj_t BgL_statesz00_4912;obj_t BgL_statenoz00_4911;obj_t BgL_rpz00_4909;
BgL_rpz00_4909 = 
BINT(BgL_arg2479z00_1100); 
BgL_statenoz00_4911 = BgL_stz00_1099; 
BgL_statesz00_4912 = BgL_arg2480z00_1101; 
BgL_statesz00_1092 = BgL_statesz00_4912; 
BgL_statenoz00_1091 = BgL_statenoz00_4911; 
BgL_rpz00_1090 = BgL_rpz00_4909; 
goto BgL_loop2z00_1093;} } }  else 
{ /* ./Lalr/lalr.scm 767 */
{ /* ./Lalr/lalr.scm 772 */
bool_t BgL_test2485z00_1102;
{ /* ./Lalr/lalr.scm 772 */
obj_t BgL_vectorz00_2740;int BgL_kz00_2741;
BgL_vectorz00_2740 = BGl_consistentz00zz__lalr_globalz00; 
BgL_kz00_2741 = 
CINT(BgL_statenoz00_1091); 
{ /* ./Lalr/lalr.scm 772 */
obj_t BgL_auxz00_4914;
BgL_auxz00_4914 = 
VECTOR_REF(BgL_vectorz00_2740,BgL_kz00_2741); 
BgL_test2485z00_1102 = 
CBOOL(BgL_auxz00_4914); } } 
if(BgL_test2485z00_1102)
{ /* ./Lalr/lalr.scm 772 */BFALSE; }  else 
{ /* ./Lalr/lalr.scm 772 */
BGl_addzd2lookbackzd2edgez00zz__lalr_expandz00(BgL_statenoz00_1091, BgL_za2rulepza2_1089, BgL_iz00_1078); } } 
{ 
bool_t BgL_donez00_1103;obj_t BgL_stpz00_1104;long BgL_rp2z00_1105;obj_t BgL_edgpz00_1106;
BgL_donez00_1103 = ((bool_t)0); 
BgL_stpz00_1104 = 
CDR(BgL_statesz00_1092); 
{ /* ./Lalr/lalr.scm 777 */
long BgL_auxz00_4949;
BgL_auxz00_4949 = 
(long)CINT(BgL_rpz00_1090); 
BgL_rp2z00_1105 = 
(BgL_auxz00_4949-((long)1)); } 
BgL_edgpz00_1106 = BgL_edgesz00_1084; 
BgL_loop2z00_1107:
if(BgL_donez00_1103)
{ 
obj_t BgL_edgesz00_4922;obj_t BgL_rulepz00_4920;
BgL_rulepz00_4920 = 
CDR(BgL_rulepz00_1083); 
BgL_edgesz00_4922 = BgL_edgpz00_1106; 
BgL_edgesz00_1084 = BgL_edgesz00_4922; 
BgL_rulepz00_1083 = BgL_rulepz00_4920; 
goto BgL_loopz00_1085;}  else 
{ /* ./Lalr/lalr.scm 780 */
obj_t BgL_za2rpza2_1111;
{ 
int BgL_auxz00_4923;
BgL_auxz00_4923 = 
(int)(BgL_rp2z00_1105); 
BgL_za2rpza2_1111 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_4923); } 
{ /* ./Lalr/lalr.scm 781 */
bool_t BgL_test2498z00_1112;
if(
BGl_2zc3zc3zz__r4_numbers_6_5z00(
BINT(((long)-1)), BgL_za2rpza2_1111))
{ /* ./Lalr/lalr.scm 781 */
BgL_test2498z00_1112 = 
BGl_2zc3zc3zz__r4_numbers_6_5z00(BgL_za2rpza2_1111, BGl_nvarsz00zz__lalr_globalz00); }  else 
{ /* ./Lalr/lalr.scm 781 */
BgL_test2498z00_1112 = ((bool_t)0); } 
if(BgL_test2498z00_1112)
{ /* ./Lalr/lalr.scm 782 */
bool_t BgL_arg2500z00_1113;obj_t BgL_arg2501z00_1114;long BgL_arg2502z00_1115;obj_t BgL_arg2503z00_1116;
{ /* ./Lalr/lalr.scm 782 */
bool_t BgL_test2505z00_1117;
{ /* ./Lalr/lalr.scm 782 */
obj_t BgL_vectorz00_2748;int BgL_kz00_2749;
BgL_vectorz00_2748 = BGl_nullablez00zz__lalr_globalz00; 
BgL_kz00_2749 = 
CINT(BgL_za2rpza2_1111); 
{ /* ./Lalr/lalr.scm 782 */
obj_t BgL_auxz00_4932;
BgL_auxz00_4932 = 
VECTOR_REF(BgL_vectorz00_2748,BgL_kz00_2749); 
BgL_test2505z00_1117 = 
CBOOL(BgL_auxz00_4932); } } 
if(BgL_test2505z00_1117)
{ /* ./Lalr/lalr.scm 782 */
BgL_arg2500z00_1113 = ((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 782 */
BgL_arg2500z00_1113 = ((bool_t)1); } } 
BgL_arg2501z00_1114 = 
CDR(BgL_stpz00_1104); 
BgL_arg2502z00_1115 = 
(BgL_rp2z00_1105-((long)1)); 
{ /* ./Lalr/lalr.scm 785 */
long BgL_arg2510z00_1118;
BgL_arg2510z00_1118 = 
BGl_mapzd2gotozd2zz__lalr_expandz00(
CAR(BgL_stpz00_1104), BgL_za2rpza2_1111); 
{ /* ./Lalr/lalr.scm 785 */
obj_t BgL_auxz00_4940;
BgL_auxz00_4940 = 
BINT(BgL_arg2510z00_1118); 
BgL_arg2503z00_1116 = 
MAKE_PAIR(BgL_auxz00_4940, BgL_edgpz00_1106); } } 
{ 
obj_t BgL_edgpz00_4946;long BgL_rp2z00_4945;obj_t BgL_stpz00_4944;bool_t BgL_donez00_4943;
BgL_donez00_4943 = BgL_arg2500z00_1113; 
BgL_stpz00_4944 = BgL_arg2501z00_1114; 
BgL_rp2z00_4945 = BgL_arg2502z00_1115; 
BgL_edgpz00_4946 = BgL_arg2503z00_1116; 
BgL_edgpz00_1106 = BgL_edgpz00_4946; 
BgL_rp2z00_1105 = BgL_rp2z00_4945; 
BgL_stpz00_1104 = BgL_stpz00_4944; 
BgL_donez00_1103 = BgL_donez00_4943; 
goto BgL_loop2z00_1107;} }  else 
{ 
bool_t BgL_donez00_4947;
BgL_donez00_4947 = ((bool_t)1); 
BgL_donez00_1103 = BgL_donez00_4947; 
goto BgL_loop2z00_1107;} } } } } } } } } }  else 
{ /* ./Lalr/lalr.scm 789 */
obj_t BgL_vectorz00_2754;int BgL_kz00_2755;
BgL_vectorz00_2754 = BGl_includesz00zz__lalr_globalz00; 
BgL_kz00_2755 = 
(int)(BgL_iz00_1078); 
{ /* ./Lalr/lalr.scm 789 */
obj_t BgL_xz00_3272;
BgL_xz00_3272 = 
VECTOR_SET(BgL_vectorz00_2754,BgL_kz00_2755,BgL_edgesz00_1084); BUNSPEC; } } } } 
{ 
long BgL_iz00_4957;
BgL_iz00_4957 = 
(BgL_iz00_1078+((long)1)); 
BgL_iz00_1078 = BgL_iz00_4957; 
goto BgL_zc3anonymousza32461ze3z83_1079;} } } 
return ( 
BGl_includesz00zz__lalr_globalz00 = 
BGl_transposez00zz__lalr_expandz00(BGl_includesz00zz__lalr_globalz00, BGl_ngotosz00zz__lalr_globalz00), BUNSPEC) ;} } 
}



/* compute-lookaheads */
bool_t BGl_computezd2lookaheadszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 794 */
{ /* ./Lalr/lalr.scm 795 */
obj_t BgL_nz00_1139;
{ 
int BgL_auxz00_4960;
BgL_auxz00_4960 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BgL_nz00_1139 = 
VECTOR_REF(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_4960); } 
{ 
long BgL_iz00_1140;
BgL_iz00_1140 = ((long)0); 
BgL_loopz00_1141:
{ /* ./Lalr/lalr.scm 797 */
bool_t BgL_testz00_4963;
{ /* ./Lalr/lalr.scm 797 */
long BgL_auxz00_4964;
BgL_auxz00_4964 = 
(long)CINT(BgL_nz00_1139); 
BgL_testz00_4963 = 
(BgL_iz00_1140<BgL_auxz00_4964); } 
if(BgL_testz00_4963)
{ 
obj_t BgL_spz00_1143;
{ 
int BgL_auxz00_5005;
BgL_auxz00_5005 = 
(int)(BgL_iz00_1140); 
BgL_spz00_1143 = 
VECTOR_REF(BGl_lookbackz00zz__lalr_globalz00,BgL_auxz00_5005); } 
BgL_loop2z00_1144:
if(
PAIRP(BgL_spz00_1143))
{ /* ./Lalr/lalr.scm 800 */
obj_t BgL_lazd2izd2_1147;obj_t BgL_fzd2jzd2_1148;
{ 
int BgL_auxz00_4969;
BgL_auxz00_4969 = 
(int)(BgL_iz00_1140); 
BgL_lazd2izd2_1147 = 
VECTOR_REF(BGl_LAz00zz__lalr_globalz00,BgL_auxz00_4969); } 
{ /* ./Lalr/lalr.scm 801 */
obj_t BgL_arg2589z00_1159;
BgL_arg2589z00_1159 = 
CAR(BgL_spz00_1143); 
{ 
int BgL_auxz00_4973;
BgL_auxz00_4973 = 
CINT(BgL_arg2589z00_1159); 
BgL_fzd2jzd2_1148 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_4973); } } 
{ 
long BgL_iz00_1150;
BgL_iz00_1150 = ((long)0); 
BgL_zc3anonymousza32565ze3z83_1151:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1150), BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 802 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 802 */
{ /* ./Lalr/lalr.scm 802 */
long BgL_arg2568z00_1153;
{ /* ./Lalr/lalr.scm 802 */
obj_t BgL_arg2571z00_1154;obj_t BgL_arg2573z00_1155;
{ 
int BgL_auxz00_4979;
BgL_auxz00_4979 = 
(int)(BgL_iz00_1150); 
BgL_arg2571z00_1154 = 
VECTOR_REF(BgL_lazd2izd2_1147,BgL_auxz00_4979); } 
{ 
int BgL_auxz00_4982;
BgL_auxz00_4982 = 
(int)(BgL_iz00_1150); 
BgL_arg2573z00_1155 = 
VECTOR_REF(BgL_fzd2jzd2_1148,BgL_auxz00_4982); } 
{ /* ./Lalr/lalr.scm 802 */
long BgL_auxz00_4987;long BgL_auxz00_4985;
BgL_auxz00_4987 = 
(long)CINT(BgL_arg2573z00_1155); 
BgL_auxz00_4985 = 
(long)CINT(BgL_arg2571z00_1154); 
BgL_arg2568z00_1153 = 
(BgL_auxz00_4985 | BgL_auxz00_4987); } } 
{ 
obj_t BgL_auxz00_4992;int BgL_auxz00_4990;
BgL_auxz00_4992 = 
BINT(BgL_arg2568z00_1153); 
BgL_auxz00_4990 = 
(int)(BgL_iz00_1150); 
VECTOR_SET(BgL_lazd2izd2_1147,BgL_auxz00_4990,BgL_auxz00_4992); } } 
{ 
long BgL_iz00_4995;
{ /* ./Lalr/lalr.scm 802 */
obj_t BgL_auxz00_4996;
BgL_auxz00_4996 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1150), 
BINT(((long)1))); 
BgL_iz00_4995 = 
(long)CINT(BgL_auxz00_4996); } 
BgL_iz00_1150 = BgL_iz00_4995; 
goto BgL_zc3anonymousza32565ze3z83_1151;} } } 
{ 
obj_t BgL_spz00_5001;
BgL_spz00_5001 = 
CDR(BgL_spz00_1143); 
BgL_spz00_1143 = BgL_spz00_5001; 
goto BgL_loop2z00_1144;} }  else 
{ 
long BgL_iz00_5003;
BgL_iz00_5003 = 
(BgL_iz00_1140+((long)1)); 
BgL_iz00_1140 = BgL_iz00_5003; 
goto BgL_loopz00_1141;} }  else 
{ /* ./Lalr/lalr.scm 797 */
return ((bool_t)0);} } } } } 
}



/* digraph */
bool_t BGl_digraphz00zz__lalr_expandz00(obj_t BgL_relationz00_20)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 808 */
{ /* ./Lalr/lalr.scm 816 */
obj_t BgL_rz00_1162;obj_t BgL_topz00_1163;obj_t BgL_verticesz00_1164;obj_t BgL_indexz00_1165;obj_t BgL_infinityz00_1166;
BgL_rz00_1162 = 
MAKE_CELL(BUNSPEC); 
BgL_topz00_1163 = 
MAKE_CELL(BUNSPEC); 
BgL_verticesz00_1164 = 
MAKE_CELL(BUNSPEC); 
BgL_indexz00_1165 = 
MAKE_CELL(BUNSPEC); 
BgL_infinityz00_1166 = 
MAKE_CELL(BUNSPEC); 
{ /* ./Lalr/lalr.scm 809 */
obj_t BgL_auxz00_3240;
{ /* ./Lalr/lalr.scm 809 */
long BgL_za71za7_2827;
BgL_za71za7_2827 = 
(long)CINT(BGl_ngotosz00zz__lalr_globalz00); 
{ /* ./Lalr/lalr.scm 809 */
long BgL_auxz00_5009;
BgL_auxz00_5009 = 
(BgL_za71za7_2827+((long)2)); 
BgL_auxz00_3240 = 
BINT(BgL_auxz00_5009); } } 
CELL_SET(BgL_infinityz00_1166, BgL_auxz00_3240); } 
{ /* ./Lalr/lalr.scm 810 */
obj_t BgL_auxz00_3241;
{ /* ./Lalr/lalr.scm 810 */
long BgL_arg2713z00_1223;
{ /* ./Lalr/lalr.scm 810 */
long BgL_auxz00_5012;
BgL_auxz00_5012 = 
(long)CINT(BGl_ngotosz00zz__lalr_globalz00); 
BgL_arg2713z00_1223 = 
(BgL_auxz00_5012+((long)1)); } 
{ /* ./Lalr/lalr.scm 810 */
obj_t BgL_auxz00_5017;int BgL_auxz00_5015;
BgL_auxz00_5017 = 
BINT(((long)0)); 
BgL_auxz00_5015 = 
(int)(BgL_arg2713z00_1223); 
BgL_auxz00_3241 = 
make_vector(BgL_auxz00_5015, BgL_auxz00_5017); } } 
CELL_SET(BgL_indexz00_1165, BgL_auxz00_3241); } 
{ /* ./Lalr/lalr.scm 811 */
obj_t BgL_auxz00_3242;
{ /* ./Lalr/lalr.scm 811 */
long BgL_arg2708z00_1221;
{ /* ./Lalr/lalr.scm 811 */
long BgL_auxz00_5020;
BgL_auxz00_5020 = 
(long)CINT(BGl_ngotosz00zz__lalr_globalz00); 
BgL_arg2708z00_1221 = 
(BgL_auxz00_5020+((long)1)); } 
{ /* ./Lalr/lalr.scm 811 */
obj_t BgL_auxz00_5025;int BgL_auxz00_5023;
BgL_auxz00_5025 = 
BINT(((long)0)); 
BgL_auxz00_5023 = 
(int)(BgL_arg2708z00_1221); 
BgL_auxz00_3242 = 
make_vector(BgL_auxz00_5023, BgL_auxz00_5025); } } 
CELL_SET(BgL_verticesz00_1164, BgL_auxz00_3242); } 
{ /* ./Lalr/lalr.scm 812 */
obj_t BgL_auxz00_3243;
BgL_auxz00_3243 = 
BINT(((long)0)); 
CELL_SET(BgL_topz00_1163, BgL_auxz00_3243); } 
{ /* ./Lalr/lalr.scm 813 */
obj_t BgL_auxz00_3244;
BgL_auxz00_3244 = BgL_relationz00_20; 
CELL_SET(BgL_rz00_1162, BgL_auxz00_3244); } 
{ 
long BgL_iz00_1167;
BgL_iz00_1167 = ((long)0); 
BgL_loopz00_1168:
{ /* ./Lalr/lalr.scm 847 */
bool_t BgL_testz00_5029;
{ /* ./Lalr/lalr.scm 847 */
long BgL_auxz00_5030;
BgL_auxz00_5030 = 
(long)CINT(BGl_ngotosz00zz__lalr_globalz00); 
BgL_testz00_5029 = 
(BgL_iz00_1167<BgL_auxz00_5030); } 
if(BgL_testz00_5029)
{ /* ./Lalr/lalr.scm 847 */
{ /* ./Lalr/lalr.scm 849 */
bool_t BgL_test2601z00_1170;
{ /* ./Lalr/lalr.scm 849 */
bool_t BgL_test2603z00_1171;
{ /* ./Lalr/lalr.scm 849 */
obj_t BgL_arg2610z00_1174;
{ /* ./Lalr/lalr.scm 849 */
obj_t BgL_vectorz00_2835;int BgL_kz00_2836;
BgL_vectorz00_2835 = 
CELL_REF(BgL_indexz00_1165); 
BgL_kz00_2836 = 
(int)(BgL_iz00_1167); 
BgL_arg2610z00_1174 = 
VECTOR_REF(BgL_vectorz00_2835,BgL_kz00_2836); } 
BgL_test2603z00_1171 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(((long)0)), BgL_arg2610z00_1174); } 
if(BgL_test2603z00_1171)
{ /* ./Lalr/lalr.scm 850 */
obj_t BgL_arg2605z00_1172;
{ /* ./Lalr/lalr.scm 850 */
obj_t BgL_vectorz00_2837;int BgL_kz00_2838;
BgL_vectorz00_2837 = 
CELL_REF(BgL_rz00_1162); 
BgL_kz00_2838 = 
(int)(BgL_iz00_1167); 
BgL_arg2605z00_1172 = 
VECTOR_REF(BgL_vectorz00_2837,BgL_kz00_2838); } 
BgL_test2601z00_1170 = 
PAIRP(BgL_arg2605z00_1172); }  else 
{ /* ./Lalr/lalr.scm 849 */
BgL_test2601z00_1170 = ((bool_t)0); } } 
if(BgL_test2601z00_1170)
{ /* ./Lalr/lalr.scm 849 */
BGl_traversez00zz__lalr_expandz00(BgL_infinityz00_1166, BgL_rz00_1162, BgL_indexz00_1165, BgL_verticesz00_1164, BgL_topz00_1163, 
BINT(BgL_iz00_1167)); }  else 
{ /* ./Lalr/lalr.scm 849 */((bool_t)0); } } 
{ 
long BgL_iz00_5044;
BgL_iz00_5044 = 
(BgL_iz00_1167+((long)1)); 
BgL_iz00_1167 = BgL_iz00_5044; 
goto BgL_loopz00_1168;} }  else 
{ /* ./Lalr/lalr.scm 847 */
return ((bool_t)0);} } } } } 
}



/* traverse */
bool_t BGl_traversez00zz__lalr_expandz00(obj_t BgL_infinityz00_3237, obj_t BgL_rz00_3236, obj_t BgL_indexz00_3235, obj_t BgL_verticesz00_3234, obj_t BgL_topz00_3233, obj_t BgL_iz00_1176)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 816 */
{ /* ./Lalr/lalr.scm 816 */
obj_t BgL_auxz00_3238;
{ /* ./Lalr/lalr.scm 816 */
long BgL_za72za7_2843;
{ /* ./Lalr/lalr.scm 816 */
obj_t BgL_auxz00_5046;
BgL_auxz00_5046 = 
CELL_REF(BgL_topz00_3233); 
BgL_za72za7_2843 = 
(long)CINT(BgL_auxz00_5046); } 
{ /* ./Lalr/lalr.scm 816 */
long BgL_auxz00_5048;
BgL_auxz00_5048 = 
(((long)1)+BgL_za72za7_2843); 
BgL_auxz00_3238 = 
BINT(BgL_auxz00_5048); } } 
CELL_SET(BgL_topz00_3233, BgL_auxz00_3238); } 
{ /* ./Lalr/lalr.scm 817 */
obj_t BgL_vectorz00_2844;int BgL_kz00_2845;
BgL_vectorz00_2844 = 
CELL_REF(BgL_verticesz00_3234); 
{ /* ./Lalr/lalr.scm 817 */
obj_t BgL_auxz00_5051;
BgL_auxz00_5051 = 
CELL_REF(BgL_topz00_3233); 
BgL_kz00_2845 = 
CINT(BgL_auxz00_5051); } 
VECTOR_SET(BgL_vectorz00_2844,BgL_kz00_2845,BgL_iz00_1176); } 
{ /* ./Lalr/lalr.scm 818 */
obj_t BgL_heightz00_1178;
BgL_heightz00_1178 = 
CELL_REF(BgL_topz00_3233); 
{ /* ./Lalr/lalr.scm 819 */
obj_t BgL_vectorz00_2847;int BgL_kz00_2848;
BgL_vectorz00_2847 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2848 = 
CINT(BgL_iz00_1176); 
VECTOR_SET(BgL_vectorz00_2847,BgL_kz00_2848,BgL_heightz00_1178); } 
{ /* ./Lalr/lalr.scm 820 */
obj_t BgL_rpz00_1179;
{ /* ./Lalr/lalr.scm 820 */
obj_t BgL_vectorz00_2850;int BgL_kz00_2851;
BgL_vectorz00_2850 = 
CELL_REF(BgL_rz00_3236); 
BgL_kz00_2851 = 
CINT(BgL_iz00_1176); 
BgL_rpz00_1179 = 
VECTOR_REF(BgL_vectorz00_2850,BgL_kz00_2851); } 
if(
PAIRP(BgL_rpz00_1179))
{ 
obj_t BgL_rp2z00_1181;
BgL_rp2z00_1181 = BgL_rpz00_1179; 
BgL_loopz00_1182:
if(
PAIRP(BgL_rp2z00_1181))
{ /* ./Lalr/lalr.scm 824 */
obj_t BgL_jz00_1184;
BgL_jz00_1184 = 
CAR(BgL_rp2z00_1181); 
{ /* ./Lalr/lalr.scm 825 */
bool_t BgL_test2625z00_1185;
{ /* ./Lalr/lalr.scm 825 */
obj_t BgL_arg2629z00_1187;
{ /* ./Lalr/lalr.scm 825 */
obj_t BgL_vectorz00_2855;int BgL_kz00_2856;
BgL_vectorz00_2855 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2856 = 
CINT(BgL_jz00_1184); 
BgL_arg2629z00_1187 = 
VECTOR_REF(BgL_vectorz00_2855,BgL_kz00_2856); } 
BgL_test2625z00_1185 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(((long)0)), BgL_arg2629z00_1187); } 
if(BgL_test2625z00_1185)
{ /* ./Lalr/lalr.scm 825 */
BGl_traversez00zz__lalr_expandz00(BgL_infinityz00_3237, BgL_rz00_3236, BgL_indexz00_3235, BgL_verticesz00_3234, BgL_topz00_3233, BgL_jz00_1184); }  else 
{ /* ./Lalr/lalr.scm 825 */((bool_t)0); } } 
{ /* ./Lalr/lalr.scm 827 */
bool_t BgL_test2632z00_1188;
{ /* ./Lalr/lalr.scm 827 */
obj_t BgL_arg2638z00_1190;obj_t BgL_arg2639z00_1191;
{ /* ./Lalr/lalr.scm 827 */
obj_t BgL_vectorz00_2857;int BgL_kz00_2858;
BgL_vectorz00_2857 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2858 = 
CINT(BgL_iz00_1176); 
BgL_arg2638z00_1190 = 
VECTOR_REF(BgL_vectorz00_2857,BgL_kz00_2858); } 
{ /* ./Lalr/lalr.scm 828 */
obj_t BgL_vectorz00_2859;int BgL_kz00_2860;
BgL_vectorz00_2859 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2860 = 
CINT(BgL_jz00_1184); 
BgL_arg2639z00_1191 = 
VECTOR_REF(BgL_vectorz00_2859,BgL_kz00_2860); } 
{ /* ./Lalr/lalr.scm 827 */
long BgL_auxz00_5075;long BgL_auxz00_5073;
BgL_auxz00_5075 = 
(long)CINT(BgL_arg2639z00_1191); 
BgL_auxz00_5073 = 
(long)CINT(BgL_arg2638z00_1190); 
BgL_test2632z00_1188 = 
(BgL_auxz00_5073>BgL_auxz00_5075); } } 
if(BgL_test2632z00_1188)
{ /* ./Lalr/lalr.scm 829 */
obj_t BgL_arg2634z00_1189;
{ /* ./Lalr/lalr.scm 829 */
obj_t BgL_vectorz00_2863;int BgL_kz00_2864;
BgL_vectorz00_2863 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2864 = 
CINT(BgL_jz00_1184); 
BgL_arg2634z00_1189 = 
VECTOR_REF(BgL_vectorz00_2863,BgL_kz00_2864); } 
{ /* ./Lalr/lalr.scm 829 */
obj_t BgL_vectorz00_2865;int BgL_kz00_2866;
BgL_vectorz00_2865 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2866 = 
CINT(BgL_iz00_1176); 
VECTOR_SET(BgL_vectorz00_2865,BgL_kz00_2866,BgL_arg2634z00_1189); } }  else 
{ /* ./Lalr/lalr.scm 827 */BFALSE; } } 
{ /* ./Lalr/lalr.scm 830 */
obj_t BgL_fzd2izd2_1192;obj_t BgL_fzd2jzd2_1193;
{ 
int BgL_auxz00_5083;
BgL_auxz00_5083 = 
CINT(BgL_iz00_1176); 
BgL_fzd2izd2_1192 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_5083); } 
{ 
int BgL_auxz00_5086;
BgL_auxz00_5086 = 
CINT(BgL_jz00_1184); 
BgL_fzd2jzd2_1193 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_5086); } 
{ 
long BgL_iz00_1195;
BgL_iz00_1195 = ((long)0); 
BgL_zc3anonymousza32644ze3z83_1196:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1195), BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 832 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 832 */
{ /* ./Lalr/lalr.scm 832 */
long BgL_arg2647z00_1198;
{ /* ./Lalr/lalr.scm 832 */
obj_t BgL_arg2650z00_1199;obj_t BgL_arg2651z00_1200;
{ 
int BgL_auxz00_5092;
BgL_auxz00_5092 = 
(int)(BgL_iz00_1195); 
BgL_arg2650z00_1199 = 
VECTOR_REF(BgL_fzd2izd2_1192,BgL_auxz00_5092); } 
{ 
int BgL_auxz00_5095;
BgL_auxz00_5095 = 
(int)(BgL_iz00_1195); 
BgL_arg2651z00_1200 = 
VECTOR_REF(BgL_fzd2jzd2_1193,BgL_auxz00_5095); } 
{ /* ./Lalr/lalr.scm 832 */
long BgL_auxz00_5100;long BgL_auxz00_5098;
BgL_auxz00_5100 = 
(long)CINT(BgL_arg2651z00_1200); 
BgL_auxz00_5098 = 
(long)CINT(BgL_arg2650z00_1199); 
BgL_arg2647z00_1198 = 
(BgL_auxz00_5098 | BgL_auxz00_5100); } } 
{ 
obj_t BgL_auxz00_5105;int BgL_auxz00_5103;
BgL_auxz00_5105 = 
BINT(BgL_arg2647z00_1198); 
BgL_auxz00_5103 = 
(int)(BgL_iz00_1195); 
VECTOR_SET(BgL_fzd2izd2_1192,BgL_auxz00_5103,BgL_auxz00_5105); } } 
{ 
long BgL_iz00_5108;
{ /* ./Lalr/lalr.scm 832 */
obj_t BgL_auxz00_5109;
BgL_auxz00_5109 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1195), 
BINT(((long)1))); 
BgL_iz00_5108 = 
(long)CINT(BgL_auxz00_5109); } 
BgL_iz00_1195 = BgL_iz00_5108; 
goto BgL_zc3anonymousza32644ze3z83_1196;} } } } 
{ 
obj_t BgL_rp2z00_5114;
BgL_rp2z00_5114 = 
CDR(BgL_rp2z00_1181); 
BgL_rp2z00_1181 = BgL_rp2z00_5114; 
goto BgL_loopz00_1182;} }  else 
{ /* ./Lalr/lalr.scm 823 */((bool_t)0); } }  else 
{ /* ./Lalr/lalr.scm 821 */((bool_t)0); } 
{ /* ./Lalr/lalr.scm 834 */
bool_t BgL_test2669z00_1204;
{ /* ./Lalr/lalr.scm 834 */
obj_t BgL_arg2703z00_1220;
{ /* ./Lalr/lalr.scm 834 */
obj_t BgL_vectorz00_2882;int BgL_kz00_2883;
BgL_vectorz00_2882 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2883 = 
CINT(BgL_iz00_1176); 
BgL_arg2703z00_1220 = 
VECTOR_REF(BgL_vectorz00_2882,BgL_kz00_2883); } 
BgL_test2669z00_1204 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_arg2703z00_1220, BgL_heightz00_1178); } 
if(BgL_test2669z00_1204)
{ 

BgL_loopz00_1205:
{ /* ./Lalr/lalr.scm 836 */
obj_t BgL_jz00_1206;
{ /* ./Lalr/lalr.scm 836 */
obj_t BgL_vectorz00_2884;int BgL_kz00_2885;
BgL_vectorz00_2884 = 
CELL_REF(BgL_verticesz00_3234); 
{ /* ./Lalr/lalr.scm 836 */
obj_t BgL_auxz00_5120;
BgL_auxz00_5120 = 
CELL_REF(BgL_topz00_3233); 
BgL_kz00_2885 = 
CINT(BgL_auxz00_5120); } 
BgL_jz00_1206 = 
VECTOR_REF(BgL_vectorz00_2884,BgL_kz00_2885); } 
{ /* ./Lalr/lalr.scm 837 */
obj_t BgL_auxz00_3239;
{ /* ./Lalr/lalr.scm 837 */
long BgL_za71za7_2886;
{ /* ./Lalr/lalr.scm 837 */
obj_t BgL_auxz00_5123;
BgL_auxz00_5123 = 
CELL_REF(BgL_topz00_3233); 
BgL_za71za7_2886 = 
(long)CINT(BgL_auxz00_5123); } 
{ /* ./Lalr/lalr.scm 837 */
long BgL_auxz00_5125;
BgL_auxz00_5125 = 
(BgL_za71za7_2886-((long)1)); 
BgL_auxz00_3239 = 
BINT(BgL_auxz00_5125); } } 
CELL_SET(BgL_topz00_3233, BgL_auxz00_3239); } 
{ /* ./Lalr/lalr.scm 838 */
obj_t BgL_vectorz00_2888;int BgL_kz00_2889;obj_t BgL_objz00_2890;
BgL_vectorz00_2888 = 
CELL_REF(BgL_indexz00_3235); 
BgL_kz00_2889 = 
CINT(BgL_jz00_1206); 
BgL_objz00_2890 = 
CELL_REF(BgL_infinityz00_3237); 
VECTOR_SET(BgL_vectorz00_2888,BgL_kz00_2889,BgL_objz00_2890); } 
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_iz00_1176, BgL_jz00_1206))
{ /* ./Lalr/lalr.scm 839 */
return ((bool_t)0);}  else 
{ /* ./Lalr/lalr.scm 839 */
{ 
long BgL_iz00_1209;
BgL_iz00_1209 = ((long)0); 
BgL_zc3anonymousza32675ze3z83_1210:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1209), BGl_tokenzd2setzd2siza7eza7zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 842 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 842 */
{ /* ./Lalr/lalr.scm 841 */
obj_t BgL_arg2678z00_1212;long BgL_arg2679z00_1213;
{ 
int BgL_auxz00_5135;
BgL_auxz00_5135 = 
(int)(BgL_iz00_1209); 
BgL_arg2678z00_1212 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_5135); } 
{ /* ./Lalr/lalr.scm 841 */
obj_t BgL_arg2683z00_1214;obj_t BgL_arg2684z00_1215;
{ 
int BgL_auxz00_5142;obj_t BgL_auxz00_5138;
BgL_auxz00_5142 = 
(int)(BgL_iz00_1209); 
{ 
int BgL_auxz00_5139;
BgL_auxz00_5139 = 
(int)(BgL_iz00_1209); 
BgL_auxz00_5138 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_5139); } 
BgL_arg2683z00_1214 = 
VECTOR_REF(BgL_auxz00_5138,BgL_auxz00_5142); } 
{ 
int BgL_auxz00_5149;obj_t BgL_auxz00_5145;
BgL_auxz00_5149 = 
(int)(BgL_iz00_1209); 
{ 
int BgL_auxz00_5146;
BgL_auxz00_5146 = 
CINT(BgL_jz00_1206); 
BgL_auxz00_5145 = 
VECTOR_REF(BGl_Fz00zz__lalr_globalz00,BgL_auxz00_5146); } 
BgL_arg2684z00_1215 = 
VECTOR_REF(BgL_auxz00_5145,BgL_auxz00_5149); } 
{ /* ./Lalr/lalr.scm 842 */
long BgL_auxz00_5154;long BgL_auxz00_5152;
BgL_auxz00_5154 = 
(long)CINT(BgL_arg2684z00_1215); 
BgL_auxz00_5152 = 
(long)CINT(BgL_arg2683z00_1214); 
BgL_arg2679z00_1213 = 
(BgL_auxz00_5152 | BgL_auxz00_5154); } } 
{ 
obj_t BgL_auxz00_5159;int BgL_auxz00_5157;
BgL_auxz00_5159 = 
BINT(BgL_arg2679z00_1213); 
BgL_auxz00_5157 = 
(int)(BgL_iz00_1209); 
VECTOR_SET(BgL_arg2678z00_1212,BgL_auxz00_5157,BgL_auxz00_5159); } } 
{ 
long BgL_iz00_5162;
{ /* ./Lalr/lalr.scm 842 */
obj_t BgL_auxz00_5163;
BgL_auxz00_5163 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1209), 
BINT(((long)1))); 
BgL_iz00_5162 = 
(long)CINT(BgL_auxz00_5163); } 
BgL_iz00_1209 = BgL_iz00_5162; 
goto BgL_zc3anonymousza32675ze3z83_1210;} } } 
goto BgL_loopz00_1205;} } }  else 
{ /* ./Lalr/lalr.scm 834 */
return ((bool_t)0);} } } } } 
}



/* build-rule */
obj_t BGl_buildzd2rulezd2zz__lalr_expandz00(long BgL_nz00_21)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 857 */
{ /* ./Lalr/lalr.scm 859 */
obj_t BgL_arg2719z00_1226;obj_t BgL_arg2720z00_1227;
{ /* ./Lalr/lalr.scm 859 */
obj_t BgL_arg2723z00_1228;
{ 
int BgL_auxz00_5168;
BgL_auxz00_5168 = 
(int)(BgL_nz00_21); 
BgL_arg2723z00_1228 = 
VECTOR_REF(BGl_rlhsz00zz__lalr_globalz00,BgL_auxz00_5168); } 
{ 
int BgL_auxz00_5171;
BgL_auxz00_5171 = 
CINT(BgL_arg2723z00_1228); 
BgL_arg2719z00_1226 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5171); } } 
{ /* ./Lalr/lalr.scm 860 */
obj_t BgL_auxz00_5174;
{ /* ./Lalr/lalr.scm 862 */
obj_t BgL_auxz00_5175;
{ 
int BgL_auxz00_5176;
BgL_auxz00_5176 = 
(int)(BgL_nz00_21); 
BgL_auxz00_5175 = 
VECTOR_REF(BGl_rrhsz00zz__lalr_globalz00,BgL_auxz00_5176); } 
BgL_auxz00_5174 = 
BGl_loopz72z72zz__lalr_expandz00(BgL_auxz00_5175); } 
BgL_arg2720z00_1227 = 
MAKE_PAIR(BGl_symbol4505z00zz__lalr_expandz00, BgL_auxz00_5174); } 
return 
MAKE_PAIR(BgL_arg2719z00_1226, BgL_arg2720z00_1227);} } 
}



/* loop' */
obj_t BGl_loopz72z72zz__lalr_expandz00(obj_t BgL_posz00_1231)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 862 */
{ /* ./Lalr/lalr.scm 863 */
obj_t BgL_xz00_1234;
{ 
int BgL_auxz00_5182;
BgL_auxz00_5182 = 
CINT(BgL_posz00_1231); 
BgL_xz00_1234 = 
VECTOR_REF(BGl_ritemz00zz__lalr_globalz00,BgL_auxz00_5182); } 
{ /* ./Lalr/lalr.scm 864 */
bool_t BgL_testz00_5185;
{ /* ./Lalr/lalr.scm 864 */
long BgL_auxz00_5186;
BgL_auxz00_5186 = 
(long)CINT(BgL_xz00_1234); 
BgL_testz00_5185 = 
(BgL_auxz00_5186<((long)0)); } 
if(BgL_testz00_5185)
{ /* ./Lalr/lalr.scm 864 */
return BNIL;}  else 
{ /* ./Lalr/lalr.scm 866 */
obj_t BgL_arg2736z00_1236;obj_t BgL_arg2737z00_1237;
{ 
int BgL_auxz00_5189;
BgL_auxz00_5189 = 
CINT(BgL_xz00_1234); 
BgL_arg2736z00_1236 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5189); } 
{ /* ./Lalr/lalr.scm 867 */
long BgL_arg2741z00_1238;
{ /* ./Lalr/lalr.scm 867 */
long BgL_auxz00_5192;
BgL_auxz00_5192 = 
(long)CINT(BgL_posz00_1231); 
BgL_arg2741z00_1238 = 
(BgL_auxz00_5192+((long)1)); } 
BgL_arg2737z00_1237 = 
BGl_loopz72z72zz__lalr_expandz00(
BINT(BgL_arg2741z00_1238)); } 
return 
MAKE_PAIR(BgL_arg2736z00_1236, BgL_arg2737z00_1237);} } } } 
}



/* build-tables */
obj_t BGl_buildzd2tableszd2zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 874 */
{ /* ./Lalr/lalr.scm 942 */
int BgL_auxz00_5198;
BgL_auxz00_5198 = 
CINT(BGl_nstatesz00zz__lalr_globalz00); 
BGl_actionzd2tablezd2zz__lalr_globalz00 = 
make_vector(BgL_auxz00_5198, BNIL); } 
{ 
long BgL_iz00_1246;
BgL_iz00_1246 = ((long)0); 
BgL_zc3anonymousza32762ze3z83_1247:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1246), BGl_nstatesz00zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 944 */((bool_t)0); }  else 
{ /* ./Lalr/lalr.scm 944 */
{ /* ./Lalr/lalr.scm 946 */
obj_t BgL_redz00_1249;
{ 
int BgL_auxz00_5204;
BgL_auxz00_5204 = 
(int)(BgL_iz00_1246); 
BgL_redz00_1249 = 
VECTOR_REF(BGl_reductionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5204); } 
{ /* ./Lalr/lalr.scm 947 */
bool_t BgL_test2764z00_1250;
if(
CBOOL(BgL_redz00_1249))
{ /* ./Lalr/lalr.scm 947 */
obj_t BgL_arg2838z00_1289;
{ 
int BgL_auxz00_5209;
BgL_auxz00_5209 = 
(int)(((long)1)); 
BgL_arg2838z00_1289 = 
VECTOR_REF(BgL_redz00_1249,BgL_auxz00_5209); } 
{ /* ./Lalr/lalr.scm 947 */
long BgL_auxz00_5212;
BgL_auxz00_5212 = 
(long)CINT(BgL_arg2838z00_1289); 
BgL_test2764z00_1250 = 
(BgL_auxz00_5212>=((long)1)); } }  else 
{ /* ./Lalr/lalr.scm 947 */
BgL_test2764z00_1250 = ((bool_t)0); } 
if(BgL_test2764z00_1250)
{ /* ./Lalr/lalr.scm 948 */
bool_t BgL_test2765z00_1251;
{ /* ./Lalr/lalr.scm 948 */
bool_t BgL_testz00_5216;
{ /* ./Lalr/lalr.scm 948 */
obj_t BgL_auxz00_5217;
{ 
int BgL_auxz00_5218;
BgL_auxz00_5218 = 
(int)(((long)1)); 
BgL_auxz00_5217 = 
VECTOR_REF(BgL_redz00_1249,BgL_auxz00_5218); } 
BgL_testz00_5216 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_auxz00_5217, 
BINT(((long)1))); } 
if(BgL_testz00_5216)
{ /* ./Lalr/lalr.scm 948 */
obj_t BgL_vectorz00_2942;int BgL_kz00_2943;
BgL_vectorz00_2942 = BGl_consistentz00zz__lalr_globalz00; 
BgL_kz00_2943 = 
(int)(BgL_iz00_1246); 
{ /* ./Lalr/lalr.scm 948 */
obj_t BgL_auxz00_5224;
BgL_auxz00_5224 = 
VECTOR_REF(BgL_vectorz00_2942,BgL_kz00_2943); 
BgL_test2765z00_1251 = 
CBOOL(BgL_auxz00_5224); } }  else 
{ /* ./Lalr/lalr.scm 948 */
BgL_test2765z00_1251 = ((bool_t)0); } } 
if(BgL_test2765z00_1251)
{ /* ./Lalr/lalr.scm 949 */
long BgL_arg2767z00_1252;
{ /* ./Lalr/lalr.scm 949 */
obj_t BgL_arg2770z00_1253;
{ /* ./Lalr/lalr.scm 949 */
obj_t BgL_auxz00_5228;
{ 
int BgL_auxz00_5229;
BgL_auxz00_5229 = 
(int)(((long)2)); 
BgL_auxz00_5228 = 
VECTOR_REF(BgL_redz00_1249,BgL_auxz00_5229); } 
BgL_arg2770z00_1253 = 
CAR(BgL_auxz00_5228); } 
{ /* ./Lalr/lalr.scm 949 */
long BgL_auxz00_5233;
BgL_auxz00_5233 = 
(long)CINT(BgL_arg2770z00_1253); 
BgL_arg2767z00_1252 = 
NEG(BgL_auxz00_5233); } } 
BGl_addzd2actionzd2zz__lalr_expandz00(
BINT(BgL_iz00_1246), BGl_za2defaultza2z00zz__lalr_expandz00, 
BINT(BgL_arg2767z00_1252)); }  else 
{ /* ./Lalr/lalr.scm 950 */
obj_t BgL_kz00_1255;
{ /* ./Lalr/lalr.scm 950 */
long BgL_arg2827z00_1285;
BgL_arg2827z00_1285 = 
(BgL_iz00_1246+((long)1)); 
{ 
int BgL_auxz00_5240;
BgL_auxz00_5240 = 
(int)(BgL_arg2827z00_1285); 
BgL_kz00_1255 = 
VECTOR_REF(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_5240); } } 
{ 
obj_t BgL_jz00_1256;
{ /* ./Lalr/lalr.scm 951 */
obj_t BgL_arg2777z00_1258;
{ 
int BgL_auxz00_5243;
BgL_auxz00_5243 = 
(int)(BgL_iz00_1246); 
BgL_arg2777z00_1258 = 
VECTOR_REF(BGl_lookaheadsz00zz__lalr_globalz00,BgL_auxz00_5243); } 
{ /* ./Lalr/lalr.scm 951 */
bool_t BgL_auxz00_5246;
BgL_jz00_1256 = BgL_arg2777z00_1258; 
BgL_loopz00_1257:
{ /* ./Lalr/lalr.scm 952 */
bool_t BgL_testz00_5247;
{ /* ./Lalr/lalr.scm 952 */
long BgL_auxz00_5250;long BgL_auxz00_5248;
BgL_auxz00_5250 = 
(long)CINT(BgL_kz00_1255); 
BgL_auxz00_5248 = 
(long)CINT(BgL_jz00_1256); 
BgL_testz00_5247 = 
(BgL_auxz00_5248<BgL_auxz00_5250); } 
if(BgL_testz00_5247)
{ /* ./Lalr/lalr.scm 953 */
long BgL_rulez00_1260;obj_t BgL_lavz00_1261;
{ /* ./Lalr/lalr.scm 953 */
obj_t BgL_arg2821z00_1284;
{ 
int BgL_auxz00_5253;
BgL_auxz00_5253 = 
CINT(BgL_jz00_1256); 
BgL_arg2821z00_1284 = 
VECTOR_REF(BGl_LArulenoz00zz__lalr_globalz00,BgL_auxz00_5253); } 
{ /* ./Lalr/lalr.scm 953 */
long BgL_auxz00_5256;
BgL_auxz00_5256 = 
(long)CINT(BgL_arg2821z00_1284); 
BgL_rulez00_1260 = 
NEG(BgL_auxz00_5256); } } 
{ 
int BgL_auxz00_5259;
BgL_auxz00_5259 = 
CINT(BgL_jz00_1256); 
BgL_lavz00_1261 = 
VECTOR_REF(BGl_LAz00zz__lalr_globalz00,BgL_auxz00_5259); } 
{ 
long BgL_tokenz00_1262;obj_t BgL_xz00_1263;long BgL_yz00_1264;long BgL_za7za7_1265;
BgL_tokenz00_1262 = ((long)0); 
{ 
int BgL_auxz00_5299;
BgL_auxz00_5299 = 
(int)(((long)0)); 
BgL_xz00_1263 = 
VECTOR_REF(BgL_lavz00_1261,BgL_auxz00_5299); } 
BgL_yz00_1264 = ((long)1); 
BgL_za7za7_1265 = ((long)0); 
BgL_loop2z00_1266:
{ /* ./Lalr/lalr.scm 956 */
bool_t BgL_testz00_5262;
{ /* ./Lalr/lalr.scm 956 */
long BgL_auxz00_5263;
BgL_auxz00_5263 = 
(long)CINT(BGl_ntermsz00zz__lalr_globalz00); 
BgL_testz00_5262 = 
(BgL_tokenz00_1262<BgL_auxz00_5263); } 
if(BgL_testz00_5262)
{ /* ./Lalr/lalr.scm 956 */
{ /* ./Lalr/lalr.scm 958 */
long BgL_inzd2lazd2setzf3zf3_1272;
BgL_inzd2lazd2setzf3zf3_1272 = 
BGl_moduloz00zz__r4_numbers_6_5_fixnumz00(
(long)CINT(BgL_xz00_1263), ((long)2)); 
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_inzd2lazd2setzf3zf3_1272), 
BINT(((long)1))))
{ /* ./Lalr/lalr.scm 959 */
BGl_addzd2actionzd2zz__lalr_expandz00(
BINT(BgL_iz00_1246), 
BINT(BgL_tokenz00_1262), 
BINT(BgL_rulez00_1260)); }  else 
{ /* ./Lalr/lalr.scm 959 */BFALSE; } } 
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_yz00_1264), 
BINT(((long)28))))
{ /* ./Lalr/lalr.scm 962 */
long BgL_arg2795z00_1275;obj_t BgL_arg2796z00_1276;long BgL_arg2798z00_1278;
BgL_arg2795z00_1275 = 
(BgL_tokenz00_1262+((long)1)); 
{ /* ./Lalr/lalr.scm 963 */
long BgL_arg2802z00_1279;
BgL_arg2802z00_1279 = 
(BgL_za7za7_1265+((long)1)); 
{ 
int BgL_auxz00_5282;
BgL_auxz00_5282 = 
(int)(BgL_arg2802z00_1279); 
BgL_arg2796z00_1276 = 
VECTOR_REF(BgL_lavz00_1261,BgL_auxz00_5282); } } 
BgL_arg2798z00_1278 = 
(BgL_za7za7_1265+((long)1)); 
{ 
long BgL_za7za7_5289;long BgL_yz00_5288;obj_t BgL_xz00_5287;long BgL_tokenz00_5286;
BgL_tokenz00_5286 = BgL_arg2795z00_1275; 
BgL_xz00_5287 = BgL_arg2796z00_1276; 
BgL_yz00_5288 = ((long)1); 
BgL_za7za7_5289 = BgL_arg2798z00_1278; 
BgL_za7za7_1265 = BgL_za7za7_5289; 
BgL_yz00_1264 = BgL_yz00_5288; 
BgL_xz00_1263 = BgL_xz00_5287; 
BgL_tokenz00_1262 = BgL_tokenz00_5286; 
goto BgL_loop2z00_1266;} }  else 
{ /* ./Lalr/lalr.scm 966 */
long BgL_arg2807z00_1280;long BgL_arg2808z00_1281;long BgL_arg2809z00_1282;
BgL_arg2807z00_1280 = 
(BgL_tokenz00_1262+((long)1)); 
{ /* ./Lalr/lalr.scm 966 */
long BgL_auxz00_5291;
BgL_auxz00_5291 = 
(long)CINT(BgL_xz00_1263); 
BgL_arg2808z00_1281 = 
(BgL_auxz00_5291/((long)2)); } 
BgL_arg2809z00_1282 = 
(BgL_yz00_1264+((long)1)); 
{ 
long BgL_yz00_5298;obj_t BgL_xz00_5296;long BgL_tokenz00_5295;
BgL_tokenz00_5295 = BgL_arg2807z00_1280; 
BgL_xz00_5296 = 
BINT(BgL_arg2808z00_1281); 
BgL_yz00_5298 = BgL_arg2809z00_1282; 
BgL_yz00_1264 = BgL_yz00_5298; 
BgL_xz00_1263 = BgL_xz00_5296; 
BgL_tokenz00_1262 = BgL_tokenz00_5295; 
goto BgL_loop2z00_1266;} } }  else 
{ /* ./Lalr/lalr.scm 956 */((bool_t)0); } } } 
{ /* ./Lalr/lalr.scm 967 */
long BgL_arg2817z00_1283;
{ /* ./Lalr/lalr.scm 967 */
long BgL_auxz00_5302;
BgL_auxz00_5302 = 
(long)CINT(BgL_jz00_1256); 
BgL_arg2817z00_1283 = 
(BgL_auxz00_5302+((long)1)); } 
{ 
obj_t BgL_jz00_5305;
BgL_jz00_5305 = 
BINT(BgL_arg2817z00_1283); 
BgL_jz00_1256 = BgL_jz00_5305; 
goto BgL_loopz00_1257;} } }  else 
{ /* ./Lalr/lalr.scm 952 */
BgL_auxz00_5246 = ((bool_t)0)
; } } 
BBOOL(BgL_auxz00_5246); } } } } }  else 
{ /* ./Lalr/lalr.scm 947 */BFALSE; } } } 
{ /* ./Lalr/lalr.scm 969 */
obj_t BgL_shiftpz00_1291;
{ 
int BgL_auxz00_5308;
BgL_auxz00_5308 = 
(int)(BgL_iz00_1246); 
BgL_shiftpz00_1291 = 
VECTOR_REF(BGl_shiftzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5308); } 
if(
CBOOL(BgL_shiftpz00_1291))
{ 
obj_t BgL_kz00_1292;
{ 
int BgL_auxz00_5335;
BgL_auxz00_5335 = 
(int)(((long)2)); 
BgL_kz00_1292 = 
VECTOR_REF(BgL_shiftpz00_1291,BgL_auxz00_5335); } 
BgL_loopz00_1293:
if(
PAIRP(BgL_kz00_1292))
{ /* ./Lalr/lalr.scm 973 */
obj_t BgL_statez00_1296;
BgL_statez00_1296 = 
CAR(BgL_kz00_1292); 
{ /* ./Lalr/lalr.scm 973 */
obj_t BgL_symbolz00_1297;
{ 
int BgL_auxz00_5316;
BgL_auxz00_5316 = 
CINT(BgL_statez00_1296); 
BgL_symbolz00_1297 = 
VECTOR_REF(BGl_acceszd2symbolzd2zz__lalr_globalz00,BgL_auxz00_5316); } 
{ /* ./Lalr/lalr.scm 974 */

{ /* ./Lalr/lalr.scm 975 */
bool_t BgL_testz00_5319;
{ /* ./Lalr/lalr.scm 975 */
long BgL_auxz00_5322;long BgL_auxz00_5320;
BgL_auxz00_5322 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_5320 = 
(long)CINT(BgL_symbolz00_1297); 
BgL_testz00_5319 = 
(BgL_auxz00_5320>=BgL_auxz00_5322); } 
if(BgL_testz00_5319)
{ /* ./Lalr/lalr.scm 976 */
long BgL_arg2850z00_1299;
{ /* ./Lalr/lalr.scm 976 */
long BgL_auxz00_5327;long BgL_auxz00_5325;
BgL_auxz00_5327 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_5325 = 
(long)CINT(BgL_symbolz00_1297); 
BgL_arg2850z00_1299 = 
(BgL_auxz00_5325-BgL_auxz00_5327); } 
BGl_addzd2actionzd2zz__lalr_expandz00(
BINT(BgL_iz00_1246), 
BINT(BgL_arg2850z00_1299), BgL_statez00_1296); }  else 
{ /* ./Lalr/lalr.scm 975 */BFALSE; } } 
{ 
obj_t BgL_kz00_5333;
BgL_kz00_5333 = 
CDR(BgL_kz00_1292); 
BgL_kz00_1292 = BgL_kz00_5333; 
goto BgL_loopz00_1293;} } } }  else 
{ /* ./Lalr/lalr.scm 972 */((bool_t)0); } }  else 
{ /* ./Lalr/lalr.scm 970 */((bool_t)0); } } 
{ 
long BgL_iz00_5338;
BgL_iz00_5338 = 
(BgL_iz00_1246+((long)1)); 
BgL_iz00_1246 = BgL_iz00_5338; 
goto BgL_zc3anonymousza32762ze3z83_1247;} } } 
return 
BGl_addzd2actionzd2zz__lalr_expandz00(BGl_finalzd2statezd2zz__lalr_globalz00, 
BINT(((long)0)), BGl_symbol4506z00zz__lalr_expandz00);} 
}



/* loop */
obj_t BGl_loopz00zz__lalr_expandz00(obj_t BgL_stz00_3232, obj_t BgL_iterz00_1347)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 915 */
BGl_loopz00zz__lalr_expandz00:
if(
NULLP(BgL_iterz00_1347))
{ /* ./Lalr/lalr.scm 919 */
return BgL_iterz00_1347;}  else 
{ /* ./Lalr/lalr.scm 919 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(
CAR(BgL_iterz00_1347), BgL_stz00_3232))
{ /* ./Lalr/lalr.scm 921 */
{ 
obj_t BgL_iterz00_5347;
BgL_iterz00_5347 = 
CDR(BgL_iterz00_1347); 
BgL_iterz00_1347 = BgL_iterz00_5347; 
goto BGl_loopz00zz__lalr_expandz00;} }  else 
{ /* ./Lalr/lalr.scm 921 */
{ /* ./Lalr/lalr.scm 924 */
obj_t BgL_auxz00_5351;obj_t BgL_auxz00_5349;
BgL_auxz00_5351 = 
BGl_loopz00zz__lalr_expandz00(BgL_stz00_3232, 
CDR(BgL_iterz00_1347)); 
BgL_auxz00_5349 = 
CAR(BgL_iterz00_1347); 
return 
MAKE_PAIR(BgL_auxz00_5349, BgL_auxz00_5351);} } } } 
}



/* add-action */
obj_t BGl_addzd2actionzd2zz__lalr_expandz00(obj_t BgL_stz00_1303, obj_t BgL_symz00_1304, obj_t BgL_actz00_1305)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 940 */
{ /* ./Lalr/lalr.scm 877 */
obj_t BgL_xz00_1307;
{ 
int BgL_auxz00_5355;
BgL_auxz00_5355 = 
CINT(BgL_stz00_1303); 
BgL_xz00_1307 = 
VECTOR_REF(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5355); } 
{ /* ./Lalr/lalr.scm 877 */
obj_t BgL_yz00_1308;
BgL_yz00_1308 = 
BGl_assvz00zz__r4_pairs_and_lists_6_3z00(BgL_symz00_1304, BgL_xz00_1307); 
{ /* ./Lalr/lalr.scm 878 */

if(
CBOOL(BgL_yz00_1308))
{ /* ./Lalr/lalr.scm 880 */
obj_t BgL_curzd2preczd2_1309;obj_t BgL_newzd2preczd2_1310;
{ /* ./Lalr/lalr.scm 880 */
obj_t BgL_arg3061z00_1390;
BgL_arg3061z00_1390 = 
CDR(BgL_yz00_1308); 
{ /* ./Lalr/lalr.scm 880 */
bool_t BgL_testz00_5362;
{ /* ./Lalr/lalr.scm 880 */
long BgL_auxz00_5363;
BgL_auxz00_5363 = 
(long)CINT(BgL_arg3061z00_1390); 
BgL_testz00_5362 = 
(BgL_auxz00_5363<=((long)0)); } 
if(BgL_testz00_5362)
{ /* ./Lalr/lalr.scm 880 */
long BgL_arg2748z00_3002;
{ /* ./Lalr/lalr.scm 880 */
long BgL_auxz00_5366;
BgL_auxz00_5366 = 
(long)CINT(BgL_arg3061z00_1390); 
BgL_arg2748z00_3002 = 
NEG(BgL_auxz00_5366); } 
{ 
int BgL_auxz00_5369;
BgL_auxz00_5369 = 
(int)(BgL_arg2748z00_3002); 
BgL_curzd2preczd2_1309 = 
VECTOR_REF(BGl_rprecz00zz__lalr_globalz00,BgL_auxz00_5369); } }  else 
{ /* ./Lalr/lalr.scm 880 */
obj_t BgL_arg2752z00_3003;obj_t BgL_arg2753z00_3004;
{ /* ./Lalr/lalr.scm 880 */
long BgL_arg2756z00_3005;
{ /* ./Lalr/lalr.scm 880 */
long BgL_auxz00_5374;long BgL_auxz00_5372;
BgL_auxz00_5374 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_5372 = 
(long)CINT(BgL_symz00_1304); 
BgL_arg2756z00_3005 = 
(BgL_auxz00_5372+BgL_auxz00_5374); } 
{ 
int BgL_auxz00_5377;
BgL_auxz00_5377 = 
(int)(BgL_arg2756z00_3005); 
BgL_arg2752z00_3003 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5377); } } 
BgL_arg2753z00_3004 = BGl_symbol4492z00zz__lalr_expandz00; 
BgL_curzd2preczd2_1309 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_arg2752z00_3003, BgL_arg2753z00_3004); } } } 
{ /* ./Lalr/lalr.scm 881 */
bool_t BgL_testz00_5381;
{ /* ./Lalr/lalr.scm 881 */
long BgL_auxz00_5382;
BgL_auxz00_5382 = 
(long)CINT(BgL_actz00_1305); 
BgL_testz00_5381 = 
(BgL_auxz00_5382<=((long)0)); } 
if(BgL_testz00_5381)
{ /* ./Lalr/lalr.scm 881 */
long BgL_arg2748z00_3018;
{ /* ./Lalr/lalr.scm 881 */
long BgL_auxz00_5385;
BgL_auxz00_5385 = 
(long)CINT(BgL_actz00_1305); 
BgL_arg2748z00_3018 = 
NEG(BgL_auxz00_5385); } 
{ 
int BgL_auxz00_5388;
BgL_auxz00_5388 = 
(int)(BgL_arg2748z00_3018); 
BgL_newzd2preczd2_1310 = 
VECTOR_REF(BGl_rprecz00zz__lalr_globalz00,BgL_auxz00_5388); } }  else 
{ /* ./Lalr/lalr.scm 881 */
obj_t BgL_arg2752z00_3019;obj_t BgL_arg2753z00_3020;
{ /* ./Lalr/lalr.scm 881 */
long BgL_arg2756z00_3021;
{ /* ./Lalr/lalr.scm 881 */
long BgL_auxz00_5393;long BgL_auxz00_5391;
BgL_auxz00_5393 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_auxz00_5391 = 
(long)CINT(BgL_symz00_1304); 
BgL_arg2756z00_3021 = 
(BgL_auxz00_5391+BgL_auxz00_5393); } 
{ 
int BgL_auxz00_5396;
BgL_auxz00_5396 = 
(int)(BgL_arg2756z00_3021); 
BgL_arg2752z00_3019 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5396); } } 
BgL_arg2753z00_3020 = BGl_symbol4492z00zz__lalr_expandz00; 
BgL_newzd2preczd2_1310 = 
BGl_getpropz00zz__r4_symbols_6_4z00(BgL_arg2752z00_3019, BgL_arg2753z00_3020); } } 
{ /* ./Lalr/lalr.scm 883 */
bool_t BgL_testz00_5400;
{ /* ./Lalr/lalr.scm 883 */
long BgL_auxz00_5403;long BgL_auxz00_5401;
{ /* ./Lalr/lalr.scm 883 */
obj_t BgL_auxz00_5404;
BgL_auxz00_5404 = 
CDR(BgL_yz00_1308); 
BgL_auxz00_5403 = 
(long)CINT(BgL_auxz00_5404); } 
BgL_auxz00_5401 = 
(long)CINT(BgL_actz00_1305); 
BgL_testz00_5400 = 
(BgL_auxz00_5401==BgL_auxz00_5403); } 
if(BgL_testz00_5400)
{ /* ./Lalr/lalr.scm 883 */
return BTRUE;}  else 
{ /* ./Lalr/lalr.scm 885 */
bool_t BgL_test2870z00_1312;
{ /* ./Lalr/lalr.scm 885 */
bool_t BgL_testz00_5408;
{ /* ./Lalr/lalr.scm 885 */
long BgL_auxz00_5409;
{ /* ./Lalr/lalr.scm 885 */
obj_t BgL_auxz00_5410;
BgL_auxz00_5410 = 
CDR(BgL_yz00_1308); 
BgL_auxz00_5409 = 
(long)CINT(BgL_auxz00_5410); } 
BgL_testz00_5408 = 
(BgL_auxz00_5409<=((long)0)); } 
if(BgL_testz00_5408)
{ /* ./Lalr/lalr.scm 886 */
long BgL_auxz00_5414;
BgL_auxz00_5414 = 
(long)CINT(BgL_actz00_1305); 
BgL_test2870z00_1312 = 
(BgL_auxz00_5414<=((long)0)); }  else 
{ /* ./Lalr/lalr.scm 885 */
BgL_test2870z00_1312 = ((bool_t)0); } } 
if(BgL_test2870z00_1312)
{ /* ./Lalr/lalr.scm 885 */
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2875z00_1316;obj_t BgL_arg2877z00_1318;obj_t BgL_arg2879z00_1320;
{ /* ./Lalr/lalr.scm 889 */
long BgL_auxz00_5418;
{ /* ./Lalr/lalr.scm 889 */
long BgL_auxz00_5419;
BgL_auxz00_5419 = 
(long)CINT(BgL_actz00_1305); 
BgL_auxz00_5418 = 
NEG(BgL_auxz00_5419); } 
BgL_arg2875z00_1316 = 
BGl_buildzd2rulezd2zz__lalr_expandz00(BgL_auxz00_5418); } 
{ /* ./Lalr/lalr.scm 890 */
long BgL_auxz00_5423;
{ /* ./Lalr/lalr.scm 890 */
long BgL_auxz00_5424;
{ /* ./Lalr/lalr.scm 890 */
obj_t BgL_auxz00_5425;
BgL_auxz00_5425 = 
CDR(BgL_yz00_1308); 
BgL_auxz00_5424 = 
(long)CINT(BgL_auxz00_5425); } 
BgL_auxz00_5423 = 
NEG(BgL_auxz00_5424); } 
BgL_arg2877z00_1318 = 
BGl_buildzd2rulezd2zz__lalr_expandz00(BgL_auxz00_5423); } 
{ /* ./Lalr/lalr.scm 891 */
long BgL_arg2920z00_1334;
{ /* ./Lalr/lalr.scm 891 */
long BgL_auxz00_5432;long BgL_auxz00_5430;
BgL_auxz00_5432 = 
(long)CINT(BgL_symz00_1304); 
BgL_auxz00_5430 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_arg2920z00_1334 = 
(BgL_auxz00_5430+BgL_auxz00_5432); } 
{ 
int BgL_auxz00_5435;
BgL_auxz00_5435 = 
(int)(BgL_arg2920z00_1334); 
BgL_arg2879z00_1320 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5435); } } 
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_list2882z00_1322;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2884z00_1323;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2887z00_1324;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2890z00_1325;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2893z00_1326;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2896z00_1327;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2899z00_1328;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2902z00_1329;
{ /* ./Lalr/lalr.scm 887 */
obj_t BgL_arg2905z00_1330;
BgL_arg2905z00_1330 = 
MAKE_PAIR(BGl_string4507z00zz__lalr_expandz00, BNIL); 
BgL_arg2902z00_1329 = 
MAKE_PAIR(BgL_arg2879z00_1320, BgL_arg2905z00_1330); } 
BgL_arg2899z00_1328 = 
MAKE_PAIR(BGl_string4508z00zz__lalr_expandz00, BgL_arg2902z00_1329); } 
BgL_arg2896z00_1327 = 
MAKE_PAIR(BgL_arg2877z00_1318, BgL_arg2899z00_1328); } 
BgL_arg2893z00_1326 = 
MAKE_PAIR(BGl_string4509z00zz__lalr_expandz00, BgL_arg2896z00_1327); } 
BgL_arg2890z00_1325 = 
MAKE_PAIR(BgL_arg2875z00_1316, BgL_arg2893z00_1326); } 
BgL_arg2887z00_1324 = 
MAKE_PAIR(BGl_string4509z00zz__lalr_expandz00, BgL_arg2890z00_1325); } 
BgL_arg2884z00_1323 = 
MAKE_PAIR(BGl_string4510z00zz__lalr_expandz00, BgL_arg2887z00_1324); } 
BgL_list2882z00_1322 = 
MAKE_PAIR(BGl_string4489z00zz__lalr_expandz00, BgL_arg2884z00_1323); } 
BGl_warningz00zz__errorz00(BgL_list2882z00_1322); } } 
{ /* ./Lalr/lalr.scm 893 */
obj_t BgL_arg2924z00_1335;
{ /* ./Lalr/lalr.scm 893 */
obj_t BgL_arg2927z00_1336;
BgL_arg2927z00_1336 = 
CDR(BgL_yz00_1308); 
{ /* ./Lalr/lalr.scm 893 */
obj_t BgL_list2929z00_1337;
BgL_list2929z00_1337 = 
MAKE_PAIR(BgL_actz00_1305, BNIL); 
BgL_arg2924z00_1335 = 
BGl_maxz00zz__r4_numbers_6_5z00(BgL_arg2927z00_1336, BgL_list2929z00_1337); } } 
return 
SET_CDR(BgL_yz00_1308, BgL_arg2924z00_1335);} }  else 
{ /* ./Lalr/lalr.scm 894 */
bool_t BgL_test2932z00_1338;
if(
CBOOL(BgL_curzd2preczd2_1309))
{ /* ./Lalr/lalr.scm 894 */
BgL_test2932z00_1338 = ((bool_t)1); }  else 
{ /* ./Lalr/lalr.scm 894 */
BgL_test2932z00_1338 = 
CBOOL(BgL_newzd2preczd2_1310); } 
if(BgL_test2932z00_1338)
{ /* ./Lalr/lalr.scm 894 */
if(
CBOOL(BgL_newzd2preczd2_1310))
{ /* ./Lalr/lalr.scm 896 */
if(
CBOOL(BgL_curzd2preczd2_1309))
{ /* ./Lalr/lalr.scm 900 */
bool_t BgL_testz00_5460;
{ /* ./Lalr/lalr.scm 900 */
long BgL_auxz00_5465;long BgL_auxz00_5461;
{ /* ./Lalr/lalr.scm 900 */
obj_t BgL_auxz00_5466;
BgL_auxz00_5466 = 
CDR(BgL_newzd2preczd2_1310); 
BgL_auxz00_5465 = 
(long)CINT(BgL_auxz00_5466); } 
{ /* ./Lalr/lalr.scm 900 */
obj_t BgL_auxz00_5462;
BgL_auxz00_5462 = 
CDR(BgL_curzd2preczd2_1309); 
BgL_auxz00_5461 = 
(long)CINT(BgL_auxz00_5462); } 
BgL_testz00_5460 = 
(BgL_auxz00_5461==BgL_auxz00_5465); } 
if(BgL_testz00_5460)
{ /* ./Lalr/lalr.scm 900 */
{ /* ./Lalr/lalr.scm 902 */
obj_t BgL_shiftz00_1340;obj_t BgL_reducez00_1341;
{ /* ./Lalr/lalr.scm 902 */
obj_t BgL_arg2973z00_1357;
BgL_arg2973z00_1357 = 
CDR(BgL_yz00_1308); 
{ /* ./Lalr/lalr.scm 902 */
obj_t BgL_list2975z00_1358;
BgL_list2975z00_1358 = 
MAKE_PAIR(BgL_actz00_1305, BNIL); 
BgL_shiftz00_1340 = 
BGl_maxz00zz__r4_numbers_6_5z00(BgL_arg2973z00_1357, BgL_list2975z00_1358); } } 
{ /* ./Lalr/lalr.scm 903 */
obj_t BgL_arg2979z00_1359;
BgL_arg2979z00_1359 = 
CDR(BgL_yz00_1308); 
{ /* ./Lalr/lalr.scm 903 */
obj_t BgL_list2981z00_1360;
BgL_list2981z00_1360 = 
MAKE_PAIR(BgL_actz00_1305, BNIL); 
BgL_reducez00_1341 = 
BGl_minz00zz__r4_numbers_6_5z00(BgL_arg2979z00_1359, BgL_list2981z00_1360); } } 
{ /* ./Lalr/lalr.scm 904 */
obj_t BgL_casezd2valuezd2_1342;
BgL_casezd2valuezd2_1342 = 
CAR(BgL_curzd2preczd2_1309); 
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_1342, BGl_keyword4496z00zz__lalr_expandz00))
{ /* ./Lalr/lalr.scm 904 */
return 
SET_CDR(BgL_yz00_1308, BgL_reducez00_1341);}  else 
{ /* ./Lalr/lalr.scm 904 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_1342, BGl_keyword4497z00zz__lalr_expandz00))
{ /* ./Lalr/lalr.scm 904 */
return 
SET_CDR(BgL_yz00_1308, BgL_shiftz00_1340);}  else 
{ /* ./Lalr/lalr.scm 904 */
if(
BGl_eqvzf3zf3zz__r4_equivalence_6_2z00(BgL_casezd2valuezd2_1342, BGl_keyword4498z00zz__lalr_expandz00))
{ 
obj_t BgL_auxz00_5487;int BgL_auxz00_5485;
{ /* ./Lalr/lalr.scm 915 */
obj_t BgL_auxz00_5488;
{ 
int BgL_auxz00_5489;
BgL_auxz00_5489 = 
CINT(BgL_stz00_1303); 
BgL_auxz00_5488 = 
VECTOR_REF(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5489); } 
BgL_auxz00_5487 = 
BGl_loopz00zz__lalr_expandz00(BgL_stz00_1303, BgL_auxz00_5488); } 
BgL_auxz00_5485 = 
CINT(BgL_stz00_1303); 
return 
VECTOR_SET(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5485,BgL_auxz00_5487);}  else 
{ /* ./Lalr/lalr.scm 904 */
return BUNSPEC;} } } } } }  else 
{ /* ./Lalr/lalr.scm 926 */
bool_t BgL_testz00_5494;
{ /* ./Lalr/lalr.scm 926 */
long BgL_auxz00_5499;long BgL_auxz00_5495;
{ /* ./Lalr/lalr.scm 926 */
obj_t BgL_auxz00_5500;
BgL_auxz00_5500 = 
CDR(BgL_newzd2preczd2_1310); 
BgL_auxz00_5499 = 
(long)CINT(BgL_auxz00_5500); } 
{ /* ./Lalr/lalr.scm 926 */
obj_t BgL_auxz00_5496;
BgL_auxz00_5496 = 
CDR(BgL_curzd2preczd2_1309); 
BgL_auxz00_5495 = 
(long)CINT(BgL_auxz00_5496); } 
BgL_testz00_5494 = 
(BgL_auxz00_5495>BgL_auxz00_5499); } 
if(BgL_testz00_5494)
{ /* ./Lalr/lalr.scm 926 */
return 
SET_CDR(BgL_yz00_1308, BgL_actz00_1305);}  else 
{ /* ./Lalr/lalr.scm 926 */
return BTRUE;} } }  else 
{ /* ./Lalr/lalr.scm 898 */
return 
SET_CDR(BgL_yz00_1308, BgL_actz00_1305);} }  else 
{ /* ./Lalr/lalr.scm 896 */
return BTRUE;} }  else 
{ /* ./Lalr/lalr.scm 894 */
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3004z00_1370;obj_t BgL_arg3008z00_1372;
{ /* ./Lalr/lalr.scm 936 */
long BgL_auxz00_5506;
{ /* ./Lalr/lalr.scm 936 */
long BgL_auxz00_5507;
{ /* ./Lalr/lalr.scm 936 */
obj_t BgL_auxz00_5508;
BgL_auxz00_5508 = 
CDR(BgL_yz00_1308); 
BgL_auxz00_5507 = 
(long)CINT(BgL_auxz00_5508); } 
BgL_auxz00_5506 = 
NEG(BgL_auxz00_5507); } 
BgL_arg3004z00_1370 = 
BGl_buildzd2rulezd2zz__lalr_expandz00(BgL_auxz00_5506); } 
{ /* ./Lalr/lalr.scm 937 */
long BgL_arg3045z00_1385;
{ /* ./Lalr/lalr.scm 937 */
long BgL_auxz00_5515;long BgL_auxz00_5513;
BgL_auxz00_5515 = 
(long)CINT(BgL_symz00_1304); 
BgL_auxz00_5513 = 
(long)CINT(BGl_nvarsz00zz__lalr_globalz00); 
BgL_arg3045z00_1385 = 
(BgL_auxz00_5513+BgL_auxz00_5515); } 
{ 
int BgL_auxz00_5518;
BgL_auxz00_5518 = 
(int)(BgL_arg3045z00_1385); 
BgL_arg3008z00_1372 = 
VECTOR_REF(BGl_za2symvza2z00zz__lalr_rewritez00,BgL_auxz00_5518); } } 
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_list3011z00_1374;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3013z00_1375;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3016z00_1376;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3019z00_1377;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3022z00_1378;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3025z00_1379;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3028z00_1380;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3031z00_1381;
{ /* ./Lalr/lalr.scm 933 */
obj_t BgL_arg3034z00_1382;
BgL_arg3034z00_1382 = 
MAKE_PAIR(BGl_string4507z00zz__lalr_expandz00, BNIL); 
BgL_arg3031z00_1381 = 
MAKE_PAIR(BgL_arg3008z00_1372, BgL_arg3034z00_1382); } 
BgL_arg3028z00_1380 = 
MAKE_PAIR(BGl_string4508z00zz__lalr_expandz00, BgL_arg3031z00_1381); } 
BgL_arg3025z00_1379 = 
MAKE_PAIR(BgL_arg3004z00_1370, BgL_arg3028z00_1380); } 
BgL_arg3022z00_1378 = 
MAKE_PAIR(BGl_string4511z00zz__lalr_expandz00, BgL_arg3025z00_1379); } 
BgL_arg3019z00_1377 = 
MAKE_PAIR(BgL_actz00_1305, BgL_arg3022z00_1378); } 
BgL_arg3016z00_1376 = 
MAKE_PAIR(BGl_string4512z00zz__lalr_expandz00, BgL_arg3019z00_1377); } 
BgL_arg3013z00_1375 = 
MAKE_PAIR(BGl_string4513z00zz__lalr_expandz00, BgL_arg3016z00_1376); } 
BgL_list3011z00_1374 = 
MAKE_PAIR(BGl_string4489z00zz__lalr_expandz00, BgL_arg3013z00_1375); } 
BGl_warningz00zz__errorz00(BgL_list3011z00_1374); } } 
return 
SET_CDR(BgL_yz00_1308, BgL_actz00_1305);} } } } }  else 
{ /* ./Lalr/lalr.scm 940 */
obj_t BgL_arg3066z00_1391;
{ /* ./Lalr/lalr.scm 940 */
obj_t BgL_arg3069z00_1392;
BgL_arg3069z00_1392 = 
MAKE_PAIR(BgL_symz00_1304, BgL_actz00_1305); 
BgL_arg3066z00_1391 = 
MAKE_PAIR(BgL_arg3069z00_1392, BgL_xz00_1307); } 
{ 
int BgL_auxz00_5534;
BgL_auxz00_5534 = 
CINT(BgL_stz00_1303); 
return 
VECTOR_SET(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5534,BgL_arg3066z00_1391);} } } } } } 
}



/* compact-action-table */
bool_t BGl_compactzd2actionzd2tablez00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 981 */
{ 
obj_t BgL_actsz00_1417;
{ 
long BgL_iz00_1396;
BgL_iz00_1396 = ((long)0); 
BgL_zc3anonymousza33075ze3z83_1397:
if(
BGl_2zd3zd3zz__r4_numbers_6_5z00(
BINT(BgL_iz00_1396), BGl_nstatesz00zz__lalr_globalz00))
{ /* ./Lalr/lalr.scm 1002 */
return ((bool_t)0);}  else 
{ /* ./Lalr/lalr.scm 1002 */
{ /* ./Lalr/lalr.scm 1004 */
obj_t BgL_actsz00_1399;
{ 
int BgL_auxz00_5540;
BgL_auxz00_5540 = 
(int)(BgL_iz00_1396); 
BgL_actsz00_1399 = 
VECTOR_REF(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5540); } 
{ /* ./Lalr/lalr.scm 1005 */
bool_t BgL_testz00_5543;
{ /* ./Lalr/lalr.scm 1005 */
obj_t BgL_auxz00_5544;
{ 
int BgL_auxz00_5545;
BgL_auxz00_5545 = 
(int)(BgL_iz00_1396); 
BgL_auxz00_5544 = 
VECTOR_REF(BGl_reductionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5545); } 
BgL_testz00_5543 = 
VECTORP(BgL_auxz00_5544); } 
if(BgL_testz00_5543)
{ /* ./Lalr/lalr.scm 1006 */
obj_t BgL_actz00_1401;
BgL_actsz00_1417 = BgL_actsz00_1399; 
{ /* ./Lalr/lalr.scm 983 */
obj_t BgL_accumsz00_1419;
BgL_accumsz00_1419 = BNIL; 
{ 
obj_t BgL_lz00_1420;
BgL_lz00_1420 = BgL_actsz00_1417; 
BgL_loopz00_1421:
if(
PAIRP(BgL_lz00_1420))
{ /* ./Lalr/lalr.scm 986 */
obj_t BgL_xz00_1423;
{ /* ./Lalr/lalr.scm 986 */
obj_t BgL_auxz00_5551;
BgL_auxz00_5551 = 
CAR(BgL_lz00_1420); 
BgL_xz00_1423 = 
CDR(BgL_auxz00_5551); } 
{ /* ./Lalr/lalr.scm 986 */
obj_t BgL_yz00_1424;
BgL_yz00_1424 = 
BGl_assvz00zz__r4_pairs_and_lists_6_3z00(BgL_xz00_1423, BgL_accumsz00_1419); 
{ /* ./Lalr/lalr.scm 987 */

{ /* ./Lalr/lalr.scm 988 */
bool_t BgL_test3118z00_1425;
{ /* ./Lalr/lalr.scm 988 */
bool_t BgL_testz00_5555;
if(
INTEGERP(BgL_xz00_1423))
{ /* ./Lalr/lalr.scm 988 */
BgL_testz00_5555 = ((bool_t)1)
; }  else 
{ /* ./Lalr/lalr.scm 988 */
BgL_testz00_5555 = 
REALP(BgL_xz00_1423)
; } 
if(BgL_testz00_5555)
{ /* ./Lalr/lalr.scm 988 */
long BgL_auxz00_5559;
BgL_auxz00_5559 = 
(long)CINT(BgL_xz00_1423); 
BgL_test3118z00_1425 = 
(BgL_auxz00_5559<((long)0)); }  else 
{ /* ./Lalr/lalr.scm 988 */
BgL_test3118z00_1425 = ((bool_t)0); } } 
if(BgL_test3118z00_1425)
{ /* ./Lalr/lalr.scm 988 */
if(
CBOOL(BgL_yz00_1424))
{ /* ./Lalr/lalr.scm 990 */
long BgL_arg3120z00_1426;
{ /* ./Lalr/lalr.scm 990 */
long BgL_auxz00_5565;
{ /* ./Lalr/lalr.scm 990 */
obj_t BgL_auxz00_5566;
BgL_auxz00_5566 = 
CDR(BgL_yz00_1424); 
BgL_auxz00_5565 = 
(long)CINT(BgL_auxz00_5566); } 
BgL_arg3120z00_1426 = 
(((long)1)+BgL_auxz00_5565); } 
{ /* ./Lalr/lalr.scm 990 */
obj_t BgL_auxz00_5570;
BgL_auxz00_5570 = 
BINT(BgL_arg3120z00_1426); 
SET_CDR(BgL_yz00_1424, BgL_auxz00_5570); } }  else 
{ /* ./Lalr/lalr.scm 991 */
obj_t BgL_arg3128z00_1429;
{ /* ./Lalr/lalr.scm 991 */
obj_t BgL_auxz00_5573;
BgL_auxz00_5573 = 
BINT(((long)1)); 
BgL_arg3128z00_1429 = 
MAKE_PAIR(BgL_xz00_1423, BgL_auxz00_5573); } 
BgL_accumsz00_1419 = 
MAKE_PAIR(BgL_arg3128z00_1429, BgL_accumsz00_1419); } }  else 
{ /* ./Lalr/lalr.scm 988 */BFALSE; } } 
{ 
obj_t BgL_lz00_5577;
BgL_lz00_5577 = 
CDR(BgL_lz00_1420); 
BgL_lz00_1420 = BgL_lz00_5577; 
goto BgL_loopz00_1421;} } } }  else 
{ /* ./Lalr/lalr.scm 985 */((bool_t)0); } } 
{ 
obj_t BgL_lz00_3124;obj_t BgL_maxz00_3125;obj_t BgL_symz00_3126;
BgL_lz00_3124 = BgL_accumsz00_1419; 
BgL_maxz00_3125 = 
BINT(((long)0)); 
BgL_symz00_3126 = BFALSE; 
BgL_loopz00_3123:
if(
NULLP(BgL_lz00_3124))
{ /* ./Lalr/lalr.scm 994 */
BgL_actz00_1401 = BgL_symz00_3126; }  else 
{ /* ./Lalr/lalr.scm 994 */
obj_t BgL_xz00_3136;
BgL_xz00_3136 = 
CAR(BgL_lz00_3124); 
{ /* ./Lalr/lalr.scm 994 */
bool_t BgL_testz00_5582;
{ /* ./Lalr/lalr.scm 994 */
long BgL_auxz00_5587;long BgL_auxz00_5583;
BgL_auxz00_5587 = 
(long)CINT(BgL_maxz00_3125); 
{ /* ./Lalr/lalr.scm 994 */
obj_t BgL_auxz00_5584;
BgL_auxz00_5584 = 
CDR(BgL_xz00_3136); 
BgL_auxz00_5583 = 
(long)CINT(BgL_auxz00_5584); } 
BgL_testz00_5582 = 
(BgL_auxz00_5583>BgL_auxz00_5587); } 
if(BgL_testz00_5582)
{ 
obj_t BgL_symz00_5594;obj_t BgL_maxz00_5592;obj_t BgL_lz00_5590;
BgL_lz00_5590 = 
CDR(BgL_lz00_3124); 
BgL_maxz00_5592 = 
CDR(BgL_xz00_3136); 
BgL_symz00_5594 = 
CAR(BgL_xz00_3136); 
BgL_symz00_3126 = BgL_symz00_5594; 
BgL_maxz00_3125 = BgL_maxz00_5592; 
BgL_lz00_3124 = BgL_lz00_5590; 
goto BgL_loopz00_3123;}  else 
{ 
obj_t BgL_lz00_5596;
BgL_lz00_5596 = 
CDR(BgL_lz00_3124); 
BgL_lz00_3124 = BgL_lz00_5596; 
goto BgL_loopz00_3123;} } } } } 
{ /* ./Lalr/lalr.scm 1008 */
obj_t BgL_arg3079z00_1402;
{ /* ./Lalr/lalr.scm 1008 */
obj_t BgL_arg3082z00_1403;obj_t BgL_arg3083z00_1404;
{ /* ./Lalr/lalr.scm 1008 */
obj_t BgL_arg3086z00_1405;
if(
CBOOL(BgL_actz00_1401))
{ /* ./Lalr/lalr.scm 1008 */
BgL_arg3086z00_1405 = BgL_actz00_1401; }  else 
{ /* ./Lalr/lalr.scm 1008 */
BgL_arg3086z00_1405 = BGl_symbol4514z00zz__lalr_expandz00; } 
BgL_arg3082z00_1403 = 
MAKE_PAIR(BGl_za2defaultza2z00zz__lalr_expandz00, BgL_arg3086z00_1405); } 
{ /* ./Lalr/lalr.scm 1010 */
obj_t BgL_zc3anonymousza33091ze3z83_3228;
{ 
int BgL_auxz00_5604;int BgL_auxz00_5602;
BgL_auxz00_5604 = 
(int)(((long)1)); 
BgL_auxz00_5602 = 
(int)(((long)1)); 
BgL_zc3anonymousza33091ze3z83_3228 = 
make_fx_procedure(BGl_zc3anonymousza33091ze3z83zz__lalr_expandz00, BgL_auxz00_5602, BgL_auxz00_5604); } 
{ /* ./Lalr/lalr.scm 1010 */
int BgL_auxz00_5607;
BgL_auxz00_5607 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza33091ze3z83_3228, BgL_auxz00_5607, BgL_actz00_1401); } 
BgL_arg3083z00_1404 = 
BGl_filterz00zz__r4_control_features_6_9z00(BgL_zc3anonymousza33091ze3z83_3228, BgL_actsz00_1399); } 
BgL_arg3079z00_1402 = 
MAKE_PAIR(BgL_arg3082z00_1403, BgL_arg3083z00_1404); } 
{ 
int BgL_auxz00_5612;
BgL_auxz00_5612 = 
(int)(BgL_iz00_1396); 
VECTOR_SET(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5612,BgL_arg3079z00_1402); } } }  else 
{ /* ./Lalr/lalr.scm 1013 */
obj_t BgL_arg3099z00_1412;
{ /* ./Lalr/lalr.scm 1013 */
obj_t BgL_arg3102z00_1413;
BgL_arg3102z00_1413 = 
MAKE_PAIR(BGl_za2defaultza2z00zz__lalr_expandz00, BGl_symbol4515z00zz__lalr_expandz00); 
BgL_arg3099z00_1412 = 
MAKE_PAIR(BgL_arg3102z00_1413, BgL_actsz00_1399); } 
{ 
int BgL_auxz00_5617;
BgL_auxz00_5617 = 
(int)(BgL_iz00_1396); 
VECTOR_SET(BGl_actionzd2tablezd2zz__lalr_globalz00,BgL_auxz00_5617,BgL_arg3099z00_1412); } } } } 
{ 
long BgL_iz00_5620;
BgL_iz00_5620 = 
(BgL_iz00_1396+((long)1)); 
BgL_iz00_1396 = BgL_iz00_5620; 
goto BgL_zc3anonymousza33075ze3z83_1397;} } } } } 
}



/* <anonymous:3091> */
obj_t BGl_zc3anonymousza33091ze3z83zz__lalr_expandz00(obj_t BgL_envz00_3229, obj_t BgL_xz00_3231)
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 1009 */
{ /* ./Lalr/lalr.scm 1010 */
obj_t BgL_actz00_3230;
{ /* ./Lalr/lalr.scm 1010 */
int BgL_auxz00_5622;
BgL_auxz00_5622 = 
(int)(((long)0)); 
BgL_actz00_3230 = 
PROCEDURE_REF(BgL_envz00_3229, BgL_auxz00_5622); } 
{ 
obj_t BgL_xz00_1407;
{ /* ./Lalr/lalr.scm 1010 */
bool_t BgL_auxz00_5625;
BgL_xz00_1407 = BgL_xz00_3231; 
{ /* ./Lalr/lalr.scm 1010 */
bool_t BgL_testz00_5626;
{ /* ./Lalr/lalr.scm 1010 */
obj_t BgL_auxz00_5627;
BgL_auxz00_5627 = 
CDR(BgL_xz00_1407); 
BgL_testz00_5626 = 
(BgL_auxz00_5627==BgL_actz00_3230); } 
if(BgL_testz00_5626)
{ /* ./Lalr/lalr.scm 1010 */
BgL_auxz00_5625 = ((bool_t)0)
; }  else 
{ /* ./Lalr/lalr.scm 1010 */
BgL_auxz00_5625 = ((bool_t)1)
; } } 
return 
BBOOL(BgL_auxz00_5625);} } } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__lalr_expandz00()
{ AN_OBJECT;
{ /* ./Lalr/lalr.scm 11 */
BGl_modulezd2initializa7ationz75zz__errorz00(((long)11084), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__lalr_utilz00(((long)22786), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__lalr_genz00(((long)26170), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__lalr_globalz00(((long)27747), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__lalr_rewritez00(((long)39577), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__typez00(((long)52864), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__biglooz00(((long)48291), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__tvectorz00(((long)57114), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__structurez00(((long)53290), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__bexitz00(((long)13855), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(((long)21694), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(((long)6615), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_flonumz00(((long)49269), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_characters_6_6z00(((long)29164), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(((long)51785), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_booleans_6_1z00(((long)35070), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(((long)247), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_strings_6_7z00(((long)21875), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)104413), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_input_6_10_2z00(((long)50132), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(((long)63121), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_vectors_6_8z00(((long)13988), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(((long)45566), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(((long)18972), "__lalr_expand"); 
BGl_modulezd2initializa7ationz75zz__bitz00(((long)16459), "__lalr_expand"); 
return 
BGl_modulezd2initializa7ationz75zz__evenvz00(((long)3930), "__lalr_expand");} 
}

