/*===========================================================================*/
/*   (Read/access.scm)                                                       */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -q -afile .afile -fsharing -fno-reflection -cc gcc-2.95 -lib-dir /users/serrano/prgm/project/bigloo/lib/2.6b -unsafev -no-hello -O2 -rm -unsafe -s -indent Read/access.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>

BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzread_accessz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_enginez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzinit_mainz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_speekz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__bexitz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(long, char *);
static obj_t BGl_handlerz00zzread_accessz00(obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_verbosez00zztools_speekz00(obj_t, obj_t);
extern obj_t BGl_userzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t, obj_t);
BGL_IMPORT obj_t open_input_string(obj_t);
BGL_IMPORT obj_t BGl_dynamiczd2windzd2zz__r4_control_features_6_9z00(obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
static obj_t BGl_dozd2readzd2accesszd2filezd2zzread_accessz00(obj_t, obj_t);
extern obj_t BGl_za2accesszd2tableza2zd2zzengine_paramz00;
static obj_t BGl_zc3anonymousza31101ze3z83zzread_accessz00(obj_t);
BGL_IMPORT obj_t BGl_unwindzd2untilz12zc0zz__bexitz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31105ze3z83zzread_accessz00(obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_IMPORT bool_t BGl_equalzf3zf3zz__r4_equivalence_6_2z00(obj_t, obj_t);
extern obj_t BGl_za2accesszd2fileza2zd2zzengine_paramz00;
static obj_t BGl_zc3anonymousza31108ze3z83zzread_accessz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_addzd2accessz12zc0zzread_accessz00(obj_t, obj_t);
static obj_t BGl_zc3anonymousza31099ze3z83zzread_accessz00(obj_t);
static obj_t BGl_zc3exitza31091ze3z83zzread_accessz00(obj_t, obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_openzd2inputzd2filez00zz__r4_ports_6_10_1z00(obj_t, obj_t);
static obj_t BGl_escapez00zzread_accessz00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_removezd2errorzd2handlerz12z12zz__errorz00();
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
BGL_IMPORT obj_t BGl_assqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_cnstzd2initzd2zzread_accessz00();
BGL_EXPORTED_DECL obj_t BGl_readzd2accesszd2filez00zzread_accessz00();
BGL_IMPORT bool_t fexists(char *);
BGL_IMPORT obj_t close_input_port(obj_t);
static obj_t BGl__readzd2accesszd2filez00zzread_accessz00(obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzread_accessz00();
static obj_t BGl__addzd2accessz12zc0zzread_accessz00(obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_warningz00zz__errorz00(obj_t);
extern obj_t BGl_za2accesszd2filezd2defaultza2z00zzengine_paramz00;
static obj_t BGl_requirezd2initializa7ationz75zzread_accessz00 = BUNSPEC;
BGL_IMPORT obj_t BGl_notifyzd2errorzd2zz__errorz00(obj_t, obj_t, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzread_accessz00();
extern obj_t BGl_exitzd2bigloozd2zzinit_mainz00(obj_t);
BGL_IMPORT obj_t BGl_addzd2errorzd2handlerz12z12zz__errorz00(obj_t, obj_t);
static obj_t __cnst[ 1 ] ;


DEFINE_EXPORT_PROCEDURE( BGl_addzd2accessz12zd2envz12zzread_accessz00, BgL_bgl__addza7d2accessza712za7c0za7za7read_accessza7001326z00, BGl__addzd2accessz12zc0zzread_accessz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_readzd2accesszd2filezd2envzd2zzread_accessz00, BgL_bgl__readza7d2accessza7d2fileza700za7za7read_accessza7001327z00, BGl__readzd2accesszd2filez00zzread_accessz00, 0L, 0 );
DEFINE_STRING( BGl_string1297z00zzread_accessz00, BgL_bgl_string1297za700za7za7read_accessza7001328z00, "done ", 5 );
DEFINE_STRING( BGl_string1296z00zzread_accessz00, BgL_bgl_string1296za700za7za7read_accessza7001329z00, "Illegal access file format", 26 );
DEFINE_STRING( BGl_string1295z00zzread_accessz00, BgL_bgl_string1295za700za7za7read_accessza7001330z00, "Can't find access file", 22 );
DEFINE_STRING( BGl_string1294z00zzread_accessz00, BgL_bgl_string1294za700za7za7read_accessza7001331z00, "Can't open access file", 22 );
DEFINE_STRING( BGl_string1293z00zzread_accessz00, BgL_bgl_string1293za700za7za7read_accessza7001332z00, "read-access-file", 16 );
DEFINE_STRING( BGl_string1292z00zzread_accessz00, BgL_bgl_string1292za700za7za7read_accessza7001333z00, "      [reading afile ", 21 );
DEFINE_STRING( BGl_string1291z00zzread_accessz00, BgL_bgl_string1291za700za7za7read_accessza7001334z00, "add-access!", 11 );
DEFINE_STRING( BGl_string1290z00zzread_accessz00, BgL_bgl_string1290za700za7za7read_accessza7001335z00, "access redefinition -- ", 23 );
DEFINE_STRING( BGl_string1289z00zzread_accessz00, BgL_bgl_string1289za700za7za7read_accessza7001336z00, " [", 2 );
DEFINE_STRING( BGl_string1288z00zzread_accessz00, BgL_bgl_string1288za700za7za7read_accessza7001337z00, " ", 1 );
DEFINE_STRING( BGl_string1287z00zzread_accessz00, BgL_bgl_string1287za700za7za7read_accessza7001338z00, "]", 1 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzread_accessz00(long BgL_checksumz00_197, char * BgL_fromz00_198)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzread_accessz00))
{ 
BGl_requirezd2initializa7ationz75zzread_accessz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzread_accessz00(); 
BGl_cnstzd2initzd2zzread_accessz00(); 
BGl_importedzd2moduleszd2initz00zzread_accessz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzread_accessz00()
{ AN_OBJECT;
{ /* ./Read/access.scm 15 */
BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__bexitz00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__r4_equivalence_6_2z00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__r4_ports_6_10_1z00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__errorz00(((long)0), "read_access"); 
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "read_access"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzread_accessz00()
{ AN_OBJECT;
{ /* ./Read/access.scm 15 */
{ /* ./Read/access.scm 15 */
obj_t BgL_cportz00_190;
BgL_cportz00_190 = 
open_input_string(BGl_string1297z00zzread_accessz00); 
{ 
long BgL_iz00_191;
BgL_iz00_191 = ((long)0); 
BgL_loopz00_192:
{ /* ./Read/access.scm 15 */
bool_t BgL_test1299z00_193;
BgL_test1299z00_193 = 
(BgL_iz00_191==((long)-1)); 
if(BgL_test1299z00_193)
{ /* ./Read/access.scm 15 */
return BUNSPEC;}  else 
{ /* ./Read/access.scm 15 */
{ /* ./Read/access.scm 15 */
obj_t BgL_arg1301z00_194;
{ /* ./Read/access.scm 15 */
obj_t BgL_list1304z00_195;
BgL_list1304z00_195 = 
MAKE_PAIR(BgL_cportz00_190, BNIL); 
BgL_arg1301z00_194 = 
BGl_readz00zz__readerz00(BgL_list1304z00_195); } 
{ /* ./Read/access.scm 15 */
int BgL_auxz00_217;
BgL_auxz00_217 = 
(int)(BgL_iz00_191); 
CNST_TABLE_SET(BgL_auxz00_217, BgL_arg1301z00_194); } } 
{ /* ./Read/access.scm 15 */
int BgL_auxz00_196;
{ /* ./Read/access.scm 15 */
long BgL_auxz00_220;
BgL_auxz00_220 = 
(BgL_iz00_191-((long)1)); 
BgL_auxz00_196 = 
(int)(BgL_auxz00_220); } 
{ 
long BgL_iz00_223;
BgL_iz00_223 = 
(long)(BgL_auxz00_196); 
BgL_iz00_191 = BgL_iz00_223; 
goto BgL_loopz00_192;} } } } } } } 
}



/* add-access! */
BGL_EXPORTED_DEF obj_t BGl_addzd2accessz12zc0zzread_accessz00(obj_t BgL_modulez00_1, obj_t BgL_filesz00_2)
{ AN_OBJECT;
{ /* ./Read/access.scm 27 */
{ /* ./Read/access.scm 28 */
obj_t BgL_bz00_5;
BgL_bz00_5 = 
BGl_assqz00zz__r4_pairs_and_lists_6_3z00(BgL_modulez00_1, BGl_za2accesszd2tableza2zd2zzengine_paramz00); 
if(
CBOOL(BgL_bz00_5))
{ /* ./Read/access.scm 31 */
bool_t BgL_test1011z00_6;
BgL_test1011z00_6 = 
BGl_equalzf3zf3zz__r4_equivalence_6_2z00(
CDR(BgL_bz00_5), BgL_filesz00_2); 
if(BgL_test1011z00_6)
{ /* ./Read/access.scm 31 */
return 
CNST_TABLE_REF(((long)0));}  else 
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1016z00_10;
BgL_arg1016z00_10 = 
CDR(BgL_bz00_5); 
{ /* ./Read/access.scm 32 */
obj_t BgL_list1020z00_13;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1022z00_14;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1025z00_15;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1028z00_16;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1031z00_17;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1034z00_18;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1037z00_19;
{ /* ./Read/access.scm 32 */
obj_t BgL_arg1041z00_20;
BgL_arg1041z00_20 = 
MAKE_PAIR(BGl_string1287z00zzread_accessz00, BNIL); 
BgL_arg1037z00_19 = 
MAKE_PAIR(BgL_filesz00_2, BgL_arg1041z00_20); } 
BgL_arg1034z00_18 = 
MAKE_PAIR(BGl_string1288z00zzread_accessz00, BgL_arg1037z00_19); } 
BgL_arg1031z00_17 = 
MAKE_PAIR(BgL_arg1016z00_10, BgL_arg1034z00_18); } 
BgL_arg1028z00_16 = 
MAKE_PAIR(BGl_string1289z00zzread_accessz00, BgL_arg1031z00_17); } 
BgL_arg1025z00_15 = 
MAKE_PAIR(BgL_modulez00_1, BgL_arg1028z00_16); } 
BgL_arg1022z00_14 = 
MAKE_PAIR(BGl_string1290z00zzread_accessz00, BgL_arg1025z00_15); } 
BgL_list1020z00_13 = 
MAKE_PAIR(BGl_string1291z00zzread_accessz00, BgL_arg1022z00_14); } 
return 
BGl_warningz00zz__errorz00(BgL_list1020z00_13);} } }  else 
{ /* ./Read/access.scm 30 */
obj_t BgL_arg1050z00_22;
BgL_arg1050z00_22 = 
MAKE_PAIR(BgL_modulez00_1, BgL_filesz00_2); 
return ( 
BGl_za2accesszd2tableza2zd2zzengine_paramz00 = 
MAKE_PAIR(BgL_arg1050z00_22, BGl_za2accesszd2tableza2zd2zzengine_paramz00), BUNSPEC) ;} } } 
}



/* _add-access! */
obj_t BGl__addzd2accessz12zc0zzread_accessz00(obj_t BgL_envz00_145, obj_t BgL_modulez00_146, obj_t BgL_filesz00_147)
{ AN_OBJECT;
{ /* ./Read/access.scm 27 */
return 
BGl_addzd2accessz12zc0zzread_accessz00(BgL_modulez00_146, BgL_filesz00_147);} 
}



/* read-access-file */
BGL_EXPORTED_DEF obj_t BGl_readzd2accesszd2filez00zzread_accessz00()
{ AN_OBJECT;
{ /* ./Read/access.scm 41 */
{ 
obj_t BgL_namez00_28;
{ /* ./Read/access.scm 53 */
bool_t BgL_test1054z00_24;
{ /* ./Read/access.scm 53 */
obj_t BgL_objz00_117;
BgL_objz00_117 = BGl_za2accesszd2fileza2zd2zzengine_paramz00; 
BgL_test1054z00_24 = 
STRINGP(BgL_objz00_117); } 
if(BgL_test1054z00_24)
{ /* ./Read/access.scm 57 */
bool_t BgL_test1055z00_25;
{ /* ./Read/access.scm 57 */
char * BgL_namez00_118;
BgL_namez00_118 = 
BSTRING_TO_STRING(BGl_za2accesszd2fileza2zd2zzengine_paramz00); 
BgL_test1055z00_25 = 
fexists(BgL_namez00_118); } 
if(BgL_test1055z00_25)
{ /* ./Read/access.scm 57 */
BgL_namez00_28 = BGl_za2accesszd2fileza2zd2zzengine_paramz00; 
BgL_zc3anonymousza31064ze3z83_29:
{ /* ./Read/access.scm 43 */
obj_t BgL_portz00_30;
BgL_portz00_30 = 
BGl_openzd2inputzd2filez00zz__r4_ports_6_10_1z00(BgL_namez00_28, BNIL); 
{ /* ./Read/access.scm 44 */
obj_t BgL_list1066z00_31;
{ /* ./Read/access.scm 44 */
obj_t BgL_arg1069z00_33;
{ /* ./Read/access.scm 44 */
obj_t BgL_arg1075z00_34;
{ /* ./Read/access.scm 44 */
obj_t BgL_arg1080z00_36;
{ /* ./Read/access.scm 44 */
obj_t BgL_auxz00_251;
BgL_auxz00_251 = 
BCHAR(((unsigned char)'\n')); 
BgL_arg1080z00_36 = 
MAKE_PAIR(BgL_auxz00_251, BNIL); } 
BgL_arg1075z00_34 = 
MAKE_PAIR(BGl_string1287z00zzread_accessz00, BgL_arg1080z00_36); } 
BgL_arg1069z00_33 = 
MAKE_PAIR(BgL_namez00_28, BgL_arg1075z00_34); } 
BgL_list1066z00_31 = 
MAKE_PAIR(BGl_string1292z00zzread_accessz00, BgL_arg1069z00_33); } 
BGl_verbosez00zztools_speekz00(
BINT(((long)2)), BgL_list1066z00_31); } 
{ /* ./Read/access.scm 45 */
bool_t BgL_test1083z00_37;
BgL_test1083z00_37 = 
INPUT_PORTP(BgL_portz00_30); 
if(BgL_test1083z00_37)
{ /* ./Read/access.scm 45 */
BGl_dozd2readzd2accesszd2filezd2zzread_accessz00(BgL_namez00_28, BgL_portz00_30); 
return 
close_input_port(BgL_portz00_30);}  else 
{ /* ./Read/access.scm 45 */
return 
BGl_userzd2errorzd2zztools_errorz00(BGl_string1293z00zzread_accessz00, BGl_string1294z00zzread_accessz00, BgL_namez00_28, BNIL);} } } }  else 
{ /* ./Read/access.scm 57 */
return 
BGl_userzd2errorzd2zztools_errorz00(BGl_string1293z00zzread_accessz00, BGl_string1295z00zzread_accessz00, BGl_za2accesszd2fileza2zd2zzengine_paramz00, BNIL);} }  else 
{ /* ./Read/access.scm 53 */
{ /* ./Read/access.scm 54 */
bool_t BgL_test1060z00_27;
{ /* ./Read/access.scm 54 */
char * BgL_namez00_119;
BgL_namez00_119 = 
BSTRING_TO_STRING(BGl_za2accesszd2filezd2defaultza2z00zzengine_paramz00); 
BgL_test1060z00_27 = 
fexists(BgL_namez00_119); } 
if(BgL_test1060z00_27)
{ 
obj_t BgL_namez00_268;
BgL_namez00_268 = BGl_za2accesszd2filezd2defaultza2z00zzengine_paramz00; 
BgL_namez00_28 = BgL_namez00_268; 
goto BgL_zc3anonymousza31064ze3z83_29;}  else 
{ /* ./Read/access.scm 54 */
return 
CNST_TABLE_REF(((long)0));} } } } } } 
}



/* _read-access-file */
obj_t BGl__readzd2accesszd2filez00zzread_accessz00(obj_t BgL_envz00_148)
{ AN_OBJECT;
{ /* ./Read/access.scm 41 */
return 
BGl_readzd2accesszd2filez00zzread_accessz00();} 
}



/* do-read-access-file */
obj_t BGl_dozd2readzd2accesszd2filezd2zzread_accessz00(obj_t BgL_filez00_3, obj_t BgL_portz00_4)
{ AN_OBJECT;
{ /* ./Read/access.scm 65 */
{ /* ./Read/access.scm 66 */
obj_t BgL_handlerz00_154;
{ 
int BgL_auxz00_273;int BgL_auxz00_271;
BgL_auxz00_273 = 
(int)(((long)1)); 
BgL_auxz00_271 = 
(int)(((long)4)); 
BgL_handlerz00_154 = 
make_fx_procedure(BGl_handlerz00zzread_accessz00, BgL_auxz00_271, BgL_auxz00_273); } 
{ /* ./Read/access.scm 66 */
int BgL_auxz00_276;
BgL_auxz00_276 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_handlerz00_154, BgL_auxz00_276, BgL_portz00_4); } 
{ /* ./Read/access.scm 70 */
obj_t BgL_armed1006z00_46;obj_t BgL_handler1003z00_47;
BgL_armed1006z00_46 = 
MAKE_CELL(BUNSPEC); 
BgL_handler1003z00_47 = 
MAKE_CELL(BUNSPEC); 
{ /* ./Read/access.scm 70 */
obj_t BgL_zc3anonymousza31108ze3z83_150;obj_t BgL_zc3anonymousza31105ze3z83_152;
{ 
int BgL_auxz00_281;int BgL_auxz00_279;
BgL_auxz00_281 = 
(int)(((long)2)); 
BgL_auxz00_279 = 
(int)(((long)0)); 
BgL_zc3anonymousza31108ze3z83_150 = 
make_fx_procedure(BGl_zc3anonymousza31108ze3z83zzread_accessz00, BgL_auxz00_279, BgL_auxz00_281); } 
{ 
int BgL_auxz00_286;int BgL_auxz00_284;
BgL_auxz00_286 = 
(int)(((long)2)); 
BgL_auxz00_284 = 
(int)(((long)4)); 
BgL_zc3anonymousza31105ze3z83_152 = 
make_fx_procedure(BGl_zc3anonymousza31105ze3z83zzread_accessz00, BgL_auxz00_284, BgL_auxz00_286); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_289;
BgL_auxz00_289 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31108ze3z83_150, BgL_auxz00_289, BgL_portz00_4); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_292;
BgL_auxz00_292 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31108ze3z83_150, BgL_auxz00_292, BgL_filez00_3); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_295;
BgL_auxz00_295 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31105ze3z83_152, BgL_auxz00_295, BgL_armed1006z00_46); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_298;
BgL_auxz00_298 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31105ze3z83_152, BgL_auxz00_298, BgL_handler1003z00_47); } 
CELL_SET(BgL_handler1003z00_47, BgL_handlerz00_154); 
CELL_SET(BgL_armed1006z00_46, BTRUE); 
return 
BGl_zc3exitza31091ze3z83zzread_accessz00(BgL_zc3anonymousza31108ze3z83_150, BgL_zc3anonymousza31105ze3z83_152, BgL_handler1003z00_47, BgL_armed1006z00_46);} } } } 
}



/* <exit:1091> */
obj_t BGl_zc3exitza31091ze3z83zzread_accessz00(obj_t BgL_zc3anonymousza31108ze3z83_189, obj_t BgL_zc3anonymousza31105ze3z83_188, obj_t BgL_handler1003z00_187, obj_t BgL_armed1006z00_186)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
jmp_buf jmpbuf; 
obj_t BgL_an_exit1007z00_51;
if( SET_EXIT(BgL_an_exit1007z00_51) ) { 
return 
_exit_value_;
} else {
BgL_an_exit1007z00_51 = 
(obj_t)jmpbuf; 
{ /* ./Read/access.scm 70 */

PUSH_EXIT(BgL_an_exit1007z00_51, ((bool_t)1)); 
{ /* ./Read/access.scm 70 */
obj_t BgL_an_exitd1008z00_52;
BgL_an_exitd1008z00_52 = 
BGL_EXITD_TOP(); 
{ /* ./Read/access.scm 70 */
obj_t BgL_escapez00_151;
{ 
int BgL_auxz00_308;int BgL_auxz00_306;
BgL_auxz00_308 = 
(int)(((long)1)); 
BgL_auxz00_306 = 
(int)(((long)1)); 
BgL_escapez00_151 = 
make_fx_procedure(BGl_escapez00zzread_accessz00, BgL_auxz00_306, BgL_auxz00_308); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_311;
BgL_auxz00_311 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_escapez00_151, BgL_auxz00_311, BgL_an_exitd1008z00_52); } 
{ /* ./Read/access.scm 70 */
obj_t BgL_res1010z00_55;
{ /* ./Read/access.scm 70 */
obj_t BgL_zc3anonymousza31101ze3z83_149;obj_t BgL_zc3anonymousza31099ze3z83_153;
{ 
int BgL_auxz00_316;int BgL_auxz00_314;
BgL_auxz00_316 = 
(int)(((long)1)); 
BgL_auxz00_314 = 
(int)(((long)0)); 
BgL_zc3anonymousza31101ze3z83_149 = 
make_fx_procedure(BGl_zc3anonymousza31101ze3z83zzread_accessz00, BgL_auxz00_314, BgL_auxz00_316); } 
{ 
int BgL_auxz00_321;int BgL_auxz00_319;
BgL_auxz00_321 = 
(int)(((long)5)); 
BgL_auxz00_319 = 
(int)(((long)0)); 
BgL_zc3anonymousza31099ze3z83_153 = 
make_fx_procedure(BGl_zc3anonymousza31099ze3z83zzread_accessz00, BgL_auxz00_319, BgL_auxz00_321); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_324;
BgL_auxz00_324 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31101ze3z83_149, BgL_auxz00_324, BgL_armed1006z00_186); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_327;
BgL_auxz00_327 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza31099ze3z83_153, BgL_auxz00_327, BgL_an_exitd1008z00_52); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_330;
BgL_auxz00_330 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza31099ze3z83_153, BgL_auxz00_330, BgL_armed1006z00_186); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_333;
BgL_auxz00_333 = 
(int)(((long)2)); 
PROCEDURE_SET(BgL_zc3anonymousza31099ze3z83_153, BgL_auxz00_333, BgL_handler1003z00_187); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_336;
BgL_auxz00_336 = 
(int)(((long)3)); 
PROCEDURE_SET(BgL_zc3anonymousza31099ze3z83_153, BgL_auxz00_336, BgL_zc3anonymousza31105ze3z83_188); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_339;
BgL_auxz00_339 = 
(int)(((long)4)); 
PROCEDURE_SET(BgL_zc3anonymousza31099ze3z83_153, BgL_auxz00_339, BgL_escapez00_151); } 
BgL_res1010z00_55 = 
BGl_dynamiczd2windzd2zz__r4_control_features_6_9z00(BgL_zc3anonymousza31099ze3z83_153, BgL_zc3anonymousza31108ze3z83_189, BgL_zc3anonymousza31101ze3z83_149); } 
POP_EXIT(); 
return BgL_res1010z00_55;} } } } 
} } 
}



/* <anonymous:1101> */
obj_t BGl_zc3anonymousza31101ze3z83zzread_accessz00(obj_t BgL_envz00_155)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
{ /* ./Read/access.scm 70 */
obj_t BgL_armed1006z00_156;
{ /* ./Read/access.scm 70 */
int BgL_auxz00_344;
BgL_auxz00_344 = 
(int)(((long)0)); 
BgL_armed1006z00_156 = 
PROCEDURE_REF(BgL_envz00_155, BgL_auxz00_344); } 
{ 

{ /* ./Read/access.scm 70 */
bool_t BgL_testz00_347;
{ /* ./Read/access.scm 70 */
obj_t BgL_auxz00_348;
BgL_auxz00_348 = 
CELL_REF(BgL_armed1006z00_156); 
BgL_testz00_347 = 
CBOOL(BgL_auxz00_348); } 
if(BgL_testz00_347)
{ /* ./Read/access.scm 70 */
CELL_SET(BgL_armed1006z00_156, BFALSE); 
return 
BGl_removezd2errorzd2handlerz12z12zz__errorz00();}  else 
{ /* ./Read/access.scm 70 */
return BFALSE;} } } } } 
}



/* <anonymous:1108> */
obj_t BGl_zc3anonymousza31108ze3z83zzread_accessz00(obj_t BgL_envz00_158)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
{ /* ./Read/access.scm 70 */
obj_t BgL_portz00_159;obj_t BgL_filez00_160;
{ /* ./Read/access.scm 70 */
int BgL_auxz00_351;
BgL_auxz00_351 = 
(int)(((long)0)); 
BgL_portz00_159 = 
PROCEDURE_REF(BgL_envz00_158, BgL_auxz00_351); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_354;
BgL_auxz00_354 = 
(int)(((long)1)); 
BgL_filez00_160 = 
PROCEDURE_REF(BgL_envz00_158, BgL_auxz00_354); } 
{ 

{ /* ./Read/access.scm 70 */
obj_t BgL_objz00_68;
{ /* ./Read/access.scm 70 */
obj_t BgL_list1196z00_111;
{ /* ./Read/access.scm 70 */
obj_t BgL_arg1198z00_112;
BgL_arg1198z00_112 = 
MAKE_PAIR(BTRUE, BNIL); 
BgL_list1196z00_111 = 
MAKE_PAIR(BgL_portz00_159, BgL_arg1198z00_112); } 
BgL_objz00_68 = 
BGl_readz00zz__readerz00(BgL_list1196z00_111); } 
{ /* ./Read/access.scm 70 */
obj_t BgL_eofz00_69;
{ /* ./Read/access.scm 71 */
obj_t BgL_list1193z00_110;
BgL_list1193z00_110 = 
MAKE_PAIR(BgL_portz00_159, BNIL); 
BgL_eofz00_69 = 
BGl_readz00zz__readerz00(BgL_list1193z00_110); } 
{ /* ./Read/access.scm 71 */

{ /* ./Read/access.scm 73 */
bool_t BgL_test1110z00_70;
BgL_test1110z00_70 = 
EOF_OBJECTP(BgL_objz00_68); 
if(BgL_test1110z00_70)
{ /* ./Read/access.scm 73 */
return 
BGl_userzd2errorzd2zztools_errorz00(BgL_filez00_160, BGl_string1296z00zzread_accessz00, BgL_objz00_68, BNIL);}  else 
{ /* ./Read/access.scm 75 */
bool_t BgL_test1113z00_72;
BgL_test1113z00_72 = 
EOF_OBJECTP(BgL_eofz00_69); 
if(BgL_test1113z00_72)
{ /* ./Read/access.scm 75 */
{ 
obj_t BgL_objz00_73;
BgL_objz00_73 = BgL_objz00_68; 
BgL_loopz00_74:
{ /* ./Read/access.scm 79 */
bool_t BgL_test1115z00_75;
BgL_test1115z00_75 = 
NULLP(BgL_objz00_73); 
if(BgL_test1115z00_75)
{ /* ./Read/access.scm 79 */
return 
CNST_TABLE_REF(((long)0));}  else 
{ 
obj_t BgL_mz00_76;obj_t BgL_fz00_77;obj_t BgL_fsz00_78;
{ /* ./Read/access.scm 81 */
obj_t BgL_ezd2103zd2_81;
BgL_ezd2103zd2_81 = 
CAR(BgL_objz00_73); 
{ /* ./Read/access.scm 81 */
bool_t BgL_test1116z00_82;
BgL_test1116z00_82 = 
PAIRP(BgL_ezd2103zd2_81); 
if(BgL_test1116z00_82)
{ /* ./Read/access.scm 81 */
obj_t BgL_carzd2110zd2_83;obj_t BgL_cdrzd2111zd2_84;
BgL_carzd2110zd2_83 = 
CAR(BgL_ezd2103zd2_81); 
BgL_cdrzd2111zd2_84 = 
CDR(BgL_ezd2103zd2_81); 
{ /* ./Read/access.scm 81 */
bool_t BgL_test1117z00_85;
BgL_test1117z00_85 = 
SYMBOLP(BgL_carzd2110zd2_83); 
if(BgL_test1117z00_85)
{ /* ./Read/access.scm 81 */
bool_t BgL_test1118z00_86;
BgL_test1118z00_86 = 
PAIRP(BgL_cdrzd2111zd2_84); 
if(BgL_test1118z00_86)
{ /* ./Read/access.scm 81 */
obj_t BgL_carzd2117zd2_87;
BgL_carzd2117zd2_87 = 
CAR(BgL_cdrzd2111zd2_84); 
{ /* ./Read/access.scm 81 */
bool_t BgL_test1119z00_88;
BgL_test1119z00_88 = 
STRINGP(BgL_carzd2117zd2_87); 
if(BgL_test1119z00_88)
{ /* ./Read/access.scm 81 */
obj_t BgL_arg1121z00_89;
BgL_arg1121z00_89 = 
CDR(BgL_cdrzd2111zd2_84); 
BgL_mz00_76 = BgL_carzd2110zd2_83; 
BgL_fz00_77 = BgL_carzd2117zd2_87; 
BgL_fsz00_78 = BgL_arg1121z00_89; 
{ 
obj_t BgL_fsz00_90;obj_t BgL_fnamesz00_91;
{ /* ./Read/access.scm 84 */
obj_t BgL_arg1137z00_93;
{ /* ./Read/access.scm 84 */
obj_t BgL_list1140z00_94;
BgL_list1140z00_94 = 
MAKE_PAIR(BgL_fz00_77, BNIL); 
BgL_arg1137z00_93 = BgL_list1140z00_94; } 
BgL_fsz00_90 = BgL_fsz00_78; 
BgL_fnamesz00_91 = BgL_arg1137z00_93; 
BgL_loopz00_92:
{ /* ./Read/access.scm 86 */
bool_t BgL_test1143z00_95;
BgL_test1143z00_95 = 
NULLP(BgL_fsz00_90); 
if(BgL_test1143z00_95)
{ /* ./Read/access.scm 86 */
{ /* ./Read/access.scm 87 */
obj_t BgL_arg1147z00_96;
BgL_arg1147z00_96 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_fnamesz00_91); 
BGl_addzd2accessz12zc0zzread_accessz00(BgL_mz00_76, BgL_arg1147z00_96); } }  else 
{ /* ./Read/access.scm 88 */
bool_t BgL_test1150z00_97;
{ /* ./Read/access.scm 88 */
obj_t BgL_auxz00_388;
BgL_auxz00_388 = 
CAR(BgL_fsz00_90); 
BgL_test1150z00_97 = 
STRINGP(BgL_auxz00_388); } 
if(BgL_test1150z00_97)
{ /* ./Read/access.scm 88 */
{ /* ./Read/access.scm 89 */
obj_t BgL_arg1152z00_98;obj_t BgL_arg1154z00_99;
BgL_arg1152z00_98 = 
CDR(BgL_fsz00_90); 
{ /* ./Read/access.scm 90 */
obj_t BgL_arg1158z00_100;
BgL_arg1158z00_100 = 
CAR(BgL_fsz00_90); 
BgL_arg1154z00_99 = 
MAKE_PAIR(BgL_arg1158z00_100, BgL_fnamesz00_91); } 
{ 
obj_t BgL_fnamesz00_396;obj_t BgL_fsz00_395;
BgL_fsz00_395 = BgL_arg1152z00_98; 
BgL_fnamesz00_396 = BgL_arg1154z00_99; 
BgL_fnamesz00_91 = BgL_fnamesz00_396; 
BgL_fsz00_90 = BgL_fsz00_395; 
goto BgL_loopz00_92;} } }  else 
{ /* ./Read/access.scm 88 */
{ /* ./Read/access.scm 92 */
obj_t BgL_arg1163z00_102;
BgL_arg1163z00_102 = 
CAR(BgL_objz00_73); 
BGl_userzd2errorzd2zztools_errorz00(BgL_filez00_160, BGl_string1296z00zzread_accessz00, BgL_arg1163z00_102, BNIL); } } } } } } 
{ /* ./Read/access.scm 95 */
obj_t BgL_arg1177z00_105;
BgL_arg1177z00_105 = 
CDR(BgL_objz00_73); 
{ 
obj_t BgL_objz00_400;
BgL_objz00_400 = BgL_arg1177z00_105; 
BgL_objz00_73 = BgL_objz00_400; 
goto BgL_loopz00_74;} } }  else 
{ /* ./Read/access.scm 81 */
BgL_tagzd2102zd2_80:
{ /* ./Read/access.scm 97 */
obj_t BgL_arg1183z00_107;
BgL_arg1183z00_107 = 
CAR(BgL_objz00_73); 
return 
BGl_userzd2errorzd2zztools_errorz00(BgL_filez00_160, BGl_string1296z00zzread_accessz00, BgL_arg1183z00_107, BNIL);} } } }  else 
{ /* ./Read/access.scm 81 */
goto BgL_tagzd2102zd2_80;} }  else 
{ /* ./Read/access.scm 81 */
goto BgL_tagzd2102zd2_80;} } }  else 
{ /* ./Read/access.scm 81 */
goto BgL_tagzd2102zd2_80;} } } } } } }  else 
{ /* ./Read/access.scm 75 */
return 
BGl_userzd2errorzd2zztools_errorz00(BgL_filez00_160, BGl_string1296z00zzread_accessz00, BgL_eofz00_69, BNIL);} } } } } } } } } 
}



/* <anonymous:1099> */
obj_t BGl_zc3anonymousza31099ze3z83zzread_accessz00(obj_t BgL_envz00_161)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
{ /* ./Read/access.scm 70 */
obj_t BgL_zc3anonymousza31105ze3z83_165;obj_t BgL_escapez00_166;
{ /* ./Read/access.scm 70 */
int BgL_auxz00_404;
BgL_auxz00_404 = 
(int)(((long)3)); 
BgL_zc3anonymousza31105ze3z83_165 = 
PROCEDURE_REF(BgL_envz00_161, BgL_auxz00_404); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_407;
BgL_auxz00_407 = 
(int)(((long)4)); 
BgL_escapez00_166 = 
PROCEDURE_REF(BgL_envz00_161, BgL_auxz00_407); } 
{ 

return 
BGl_addzd2errorzd2handlerz12z12zz__errorz00(BgL_zc3anonymousza31105ze3z83_165, BgL_escapez00_166);} } } 
}



/* escape */
obj_t BGl_escapez00zzread_accessz00(obj_t BgL_envz00_167, obj_t BgL_val1009z00_169)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
{ /* ./Read/access.scm 70 */
obj_t BgL_an_exitd1008z00_168;
{ /* ./Read/access.scm 70 */
int BgL_auxz00_411;
BgL_auxz00_411 = 
(int)(((long)0)); 
BgL_an_exitd1008z00_168 = 
PROCEDURE_REF(BgL_envz00_167, BgL_auxz00_411); } 
{ 
obj_t BgL_val1009z00_53;
BgL_val1009z00_53 = BgL_val1009z00_169; 
return 
BGl_unwindzd2untilz12zc0zz__bexitz00(BgL_an_exitd1008z00_168, BgL_val1009z00_53);} } } 
}



/* <anonymous:1105> */
obj_t BGl_zc3anonymousza31105ze3z83zzread_accessz00(obj_t BgL_envz00_170, obj_t BgL_escz00_173, obj_t BgL_objz00_174, obj_t BgL_procz00_175, obj_t BgL_msgz00_176)
{ AN_OBJECT;
{ /* ./Read/access.scm 70 */
{ /* ./Read/access.scm 70 */
obj_t BgL_armed1006z00_171;obj_t BgL_handler1003z00_172;
{ /* ./Read/access.scm 70 */
int BgL_auxz00_415;
BgL_auxz00_415 = 
(int)(((long)0)); 
BgL_armed1006z00_171 = 
PROCEDURE_REF(BgL_envz00_170, BgL_auxz00_415); } 
{ /* ./Read/access.scm 70 */
int BgL_auxz00_418;
BgL_auxz00_418 = 
(int)(((long)1)); 
BgL_handler1003z00_172 = 
PROCEDURE_REF(BgL_envz00_170, BgL_auxz00_418); } 
{ 
obj_t BgL_escz00_62;obj_t BgL_objz00_63;obj_t BgL_procz00_64;obj_t BgL_msgz00_65;
BgL_escz00_62 = BgL_escz00_173; 
BgL_objz00_63 = BgL_objz00_174; 
BgL_procz00_64 = BgL_procz00_175; 
BgL_msgz00_65 = BgL_msgz00_176; 
CELL_SET(BgL_armed1006z00_171, BFALSE); 
BGl_removezd2errorzd2handlerz12z12zz__errorz00(); 
{ /* ./Read/access.scm 70 */
obj_t BgL_auxz00_423;
BgL_auxz00_423 = 
CELL_REF(BgL_handler1003z00_172); 
return 
PROCEDURE_ENTRY(BgL_auxz00_423)(
CELL_REF(BgL_handler1003z00_172), BgL_escz00_62, BgL_objz00_63, BgL_procz00_64, BgL_msgz00_65, BEOA);} } } } 
}



/* handler */
obj_t BGl_handlerz00zzread_accessz00(obj_t BgL_envz00_178, obj_t BgL_escapez00_180, obj_t BgL_procz00_181, obj_t BgL_mesz00_182, obj_t BgL_objz00_183)
{ AN_OBJECT;
{ /* ./Read/access.scm 66 */
{ /* ./Read/access.scm 67 */
obj_t BgL_portz00_179;
{ /* ./Read/access.scm 67 */
int BgL_auxz00_424;
BgL_auxz00_424 = 
(int)(((long)0)); 
BgL_portz00_179 = 
PROCEDURE_REF(BgL_envz00_178, BgL_auxz00_424); } 
{ 
obj_t BgL_escapez00_41;obj_t BgL_procz00_42;obj_t BgL_mesz00_43;obj_t BgL_objz00_44;
BgL_escapez00_41 = BgL_escapez00_180; 
BgL_procz00_42 = BgL_procz00_181; 
BgL_mesz00_43 = BgL_mesz00_182; 
BgL_objz00_44 = BgL_objz00_183; 
BGl_notifyzd2errorzd2zz__errorz00(BgL_procz00_42, BgL_mesz00_43, BgL_objz00_44); 
close_input_port(BgL_portz00_179); 
return 
BGl_exitzd2bigloozd2zzinit_mainz00(
BINT(((long)2)));} } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzread_accessz00()
{ AN_OBJECT;
{ /* ./Read/access.scm 15 */
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "read_access"); 
BGl_modulezd2initializa7ationz75zzengine_enginez00(((long)46992), "read_access"); 
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "read_access"); 
BGl_modulezd2initializa7ationz75zzinit_mainz00(((long)6610), "read_access"); 
return 
BGl_modulezd2initializa7ationz75zztools_speekz00(((long)23537), "read_access");} 
}

