/*===========================================================================*/
/*   (Tools/location.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 Tools/location.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>

BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zztools_locationz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__osz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(long, char *);
BGL_IMPORT obj_t BGl_pwdz00zz__osz00();
BGL_IMPORT obj_t open_input_string(obj_t);
extern obj_t BGl_za2libzd2srczd2dirza2z00zzengine_paramz00;
BGL_IMPORT obj_t string_to_symbol(char *);
BGL_IMPORT obj_t BGl_makezd2filezd2namez00zz__osz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_locationzd2fullzd2fnamez00zztools_locationz00(obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
static obj_t BGl__findzd2locationzf2locz20zztools_locationz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_locationzd2shapezd2zztools_locationz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_findzd2locationzd2zztools_locationz00(obj_t);
BGL_IMPORT obj_t display_string(obj_t, obj_t);
BGL_IMPORT obj_t create_struct(obj_t, int);
static obj_t BGl_cnstzd2initzd2zztools_locationz00();
BGL_IMPORT bool_t fexists(char *);
static obj_t BGl__locationzd2shapezd2zztools_locationz00(obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_displayzd22zd2zz__r4_output_6_10_3z00(obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zztools_locationz00();
BGL_IMPORT obj_t BGl_warningz00zz__errorz00(obj_t);
static obj_t BGl_requirezd2initializa7ationz75zztools_locationz00 = BUNSPEC;
static obj_t BGl__findzd2locationzd2zztools_locationz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_findzd2locationzf2locz20zztools_locationz00(obj_t, obj_t);
extern obj_t BGl_za2locationzd2shapezf3za2z21zzengine_paramz00;
static obj_t BGl__dumpzd2locationzd2zztools_locationz00(obj_t, obj_t, obj_t);
static obj_t BGl__locationzd2fullzd2fnamez00zztools_locationz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_dumpzd2locationzd2zztools_locationz00(obj_t, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zztools_locationz00();
static obj_t BGl_toplevelzd2initzd2zztools_locationz00();
static obj_t __cnst[ 2 ] ;


DEFINE_EXPORT_PROCEDURE( BGl_locationzd2fullzd2fnamezd2envzd2zztools_locationz00, BgL_bgl__locationza7d2fullza7d2fnameza700za7za7tools_locationza7001263z00, BGl__locationzd2fullzd2fnamez00zztools_locationz00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_dumpzd2locationzd2envz00zztools_locationz00, BgL_bgl__dumpza7d2locationza7d2za7za7tools_locationza7001264za7, BGl__dumpzd2locationzd2zztools_locationz00, 0L, 2 );
DEFINE_STRING( BGl_string1236z00zztools_locationz00, BgL_bgl_string1236za700za7za7tools_locationza7001265z00, "at location ", 12 );
DEFINE_STRING( BGl_string1235z00zztools_locationz00, BgL_bgl_string1235za700za7za7tools_locationza7001266z00, "____ ", 5 );
DEFINE_STRING( BGl_string1234z00zztools_locationz00, BgL_bgl_string1234za700za7za7tools_locationza7001267z00, " ", 1 );
DEFINE_STRING( BGl_string1233z00zztools_locationz00, BgL_bgl_string1233za700za7za7tools_locationza7001268z00, ": ", 2 );
DEFINE_STRING( BGl_string1232z00zztools_locationz00, BgL_bgl_string1232za700za7za7tools_locationza7001269z00, "~~ ", 3 );
DEFINE_STRING( BGl_string1231z00zztools_locationz00, BgL_bgl_string1231za700za7za7tools_locationza7001270z00, "find-location", 13 );
DEFINE_STRING( BGl_string1230z00zztools_locationz00, BgL_bgl_string1230za700za7za7tools_locationza7001271z00, "obsolete `at' format -- ", 24 );
DEFINE_EXPORT_PROCEDURE( BGl_findzd2locationzf2loczd2envzf2zztools_locationz00, BgL_bgl__findza7d2locationza7f2locza720za7za7tools_locationza7001272z00, BGl__findzd2locationzf2locz20zztools_locationz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_findzd2locationzd2envz00zztools_locationz00, BgL_bgl__findza7d2locationza7d2za7za7tools_locationza7001273za7, BGl__findzd2locationzd2zztools_locationz00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_locationzd2shapezd2envz00zztools_locationz00, BgL_bgl__locationza7d2shapeza7d2za7za7tools_locationza7001274za7, BGl__locationzd2shapezd2zztools_locationz00, 0L, 2 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zztools_locationz00(long BgL_checksumz00_273, char * BgL_fromz00_274)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zztools_locationz00))
{ 
BGl_requirezd2initializa7ationz75zztools_locationz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zztools_locationz00(); 
BGl_cnstzd2initzd2zztools_locationz00(); 
BGl_importedzd2moduleszd2initz00zztools_locationz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zztools_locationz00()
{ AN_OBJECT;
{ /* ./Tools/location.scm 15 */
BGl_modulezd2initializa7ationz75zz__osz00(((long)0), "tools_location"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "tools_location"); 
BGl_modulezd2initializa7ationz75zz__r4_output_6_10_3z00(((long)0), "tools_location"); 
BGl_modulezd2initializa7ationz75zz__errorz00(((long)0), "tools_location"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zztools_locationz00()
{ AN_OBJECT;
{ /* ./Tools/location.scm 15 */
{ /* ./Tools/location.scm 15 */
obj_t BgL_cportz00_266;
BgL_cportz00_266 = 
open_input_string(BGl_string1236z00zztools_locationz00); 
{ 
long BgL_iz00_267;
BgL_iz00_267 = ((long)1); 
BgL_loopz00_268:
{ /* ./Tools/location.scm 15 */
bool_t BgL_test1238z00_269;
BgL_test1238z00_269 = 
(BgL_iz00_267==((long)-1)); 
if(BgL_test1238z00_269)
{ /* ./Tools/location.scm 15 */
return BUNSPEC;}  else 
{ /* ./Tools/location.scm 15 */
{ /* ./Tools/location.scm 15 */
obj_t BgL_arg1240z00_270;
{ /* ./Tools/location.scm 15 */
obj_t BgL_list1243z00_271;
BgL_list1243z00_271 = 
MAKE_PAIR(BgL_cportz00_266, BNIL); 
BgL_arg1240z00_270 = 
BGl_readz00zz__readerz00(BgL_list1243z00_271); } 
{ /* ./Tools/location.scm 15 */
int BgL_auxz00_290;
BgL_auxz00_290 = 
(int)(BgL_iz00_267); 
CNST_TABLE_SET(BgL_auxz00_290, BgL_arg1240z00_270); } } 
{ /* ./Tools/location.scm 15 */
int BgL_auxz00_272;
{ /* ./Tools/location.scm 15 */
long BgL_auxz00_293;
BgL_auxz00_293 = 
(BgL_iz00_267-((long)1)); 
BgL_auxz00_272 = 
(int)(BgL_auxz00_293); } 
{ 
long BgL_iz00_296;
BgL_iz00_296 = 
(long)(BgL_auxz00_272); 
BgL_iz00_267 = BgL_iz00_296; 
goto BgL_loopz00_268;} } } } } } } 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zztools_locationz00()
{ AN_OBJECT;
{ /* ./Tools/location.scm 15 */
return BUNSPEC;} 
}



/* find-location */
BGL_EXPORTED_DEF obj_t BGl_findzd2locationzd2zztools_locationz00(obj_t BgL_expz00_15)
{ AN_OBJECT;
{ /* ./Tools/location.scm 27 */
{ 
obj_t BgL_locz00_36;
{ /* ./Tools/location.scm 39 */
bool_t BgL_test1039z00_34;
BgL_test1039z00_34 = 
EXTENDED_PAIRP(BgL_expz00_15); 
if(BgL_test1039z00_34)
{ /* ./Tools/location.scm 39 */
{ /* ./Tools/location.scm 41 */
obj_t BgL_arg1041z00_35;
BgL_arg1041z00_35 = 
CER(BgL_expz00_15); 
BgL_locz00_36 = BgL_arg1041z00_35; 
{ /* ./Tools/location.scm 29 */
bool_t BgL_test1046z00_38;
if(
STRUCTP(BgL_locz00_36))
{ /* ./Tools/location.scm 29 */
obj_t BgL_auxz00_305;obj_t BgL_auxz00_303;
BgL_auxz00_305 = 
CNST_TABLE_REF(((long)0)); 
BgL_auxz00_303 = 
STRUCT_KEY(BgL_locz00_36); 
BgL_test1046z00_38 = 
(BgL_auxz00_303==BgL_auxz00_305); }  else 
{ /* ./Tools/location.scm 29 */
BgL_test1046z00_38 = ((bool_t)0); } 
if(BgL_test1046z00_38)
{ /* ./Tools/location.scm 29 */
return BgL_locz00_36;}  else 
{ 
obj_t BgL_fnamez00_39;obj_t BgL_posz00_40;
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1047z00_48;
BgL_test1047z00_48 = 
PAIRP(BgL_locz00_36); 
if(BgL_test1047z00_48)
{ /* ./Tools/location.scm 31 */
obj_t BgL_cdrzd2111zd2_49;
BgL_cdrzd2111zd2_49 = 
CDR(BgL_locz00_36); 
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1048z00_50;
{ /* ./Tools/location.scm 31 */
obj_t BgL_auxz00_314;obj_t BgL_auxz00_312;
BgL_auxz00_314 = 
CNST_TABLE_REF(((long)1)); 
BgL_auxz00_312 = 
CAR(BgL_locz00_36); 
BgL_test1048z00_50 = 
(BgL_auxz00_312==BgL_auxz00_314); } 
if(BgL_test1048z00_50)
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1049z00_51;
BgL_test1049z00_51 = 
PAIRP(BgL_cdrzd2111zd2_49); 
if(BgL_test1049z00_51)
{ /* ./Tools/location.scm 31 */
obj_t BgL_cdrzd2115zd2_52;
BgL_cdrzd2115zd2_52 = 
CDR(BgL_cdrzd2111zd2_49); 
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1050z00_53;
BgL_test1050z00_53 = 
PAIRP(BgL_cdrzd2115zd2_52); 
if(BgL_test1050z00_53)
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1051z00_54;
{ /* ./Tools/location.scm 31 */
obj_t BgL_auxz00_323;
BgL_auxz00_323 = 
CDR(BgL_cdrzd2115zd2_52); 
BgL_test1051z00_54 = 
NULLP(BgL_auxz00_323); } 
if(BgL_test1051z00_54)
{ /* ./Tools/location.scm 31 */
obj_t BgL_arg1053z00_55;obj_t BgL_arg1054z00_56;
BgL_arg1053z00_55 = 
CAR(BgL_cdrzd2111zd2_49); 
BgL_arg1054z00_56 = 
CAR(BgL_cdrzd2115zd2_52); 
BgL_fnamez00_39 = BgL_arg1053z00_55; 
BgL_posz00_40 = BgL_arg1054z00_56; 
{ /* ./Tools/location.scm 33 */
obj_t BgL_list1104z00_69;
{ /* ./Tools/location.scm 33 */
obj_t BgL_arg1107z00_71;
{ /* ./Tools/location.scm 33 */
obj_t BgL_arg1111z00_73;
BgL_arg1111z00_73 = 
MAKE_PAIR(BgL_locz00_36, BNIL); 
BgL_arg1107z00_71 = 
MAKE_PAIR(BGl_string1230z00zztools_locationz00, BgL_arg1111z00_73); } 
BgL_list1104z00_69 = 
MAKE_PAIR(BGl_string1231z00zztools_locationz00, BgL_arg1107z00_71); } 
return 
BGl_warningz00zz__errorz00(BgL_list1104z00_69);} }  else 
{ /* ./Tools/location.scm 31 */
obj_t BgL_cdrzd2137zd2_58;
BgL_cdrzd2137zd2_58 = 
CDR(BgL_cdrzd2111zd2_49); 
{ /* ./Tools/location.scm 31 */
obj_t BgL_cdrzd2144zd2_59;
BgL_cdrzd2144zd2_59 = 
CDR(BgL_cdrzd2137zd2_58); 
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1058z00_60;
BgL_test1058z00_60 = 
PAIRP(BgL_cdrzd2144zd2_59); 
if(BgL_test1058z00_60)
{ /* ./Tools/location.scm 31 */
bool_t BgL_test1059z00_61;
{ /* ./Tools/location.scm 31 */
obj_t BgL_auxz00_337;
BgL_auxz00_337 = 
CDR(BgL_cdrzd2144zd2_59); 
BgL_test1059z00_61 = 
NULLP(BgL_auxz00_337); } 
if(BgL_test1059z00_61)
{ /* ./Tools/location.scm 31 */
obj_t BgL_arg1061z00_62;obj_t BgL_arg1064z00_63;obj_t BgL_arg1065z00_64;
BgL_arg1061z00_62 = 
CAR(BgL_cdrzd2111zd2_49); 
BgL_arg1064z00_63 = 
CAR(BgL_cdrzd2137zd2_58); 
BgL_arg1065z00_64 = 
CAR(BgL_cdrzd2144zd2_59); 
{ /* ./Tools/location.scm 31 */
obj_t BgL_newz00_173;
{ /* ./Tools/location.scm 31 */
int BgL_auxz00_346;obj_t BgL_auxz00_344;
BgL_auxz00_346 = 
(int)(((long)3)); 
BgL_auxz00_344 = 
CNST_TABLE_REF(((long)0)); 
BgL_newz00_173 = 
create_struct(BgL_auxz00_344, BgL_auxz00_346); } 
{ /* ./Tools/location.scm 31 */
int BgL_kz00_177;
BgL_kz00_177 = 
(int)(((long)2)); 
STRUCT_SET(BgL_newz00_173, BgL_kz00_177, BgL_arg1065z00_64); } 
{ /* ./Tools/location.scm 31 */
int BgL_kz00_182;
BgL_kz00_182 = 
(int)(((long)1)); 
STRUCT_SET(BgL_newz00_173, BgL_kz00_182, BgL_arg1064z00_63); } 
{ /* ./Tools/location.scm 31 */
int BgL_kz00_187;
BgL_kz00_187 = 
(int)(((long)0)); 
STRUCT_SET(BgL_newz00_173, BgL_kz00_187, BgL_arg1061z00_62); } 
return BgL_newz00_173;} }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} } } } }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} } }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} } }  else 
{ /* ./Tools/location.scm 31 */
return BFALSE;} } } } } }  else 
{ /* ./Tools/location.scm 39 */
return BFALSE;} } } } 
}



/* _find-location */
obj_t BGl__findzd2locationzd2zztools_locationz00(obj_t BgL_envz00_252, obj_t BgL_expz00_253)
{ AN_OBJECT;
{ /* ./Tools/location.scm 27 */
return 
BGl_findzd2locationzd2zztools_locationz00(BgL_expz00_253);} 
}



/* find-location/loc */
BGL_EXPORTED_DEF obj_t BGl_findzd2locationzf2locz20zztools_locationz00(obj_t BgL_expz00_16, obj_t BgL_locz00_17)
{ AN_OBJECT;
{ /* ./Tools/location.scm 48 */
{ /* ./Tools/location.scm 49 */
obj_t BgL_newzd2loczd2_208;
BgL_newzd2loczd2_208 = 
BGl_findzd2locationzd2zztools_locationz00(BgL_expz00_16); 
{ /* ./Tools/location.scm 49 */
bool_t BgL_testz00_357;
if(
STRUCTP(BgL_newzd2loczd2_208))
{ /* ./Tools/location.scm 49 */
obj_t BgL_auxz00_362;obj_t BgL_auxz00_360;
BgL_auxz00_362 = 
CNST_TABLE_REF(((long)0)); 
BgL_auxz00_360 = 
STRUCT_KEY(BgL_newzd2loczd2_208); 
BgL_testz00_357 = 
(BgL_auxz00_360==BgL_auxz00_362); }  else 
{ /* ./Tools/location.scm 49 */
BgL_testz00_357 = ((bool_t)0)
; } 
if(BgL_testz00_357)
{ /* ./Tools/location.scm 49 */
return BgL_newzd2loczd2_208;}  else 
{ /* ./Tools/location.scm 49 */
return BgL_locz00_17;} } } } 
}



/* _find-location/loc */
obj_t BGl__findzd2locationzf2locz20zztools_locationz00(obj_t BgL_envz00_254, obj_t BgL_expz00_255, obj_t BgL_locz00_256)
{ AN_OBJECT;
{ /* ./Tools/location.scm 48 */
return 
BGl_findzd2locationzf2locz20zztools_locationz00(BgL_expz00_255, BgL_locz00_256);} 
}



/* location-full-fname */
BGL_EXPORTED_DEF obj_t BGl_locationzd2fullzd2fnamez00zztools_locationz00(obj_t BgL_locz00_18)
{ AN_OBJECT;
{ /* ./Tools/location.scm 57 */
{ /* ./Tools/location.scm 58 */
obj_t BgL_filezd2namezd2_77;
{ /* ./Tools/location.scm 58 */
int BgL_auxz00_366;
BgL_auxz00_366 = 
(int)(((long)0)); 
BgL_filezd2namezd2_77 = 
STRUCT_REF(BgL_locz00_18, BgL_auxz00_366); } 
{ /* ./Tools/location.scm 58 */
obj_t BgL_fullzd2namezd2_78;
{ /* ./Tools/location.scm 59 */
obj_t BgL_arg1125z00_82;
BgL_arg1125z00_82 = 
BGl_pwdz00zz__osz00(); 
BgL_fullzd2namezd2_78 = 
BGl_makezd2filezd2namez00zz__osz00(BgL_arg1125z00_82, BgL_filezd2namezd2_77); } 
{ /* ./Tools/location.scm 59 */

{ /* ./Tools/location.scm 60 */
bool_t BgL_test1119z00_79;
{ /* ./Tools/location.scm 60 */
char * BgL_namez00_220;
BgL_namez00_220 = 
BSTRING_TO_STRING(BgL_fullzd2namezd2_78); 
BgL_test1119z00_79 = 
fexists(BgL_namez00_220); } 
if(BgL_test1119z00_79)
{ /* ./Tools/location.scm 60 */
return BgL_fullzd2namezd2_78;}  else 
{ /* ./Tools/location.scm 62 */
obj_t BgL_libzd2namezd2_80;
BgL_libzd2namezd2_80 = 
BGl_makezd2filezd2namez00zz__osz00(BGl_za2libzd2srczd2dirza2z00zzengine_paramz00, BgL_filezd2namezd2_77); 
{ /* ./Tools/location.scm 63 */
bool_t BgL_test1120z00_81;
{ /* ./Tools/location.scm 63 */
char * BgL_namez00_221;
BgL_namez00_221 = 
BSTRING_TO_STRING(BgL_libzd2namezd2_80); 
BgL_test1120z00_81 = 
fexists(BgL_namez00_221); } 
if(BgL_test1120z00_81)
{ /* ./Tools/location.scm 63 */
return BgL_libzd2namezd2_80;}  else 
{ /* ./Tools/location.scm 63 */
return BgL_filezd2namezd2_77;} } } } } } } } 
}



/* _location-full-fname */
obj_t BGl__locationzd2fullzd2fnamez00zztools_locationz00(obj_t BgL_envz00_257, obj_t BgL_locz00_258)
{ AN_OBJECT;
{ /* ./Tools/location.scm 57 */
return 
BGl_locationzd2fullzd2fnamez00zztools_locationz00(BgL_locz00_258);} 
}



/* location-shape */
BGL_EXPORTED_DEF obj_t BGl_locationzd2shapezd2zztools_locationz00(obj_t BgL_locz00_19, obj_t BgL_lz00_20)
{ AN_OBJECT;
{ /* ./Tools/location.scm 70 */
{ /* ./Tools/location.scm 71 */
bool_t BgL_test1129z00_83;
if(
CBOOL(BGl_za2locationzd2shapezf3za2z21zzengine_paramz00))
{ /* ./Tools/location.scm 71 */
if(
STRUCTP(BgL_locz00_19))
{ /* ./Tools/location.scm 71 */
obj_t BgL_auxz00_385;obj_t BgL_auxz00_383;
BgL_auxz00_385 = 
CNST_TABLE_REF(((long)0)); 
BgL_auxz00_383 = 
STRUCT_KEY(BgL_locz00_19); 
BgL_test1129z00_83 = 
(BgL_auxz00_383==BgL_auxz00_385); }  else 
{ /* ./Tools/location.scm 71 */
BgL_test1129z00_83 = ((bool_t)0); } }  else 
{ /* ./Tools/location.scm 71 */
BgL_test1129z00_83 = ((bool_t)0); } 
if(BgL_test1129z00_83)
{ /* ./Tools/location.scm 72 */
obj_t BgL_arg1131z00_84;
{ /* ./Tools/location.scm 72 */
obj_t BgL_v1003z00_85;
{ 
int BgL_auxz00_389;
BgL_auxz00_389 = 
(int)(((long)3)); 
BgL_v1003z00_85 = 
create_vector(BgL_auxz00_389); } 
{ /* ./Tools/location.scm 72 */
obj_t BgL_arg1135z00_87;
{ /* ./Tools/location.scm 75 */
int BgL_auxz00_392;
BgL_auxz00_392 = 
(int)(((long)2)); 
BgL_arg1135z00_87 = 
STRUCT_REF(BgL_locz00_19, BgL_auxz00_392); } 
{ /* ./Tools/location.scm 72 */
int BgL_kz00_233;
BgL_kz00_233 = 
(int)(((long)2)); 
VECTOR_SET(BgL_v1003z00_85,BgL_kz00_233,BgL_arg1135z00_87); } } 
{ /* ./Tools/location.scm 72 */
obj_t BgL_arg1141z00_89;
{ /* ./Tools/location.scm 74 */
int BgL_auxz00_397;
BgL_auxz00_397 = 
(int)(((long)1)); 
BgL_arg1141z00_89 = 
STRUCT_REF(BgL_locz00_19, BgL_auxz00_397); } 
{ /* ./Tools/location.scm 72 */
int BgL_kz00_239;
BgL_kz00_239 = 
(int)(((long)1)); 
VECTOR_SET(BgL_v1003z00_85,BgL_kz00_239,BgL_arg1141z00_89); } } 
{ /* ./Tools/location.scm 72 */
obj_t BgL_arg1148z00_91;
{ /* ./Tools/location.scm 72 */
obj_t BgL_arg1151z00_92;
{ /* ./Tools/location.scm 72 */
int BgL_auxz00_402;
BgL_auxz00_402 = 
(int)(((long)0)); 
BgL_arg1151z00_92 = 
STRUCT_REF(BgL_locz00_19, BgL_auxz00_402); } 
{ /* ./Tools/location.scm 72 */
char * BgL_auxz00_405;
BgL_auxz00_405 = 
BSTRING_TO_STRING(BgL_arg1151z00_92); 
BgL_arg1148z00_91 = 
string_to_symbol(BgL_auxz00_405); } } 
{ /* ./Tools/location.scm 72 */
int BgL_kz00_246;
BgL_kz00_246 = 
(int)(((long)0)); 
VECTOR_SET(BgL_v1003z00_85,BgL_kz00_246,BgL_arg1148z00_91); } } 
BgL_arg1131z00_84 = BgL_v1003z00_85; } 
return 
MAKE_PAIR(BgL_arg1131z00_84, BgL_lz00_20);}  else 
{ /* ./Tools/location.scm 71 */
return BgL_lz00_20;} } } 
}



/* _location-shape */
obj_t BGl__locationzd2shapezd2zztools_locationz00(obj_t BgL_envz00_259, obj_t BgL_locz00_260, obj_t BgL_lz00_261)
{ AN_OBJECT;
{ /* ./Tools/location.scm 70 */
return 
BGl_locationzd2shapezd2zztools_locationz00(BgL_locz00_260, BgL_lz00_261);} 
}



/* dump-location */
BGL_EXPORTED_DEF obj_t BGl_dumpzd2locationzd2zztools_locationz00(obj_t BgL_fromz00_21, obj_t BgL_exprz00_22)
{ AN_OBJECT;
{ /* ./Tools/location.scm 82 */
{ /* ./Tools/location.scm 83 */
obj_t BgL_port1004z00_93;
BgL_port1004z00_93 = 
BGL_CURRENT_OUTPUT_PORT(); 
display_string(BGl_string1232z00zztools_locationz00, BgL_port1004z00_93); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_fromz00_21, BgL_port1004z00_93); 
display_string(BGl_string1233z00zztools_locationz00, BgL_port1004z00_93); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_exprz00_22, BgL_port1004z00_93); 
display_string(BGl_string1234z00zztools_locationz00, BgL_port1004z00_93); 
{ /* ./Tools/location.scm 83 */
obj_t BgL_arg1162z00_94;
BgL_arg1162z00_94 = 
BGl_findzd2locationzd2zztools_locationz00(BgL_exprz00_22); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_arg1162z00_94, BgL_port1004z00_93); } 
WRITE_CHAR(((unsigned char)'\n'), BgL_port1004z00_93); } 
{ 
obj_t BgL_exprz00_95;
{ /* ./Tools/location.scm 84 */
bool_t BgL_auxz00_421;
BgL_exprz00_95 = BgL_exprz00_22; 
BgL_loopz00_96:
{ /* ./Tools/location.scm 85 */
bool_t BgL_test1168z00_97;
BgL_test1168z00_97 = 
PAIRP(BgL_exprz00_95); 
if(BgL_test1168z00_97)
{ /* ./Tools/location.scm 85 */
{ /* ./Tools/location.scm 87 */
obj_t BgL_port1005z00_98;
BgL_port1005z00_98 = 
BGL_CURRENT_OUTPUT_PORT(); 
display_string(BGl_string1235z00zztools_locationz00, BgL_port1005z00_98); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_fromz00_21, BgL_port1005z00_98); 
display_string(BGl_string1233z00zztools_locationz00, BgL_port1005z00_98); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_exprz00_95, BgL_port1005z00_98); 
display_string(BGl_string1234z00zztools_locationz00, BgL_port1005z00_98); 
{ /* ./Tools/location.scm 88 */
obj_t BgL_arg1177z00_99;
BgL_arg1177z00_99 = 
BGl_findzd2locationzd2zztools_locationz00(BgL_exprz00_95); 
BGl_displayzd22zd2zz__r4_output_6_10_3z00(BgL_arg1177z00_99, BgL_port1005z00_98); } 
WRITE_CHAR(((unsigned char)'\n'), BgL_port1005z00_98); } 
{ /* ./Tools/location.scm 89 */
obj_t BgL_arg1183z00_100;
BgL_arg1183z00_100 = 
CDR(BgL_exprz00_95); 
{ 
obj_t BgL_exprz00_434;
BgL_exprz00_434 = BgL_arg1183z00_100; 
BgL_exprz00_95 = BgL_exprz00_434; 
goto BgL_loopz00_96;} } }  else 
{ /* ./Tools/location.scm 85 */
BgL_auxz00_421 = ((bool_t)0)
; } } 
return 
BBOOL(BgL_auxz00_421);} } } 
}



/* _dump-location */
obj_t BGl__dumpzd2locationzd2zztools_locationz00(obj_t BgL_envz00_262, obj_t BgL_fromz00_263, obj_t BgL_exprz00_264)
{ AN_OBJECT;
{ /* ./Tools/location.scm 82 */
return 
BGl_dumpzd2locationzd2zztools_locationz00(BgL_fromz00_263, BgL_exprz00_264);} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zztools_locationz00()
{ AN_OBJECT;
{ /* ./Tools/location.scm 15 */
return 
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "tools_location");} 
}

