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

#include <bigloo.h>


/* Object type definitions */
typedef struct BgL_typez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_siza7eza7;
   obj_t BgL_classz00;
   obj_t BgL_coercezd2tozd2;
   obj_t BgL_parentsz00;
   bool_t BgL_initzf3zf3;
   bool_t BgL_magiczf3zf3;
   obj_t BgL_z42z42;
   obj_t BgL_aliasz00;
   obj_t BgL_pointedzd2tozd2byz00;
   obj_t BgL_tvectorz00;
   obj_t BgL_locationz00;
   obj_t BgL_importzd2locationzd2;
} *BgL_typez00_bglt;

typedef struct BgL_valuez00_bgl {
   header_t header;
   obj_t widening;
} *BgL_valuez00_bglt;

typedef struct BgL_variablez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
} *BgL_variablez00_bglt;

typedef struct BgL_globalz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   obj_t BgL_modulez00;
   obj_t BgL_importz00;
   bool_t BgL_evaluablezf3zf3;
   bool_t BgL_libraryzf3zf3;
   bool_t BgL_userzf3zf3;
   obj_t BgL_pragmaz00;
   obj_t BgL_srcz00;
   obj_t BgL_jvmzd2typezd2namez00;
} *BgL_globalz00_bglt;

typedef struct BgL_localz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   bool_t BgL_userzf3zf3;
   long BgL_keyz00;
} *BgL_localz00_bglt;

typedef struct BgL_funz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
} *BgL_funz00_bglt;

typedef struct BgL_sfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_propertyz00;
   obj_t BgL_argsz00;
   obj_t BgL_bodyz00;
   obj_t BgL_classz00;
   obj_t BgL_dssslzd2keywordszd2;
   obj_t BgL_locz00;
} *BgL_sfunz00_bglt;

typedef struct BgL_cfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_argszd2typezd2;
   bool_t BgL_macrozf3zf3;
   bool_t BgL_infixzf3zf3;
   obj_t BgL_methodz00;
} *BgL_cfunz00_bglt;

typedef struct BgL_svarz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
} *BgL_svarz00_bglt;

typedef struct BgL_scnstz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_nodez00;
   obj_t BgL_classz00;
   obj_t BgL_locz00;
} *BgL_scnstz00_bglt;

typedef struct BgL_cvarz00_bgl {
   header_t header;
   obj_t widening;
   bool_t BgL_macrozf3zf3;
} *BgL_cvarz00_bglt;

typedef struct BgL_sexitz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_handlerz00;
   bool_t BgL_detachedzf3zf3;
} *BgL_sexitz00_bglt;

typedef struct BgL_feffectz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_readz00;
   obj_t BgL_writez00;
} *BgL_feffectz00_bglt;

typedef struct BgL_nodez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
} *BgL_nodez00_bglt;

typedef struct BgL_nodezf2effectzf2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
} *BgL_nodezf2effectzf2_bglt;

typedef struct BgL_atomz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_valuez00;
} *BgL_atomz00_bglt;

typedef struct BgL_varz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_variablez00_bgl * BgL_variablez00;
} *BgL_varz00_bglt;

typedef struct BgL_closurez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_variablez00_bgl * BgL_variablez00;
} *BgL_closurez00_bglt;

typedef struct BgL_kwotez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_valuez00;
} *BgL_kwotez00_bglt;

typedef struct BgL_sequencez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_nodesz00;
} *BgL_sequencez00_bglt;

typedef struct BgL_appz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_varz00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
} *BgL_appz00_bglt;

typedef struct BgL_appzd2lyzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_funz00;
   struct BgL_nodez00_bgl * BgL_argz00;
} *BgL_appzd2lyzd2_bglt;

typedef struct BgL_funcallz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
   obj_t BgL_strengthz00;
} *BgL_funcallz00_bglt;

typedef struct BgL_externz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
} *BgL_externz00_bglt;

typedef struct BgL_pragmaz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_formatz00;
} *BgL_pragmaz00_bglt;

typedef struct BgL_getfieldz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_fnamez00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_getfieldz00_bglt;

typedef struct BgL_setfieldz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_fnamez00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_setfieldz00_bglt;

typedef struct BgL_newz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
} *BgL_newz00_bglt;

typedef struct BgL_vallocz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2heapzd2formatz00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_vallocz00_bglt;

typedef struct BgL_vrefz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vrefz00_bglt;

typedef struct BgL_vsetz12z12_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vsetz12z12_bglt;

typedef struct BgL_vlengthz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vlengthz00_bglt;

typedef struct BgL_isaz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   struct BgL_typez00_bgl * BgL_classz00;
} *BgL_isaz00_bglt;

typedef struct BgL_castz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_argz00;
} *BgL_castz00_bglt;

typedef struct BgL_setqz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_setqz00_bglt;

typedef struct BgL_conditionalz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_testz00;
   struct BgL_nodez00_bgl * BgL_truez00;
   struct BgL_nodez00_bgl * BgL_falsez00;
} *BgL_conditionalz00_bglt;

typedef struct BgL_failz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_procz00;
   struct BgL_nodez00_bgl * BgL_msgz00;
   struct BgL_nodez00_bgl * BgL_objz00;
} *BgL_failz00_bglt;

typedef struct BgL_selectz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_testz00;
   obj_t BgL_clausesz00;
   struct BgL_typez00_bgl * BgL_itemzd2typezd2;
} *BgL_selectz00_bglt;

typedef struct BgL_letzd2funzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_localsz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
} *BgL_letzd2funzd2_bglt;

typedef struct BgL_letzd2varzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_bindingsz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
   bool_t BgL_removablezf3zf3;
} *BgL_letzd2varzd2_bglt;

typedef struct BgL_setzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
} *BgL_setzd2exzd2itz00_bglt;

typedef struct BgL_jumpzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_exitz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_jumpzd2exzd2itz00_bglt;

typedef struct BgL_makezd2boxzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_makezd2boxzd2_bglt;

typedef struct BgL_boxzd2refzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_varz00_bgl * BgL_varz00;
} *BgL_boxzd2refzd2_bglt;

typedef struct BgL_boxzd2setz12zc0_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_boxzd2setz12zc0_bglt;

typedef struct BgL_sfunzf2ginfozf2_bgl {
   bool_t BgL_gzf3zf3;
   obj_t BgL_cfromz00;
   obj_t BgL_cfromza2za2;
   obj_t BgL_ctoz00;
   obj_t BgL_ctoza2za2;
   obj_t BgL_cfunctionz00;
   obj_t BgL_integratorz00;
   obj_t BgL_imarkz00;
   obj_t BgL_ownerz00;
   obj_t BgL_integratedz00;
   obj_t BgL_pluggedzd2inzd2;
   long BgL_markz00;
   obj_t BgL_freezd2markzd2;
   obj_t BgL_thezd2globalzd2;
   obj_t BgL_kapturedz00;
   obj_t BgL_newzd2bodyzd2;
   long BgL_bmarkz00;
   long BgL_umarkz00;
   obj_t BgL_freez00;
   obj_t BgL_boundz00;
} *BgL_sfunzf2ginfozf2_bglt;

typedef struct BgL_svarzf2ginfozf2_bgl {
   bool_t BgL_kapturedzf3zf3;
   long BgL_freezd2markzd2;
   long BgL_markz00;
   bool_t BgL_celledzf3zf3;
} *BgL_svarzf2ginfozf2_bglt;

typedef struct BgL_sexitzf2ginfozf2_bgl {
   bool_t BgL_gzf3zf3;
   bool_t BgL_kapturedzf3zf3;
   long BgL_freezd2markzd2;
   long BgL_markz00;
} *BgL_sexitzf2ginfozf2_bglt;

typedef struct BgL_localzf2ginfozf2_bgl {
   bool_t BgL_escapezf3zf3;
} *BgL_localzf2ginfozf2_bglt;

typedef struct BgL_globalzf2ginfozf2_bgl {
   bool_t BgL_escapezf3zf3;
   obj_t BgL_globalzd2closurezd2;
} *BgL_globalzf2ginfozf2_bglt;


static obj_t BGl_methodzd2initzd2zzglobaliza7e_kaptureza7();
static long BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7;
static obj_t BGl__setzd2kapturedz12zc0zzglobaliza7e_kaptureza7(obj_t, obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
static obj_t BGl_setzd2onezd2kapturedz12z12zzglobaliza7e_kaptureza7(BgL_localz00_bglt, obj_t);
extern obj_t BGl_funz00zzast_varz00;
extern obj_t BGl_ctozd2transitivezd2closurez12z12zzglobaliza7e_cloctoza7(BgL_localz00_bglt);
BGL_EXPORTED_DECL obj_t BGl_unionz00zzglobaliza7e_kaptureza7(obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzglobaliza7e_kaptureza7();
static obj_t BGl_toplevelzd2initzd2zzglobaliza7e_kaptureza7();
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_kaptureza7(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_tracez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_speekz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_argsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_cachez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_nodez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_sexpz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_localz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_ginfoza7(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_nodeza7(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_freeza7(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_cloctoza7(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
static obj_t BGl__unionz00zzglobaliza7e_kaptureza7(obj_t, obj_t);
extern obj_t BGl_freezd2fromzd2zzglobaliza7e_freeza7(obj_t, BgL_localz00_bglt);
extern obj_t BGl_getzd2freezd2varsz00zzglobaliza7e_freeza7(BgL_nodez00_bglt, BgL_localz00_bglt);
extern obj_t BGl_localz00zzast_varz00;
BGL_IMPORT obj_t bgl_append2(obj_t, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zzglobaliza7e_kaptureza7 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_setzd2kapturedz12zc0zzglobaliza7e_kaptureza7(obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzglobaliza7e_kaptureza7();
static obj_t *__cnst;


DEFINE_EXPORT_PROCEDURE( BGl_setzd2kapturedz12zd2envz12zzglobaliza7e_kaptureza7, BgL_bgl__setza7d2kapturedza712za7c0za7za7globaliza7a7e_kaptureza7a73758za7, BGl__setzd2kapturedz12zc0zzglobaliza7e_kaptureza7, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_unionzd2envzd2zzglobaliza7e_kaptureza7, BgL_bgl__unionza700za7za7globaliza7a7e_kaptureza7a73759za7, BGl__unionz00zzglobaliza7e_kaptureza7, 0L, 1 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzglobaliza7e_kaptureza7(long BgL_checksumz00_1393, char * BgL_fromz00_1394)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzglobaliza7e_kaptureza7))
{ 
BGl_requirezd2initializa7ationz75zzglobaliza7e_kaptureza7 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzglobaliza7e_kaptureza7(); 
BGl_importedzd2moduleszd2initz00zzglobaliza7e_kaptureza7(); 
BGl_toplevelzd2initzd2zzglobaliza7e_kaptureza7(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzglobaliza7e_kaptureza7()
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 15 */
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "globalize_kapture"); 
return BUNSPEC;} 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zzglobaliza7e_kaptureza7()
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 15 */
return ( 
BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7 = ((long)0), BUNSPEC) ;} 
}



/* set-kaptured! */
BGL_EXPORTED_DEF obj_t BGl_setzd2kapturedz12zc0zzglobaliza7e_kaptureza7(obj_t BgL_localza2za2_1)
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 36 */
{ 
obj_t BgL_l3035z00_796;
BgL_l3035z00_796 = BgL_localza2za2_1; 
BgL_forzd2each3036zd2_797:
{ /* ./Globalize/kapture.scm 39 */
bool_t BgL_test3046z00_798;
BgL_test3046z00_798 = 
PAIRP(BgL_l3035z00_796); 
if(BgL_test3046z00_798)
{ /* ./Globalize/kapture.scm 39 */
{ /* ./Globalize/kapture.scm 40 */
obj_t BgL_localz00_799;
BgL_localz00_799 = 
CAR(BgL_l3035z00_796); 
BGl_ctozd2transitivezd2closurez12z12zzglobaliza7e_cloctoza7(
(BgL_localz00_bglt)(BgL_localz00_799)); } 
{ /* ./Globalize/kapture.scm 39 */
obj_t BgL_arg3050z00_800;
BgL_arg3050z00_800 = 
CDR(BgL_l3035z00_796); 
{ 
obj_t BgL_l3035z00_1410;
BgL_l3035z00_1410 = BgL_arg3050z00_800; 
BgL_l3035z00_796 = BgL_l3035z00_1410; 
goto BgL_forzd2each3036zd2_797;} } }  else 
{ /* ./Globalize/kapture.scm 39 */((bool_t)1); } } } 
{ 
obj_t BgL_l3037z00_801;
{ /* ./Globalize/kapture.scm 43 */
bool_t BgL_auxz00_1411;
BgL_l3037z00_801 = BgL_localza2za2_1; 
BgL_forzd2each3038zd2_802:
{ /* ./Globalize/kapture.scm 43 */
bool_t BgL_test3055z00_803;
BgL_test3055z00_803 = 
PAIRP(BgL_l3037z00_801); 
if(BgL_test3055z00_803)
{ /* ./Globalize/kapture.scm 43 */
{ /* ./Globalize/kapture.scm 44 */
obj_t BgL_localz00_804;
BgL_localz00_804 = 
CAR(BgL_l3037z00_801); 
BGl_setzd2onezd2kapturedz12z12zzglobaliza7e_kaptureza7(
(BgL_localz00_bglt)(BgL_localz00_804), BgL_localz00_804); } 
{ /* ./Globalize/kapture.scm 43 */
obj_t BgL_arg3059z00_805;
BgL_arg3059z00_805 = 
CDR(BgL_l3037z00_801); 
{ 
obj_t BgL_l3037z00_1418;
BgL_l3037z00_1418 = BgL_arg3059z00_805; 
BgL_l3037z00_801 = BgL_l3037z00_1418; 
goto BgL_forzd2each3038zd2_802;} } }  else 
{ /* ./Globalize/kapture.scm 43 */
BgL_auxz00_1411 = ((bool_t)1); } } 
return 
BBOOL(BgL_auxz00_1411);} } } 
}



/* _set-kaptured! */
obj_t BGl__setzd2kapturedz12zc0zzglobaliza7e_kaptureza7(obj_t BgL_envz00_1385, obj_t BgL_localza2za2_1386)
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 36 */
return 
BGl_setzd2kapturedz12zc0zzglobaliza7e_kaptureza7(BgL_localza2za2_1386);} 
}



/* set-one-kaptured! */
obj_t BGl_setzd2onezd2kapturedz12z12zzglobaliza7e_kaptureza7(BgL_localz00_bglt BgL_localz00_2, obj_t BgL_lockingz00_3)
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 53 */
{ /* ./Globalize/kapture.scm 58 */
BgL_valuez00_bglt BgL_infoz00_806;
{ /* ./Globalize/kapture.scm 58 */
BgL_variablez00_bglt BgL_obj1100z00_1291;
BgL_obj1100z00_1291 = 
(BgL_variablez00_bglt)(BgL_localz00_2); 
BgL_infoz00_806 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1291))->BgL_valuez00); } 
{ /* ./Globalize/kapture.scm 58 */
obj_t BgL_kapturedz00_807;
{ /* ./Globalize/kapture.scm 59 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2784z00_1292;
BgL_obj2784z00_1292 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
{ 
obj_t BgL_auxz00_1424;
{ /* ./Globalize/kapture.scm 59 */
BgL_objectz00_bglt BgL_auxz00_1425;
BgL_auxz00_1425 = 
(BgL_objectz00_bglt)(BgL_obj2784z00_1292); 
BgL_auxz00_1424 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1425); } 
BgL_kapturedz00_807 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1424))->BgL_kapturedz00); } } 
{ /* ./Globalize/kapture.scm 59 */

{ /* ./Globalize/kapture.scm 61 */
bool_t BgL_test3063z00_808;
if(
PAIRP(BgL_kapturedz00_807))
{ /* ./Globalize/kapture.scm 61 */
BgL_test3063z00_808 = ((bool_t)1); }  else 
{ /* ./Globalize/kapture.scm 61 */
BgL_test3063z00_808 = 
NULLP(BgL_kapturedz00_807); } 
if(BgL_test3063z00_808)
{ /* ./Globalize/kapture.scm 61 */
{ /* ./Globalize/kapture.scm 64 */
obj_t BgL_v3039z00_809;
{ 
int BgL_auxz00_1433;
BgL_auxz00_1433 = 
(int)(((long)3)); 
BgL_v3039z00_809 = 
create_vector(BgL_auxz00_1433); } 
{ /* ./Globalize/kapture.scm 64 */
int BgL_kz00_1296;
BgL_kz00_1296 = 
(int)(((long)2)); 
VECTOR_SET(BgL_v3039z00_809,BgL_kz00_1296,BgL_kapturedz00_807); } 
{ /* ./Globalize/kapture.scm 64 */
int BgL_kz00_1299;
BgL_kz00_1299 = 
(int)(((long)1)); 
VECTOR_SET(BgL_v3039z00_809,BgL_kz00_1299,BgL_lockingz00_3); } 
{ /* ./Globalize/kapture.scm 64 */
int BgL_kz00_1302;
BgL_kz00_1302 = 
(int)(((long)0)); 
VECTOR_SET(BgL_v3039z00_809,BgL_kz00_1302,BTRUE); } 
return BgL_v3039z00_809;} }  else 
{ /* ./Globalize/kapture.scm 65 */
bool_t BgL_test3068z00_810;
BgL_test3068z00_810 = 
BGl_iszd2azf3z21zz__objectz00(BgL_kapturedz00_807, BGl_localz00zzast_varz00); 
if(BgL_test3068z00_810)
{ /* ./Globalize/kapture.scm 65 */
{ /* ./Globalize/kapture.scm 68 */
obj_t BgL_v3040z00_811;
{ 
int BgL_auxz00_1444;
BgL_auxz00_1444 = 
(int)(((long)3)); 
BgL_v3040z00_811 = 
create_vector(BgL_auxz00_1444); } 
{ /* ./Globalize/kapture.scm 68 */
int BgL_kz00_1306;
BgL_kz00_1306 = 
(int)(((long)2)); 
VECTOR_SET(BgL_v3040z00_811,BgL_kz00_1306,BNIL); } 
{ /* ./Globalize/kapture.scm 68 */
int BgL_kz00_1309;
BgL_kz00_1309 = 
(int)(((long)1)); 
VECTOR_SET(BgL_v3040z00_811,BgL_kz00_1309,BgL_lockingz00_3); } 
{ /* ./Globalize/kapture.scm 68 */
int BgL_kz00_1312;
BgL_kz00_1312 = 
(int)(((long)0)); 
VECTOR_SET(BgL_v3040z00_811,BgL_kz00_1312,BFALSE); } 
return BgL_v3040z00_811;} }  else 
{ /* ./Globalize/kapture.scm 65 */
{ /* ./Globalize/kapture.scm 72 */
obj_t BgL_newzd2bodyzd2_812;
{ /* ./Globalize/kapture.scm 72 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2787z00_1314;
BgL_obj2787z00_1314 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
{ 
obj_t BgL_auxz00_1454;
{ /* ./Globalize/kapture.scm 72 */
BgL_objectz00_bglt BgL_auxz00_1455;
BgL_auxz00_1455 = 
(BgL_objectz00_bglt)(BgL_obj2787z00_1314); 
BgL_auxz00_1454 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1455); } 
BgL_newzd2bodyzd2_812 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1454))->BgL_newzd2bodyzd2); } } 
{ /* ./Globalize/kapture.scm 74 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2786z00_1315;obj_t BgL_val2785z00_1316;
BgL_obj2786z00_1315 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
BgL_val2785z00_1316 = 
(obj_t)(BgL_localz00_2); 
{ 
obj_t BgL_auxz00_1461;
{ /* ./Globalize/kapture.scm 74 */
BgL_objectz00_bglt BgL_auxz00_1462;
BgL_auxz00_1462 = 
(BgL_objectz00_bglt)(BgL_obj2786z00_1315); 
BgL_auxz00_1461 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1462); } 
((((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1461))->BgL_kapturedz00) = ((obj_t)BgL_val2785z00_1316), BUNSPEC); } } 
{ 
obj_t BgL_kapturedz00_813;obj_t BgL_ctoz00_814;bool_t BgL_setterzf3zf3_815;
{ /* ./Globalize/kapture.scm 76 */
obj_t BgL_arg3076z00_818;
{ /* ./Globalize/kapture.scm 77 */
obj_t BgL_auxz00_1473;obj_t BgL_auxz00_1466;
{ /* ./Globalize/kapture.scm 78 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2757z00_1318;
BgL_obj2757z00_1318 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
{ 
obj_t BgL_auxz00_1475;
{ /* ./Globalize/kapture.scm 78 */
BgL_objectz00_bglt BgL_auxz00_1476;
BgL_auxz00_1476 = 
(BgL_objectz00_bglt)(BgL_obj2757z00_1318); 
BgL_auxz00_1475 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1476); } 
BgL_auxz00_1473 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1475))->BgL_cfunctionz00); } } 
{ /* ./Globalize/kapture.scm 77 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2753z00_1317;
BgL_obj2753z00_1317 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
{ 
obj_t BgL_auxz00_1468;
{ /* ./Globalize/kapture.scm 77 */
BgL_objectz00_bglt BgL_auxz00_1469;
BgL_auxz00_1469 = 
(BgL_objectz00_bglt)(BgL_obj2753z00_1317); 
BgL_auxz00_1468 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1469); } 
BgL_auxz00_1466 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1468))->BgL_ctoza2za2); } } 
BgL_arg3076z00_818 = 
bgl_append2(BgL_auxz00_1466, BgL_auxz00_1473); } 
BgL_kapturedz00_813 = BNIL; 
BgL_ctoz00_814 = BgL_arg3076z00_818; 
BgL_setterzf3zf3_815 = ((bool_t)1); 
BgL_loopz00_816:
{ /* ./Globalize/kapture.scm 86 */
bool_t BgL_test3084z00_821;
BgL_test3084z00_821 = 
NULLP(BgL_ctoz00_814); 
if(BgL_test3084z00_821)
{ /* ./Globalize/kapture.scm 86 */
{ /* ./Globalize/kapture.scm 87 */
obj_t BgL_freez00_822;
BgL_freez00_822 = 
BGl_getzd2freezd2varsz00zzglobaliza7e_freeza7(
(BgL_nodez00_bglt)(BgL_newzd2bodyzd2_812), BgL_localz00_2); 
{ /* ./Globalize/kapture.scm 87 */
obj_t BgL_fkapturedz00_823;
BgL_fkapturedz00_823 = 
BGl_freezd2fromzd2zzglobaliza7e_freeza7(BgL_kapturedz00_813, BgL_localz00_2); 
{ /* ./Globalize/kapture.scm 88 */
obj_t BgL_kapturedz00_824;
{ /* ./Globalize/kapture.scm 89 */
obj_t BgL_arg3104z00_832;
BgL_arg3104z00_832 = 
MAKE_PAIR(BgL_freez00_822, BgL_fkapturedz00_823); 
BgL_kapturedz00_824 = 
BGl_unionz00zzglobaliza7e_kaptureza7(BgL_arg3104z00_832); } 
{ /* ./Globalize/kapture.scm 89 */

if(BgL_setterzf3zf3_815)
{ /* ./Globalize/kapture.scm 96 */
{ /* ./Globalize/kapture.scm 99 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2786z00_1320;obj_t BgL_val2785z00_1321;
BgL_obj2786z00_1320 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
BgL_val2785z00_1321 = BgL_kapturedz00_824; 
{ 
obj_t BgL_auxz00_1490;
{ /* ./Globalize/kapture.scm 99 */
BgL_objectz00_bglt BgL_auxz00_1491;
BgL_auxz00_1491 = 
(BgL_objectz00_bglt)(BgL_obj2786z00_1320); 
BgL_auxz00_1490 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1491); } 
((((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1490))->BgL_kapturedz00) = ((obj_t)BgL_val2785z00_1321), BUNSPEC); } } 
{ 
obj_t BgL_l3041z00_825;
{ /* ./Globalize/kapture.scm 101 */
bool_t BgL_auxz00_1495;
BgL_l3041z00_825 = BgL_kapturedz00_824; 
BgL_forzd2each3042zd2_826:
{ /* ./Globalize/kapture.scm 101 */
bool_t BgL_test3087z00_827;
BgL_test3087z00_827 = 
PAIRP(BgL_l3041z00_825); 
if(BgL_test3087z00_827)
{ /* ./Globalize/kapture.scm 101 */
{ /* ./Globalize/kapture.scm 102 */
obj_t BgL_localz00_828;
BgL_localz00_828 = 
CAR(BgL_l3041z00_825); 
{ /* ./Globalize/kapture.scm 103 */
BgL_valuez00_bglt BgL_arg3089z00_829;
{ /* ./Globalize/kapture.scm 103 */
BgL_variablez00_bglt BgL_obj1100z00_1324;
BgL_obj1100z00_1324 = 
(BgL_variablez00_bglt)(BgL_localz00_828); 
BgL_arg3089z00_829 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1324))->BgL_valuez00); } 
{ /* ./Globalize/kapture.scm 102 */
BgL_svarzf2ginfozf2_bglt BgL_obj2858z00_1325;bool_t BgL_val2857z00_1326;
BgL_obj2858z00_1325 = 
(BgL_svarzf2ginfozf2_bglt)(BgL_arg3089z00_829); 
BgL_val2857z00_1326 = ((bool_t)1); 
{ 
obj_t BgL_auxz00_1502;
{ /* ./Globalize/kapture.scm 102 */
BgL_objectz00_bglt BgL_auxz00_1503;
BgL_auxz00_1503 = 
(BgL_objectz00_bglt)(BgL_obj2858z00_1325); 
BgL_auxz00_1502 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1503); } 
((((BgL_svarzf2ginfozf2_bglt)CREF(BgL_auxz00_1502))->BgL_kapturedzf3zf3) = ((bool_t)BgL_val2857z00_1326), BUNSPEC); } } } } 
{ /* ./Globalize/kapture.scm 101 */
obj_t BgL_arg3094z00_830;
BgL_arg3094z00_830 = 
CDR(BgL_l3041z00_825); 
{ 
obj_t BgL_l3041z00_1508;
BgL_l3041z00_1508 = BgL_arg3094z00_830; 
BgL_l3041z00_825 = BgL_l3041z00_1508; 
goto BgL_forzd2each3042zd2_826;} } }  else 
{ /* ./Globalize/kapture.scm 101 */
BgL_auxz00_1495 = ((bool_t)1); } } 
BBOOL(BgL_auxz00_1495); } } }  else 
{ /* ./Globalize/kapture.scm 105 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2786z00_1328;obj_t BgL_val2785z00_1329;
BgL_obj2786z00_1328 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_infoz00_806); 
BgL_val2785z00_1329 = BFALSE; 
{ 
obj_t BgL_auxz00_1511;
{ /* ./Globalize/kapture.scm 105 */
BgL_objectz00_bglt BgL_auxz00_1512;
BgL_auxz00_1512 = 
(BgL_objectz00_bglt)(BgL_obj2786z00_1328); 
BgL_auxz00_1511 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1512); } 
((((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1511))->BgL_kapturedz00) = ((obj_t)BgL_val2785z00_1329), BUNSPEC); } } 
{ /* ./Globalize/kapture.scm 106 */
obj_t BgL_v3043z00_831;
{ 
int BgL_auxz00_1516;
BgL_auxz00_1516 = 
(int)(((long)3)); 
BgL_v3043z00_831 = 
create_vector(BgL_auxz00_1516); } 
{ /* ./Globalize/kapture.scm 106 */
int BgL_kz00_1331;
BgL_kz00_1331 = 
(int)(((long)2)); 
VECTOR_SET(BgL_v3043z00_831,BgL_kz00_1331,BgL_kapturedz00_824); } 
{ /* ./Globalize/kapture.scm 106 */
int BgL_kz00_1334;
BgL_kz00_1334 = 
(int)(((long)1)); 
VECTOR_SET(BgL_v3043z00_831,BgL_kz00_1334,BgL_lockingz00_3); } 
{ /* ./Globalize/kapture.scm 106 */
int BgL_kz00_1337;obj_t BgL_objz00_1338;
BgL_kz00_1337 = 
(int)(((long)0)); 
BgL_objz00_1338 = 
BBOOL(BgL_setterzf3zf3_815); 
VECTOR_SET(BgL_v3043z00_831,BgL_kz00_1337,BgL_objz00_1338); } 
return BgL_v3043z00_831;} } } } } }  else 
{ /* ./Globalize/kapture.scm 107 */
bool_t BgL_test3109z00_833;
{ /* ./Globalize/kapture.scm 107 */
obj_t BgL_auxz00_1528;obj_t BgL_auxz00_1526;
BgL_auxz00_1528 = 
(obj_t)(BgL_localz00_2); 
BgL_auxz00_1526 = 
CAR(BgL_ctoz00_814); 
BgL_test3109z00_833 = 
(BgL_auxz00_1526==BgL_auxz00_1528); } 
if(BgL_test3109z00_833)
{ /* ./Globalize/kapture.scm 107 */
{ /* ./Globalize/kapture.scm 111 */
obj_t BgL_arg3111z00_834;
BgL_arg3111z00_834 = 
CDR(BgL_ctoz00_814); 
{ 
obj_t BgL_ctoz00_1533;
BgL_ctoz00_1533 = BgL_arg3111z00_834; 
BgL_ctoz00_814 = BgL_ctoz00_1533; 
goto BgL_loopz00_816;} } }  else 
{ /* ./Globalize/kapture.scm 113 */
bool_t BgL_test3114z00_835;
{ /* ./Globalize/kapture.scm 113 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2740z00_1343;
{ /* ./Globalize/kapture.scm 113 */
BgL_valuez00_bglt BgL_auxz00_1534;
{ /* ./Globalize/kapture.scm 113 */
BgL_variablez00_bglt BgL_obj1100z00_1342;
{ /* ./Globalize/kapture.scm 113 */
obj_t BgL_auxz00_1535;
BgL_auxz00_1535 = 
CAR(BgL_ctoz00_814); 
BgL_obj1100z00_1342 = 
(BgL_variablez00_bglt)(BgL_auxz00_1535); } 
BgL_auxz00_1534 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1342))->BgL_valuez00); } 
BgL_obj2740z00_1343 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_auxz00_1534); } 
{ 
obj_t BgL_auxz00_1540;
{ /* ./Globalize/kapture.scm 113 */
BgL_objectz00_bglt BgL_auxz00_1541;
BgL_auxz00_1541 = 
(BgL_objectz00_bglt)(BgL_obj2740z00_1343); 
BgL_auxz00_1540 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1541); } 
BgL_test3114z00_835 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1540))->BgL_gzf3zf3); } } 
if(BgL_test3114z00_835)
{ /* ./Globalize/kapture.scm 113 */
{ /* ./Globalize/kapture.scm 116 */
obj_t BgL_otherzd2kapturedzd2_836;
{ /* ./Globalize/kapture.scm 116 */
obj_t BgL_arg3142z00_847;
BgL_arg3142z00_847 = 
CAR(BgL_ctoz00_814); 
BgL_otherzd2kapturedzd2_836 = 
BGl_setzd2onezd2kapturedz12z12zzglobaliza7e_kaptureza7(
(BgL_localz00_bglt)(BgL_arg3142z00_847), BgL_lockingz00_3); } 
{ /* ./Globalize/kapture.scm 118 */
bool_t BgL_test3115z00_837;
{ /* ./Globalize/kapture.scm 118 */
int BgL_kz00_1346;
BgL_kz00_1346 = 
(int)(((long)0)); 
{ /* ./Globalize/kapture.scm 118 */
obj_t BgL_auxz00_1550;
BgL_auxz00_1550 = 
VECTOR_REF(BgL_otherzd2kapturedzd2_836,BgL_kz00_1346); 
BgL_test3115z00_837 = 
CBOOL(BgL_auxz00_1550); } } 
if(BgL_test3115z00_837)
{ /* ./Globalize/kapture.scm 124 */
obj_t BgL_arg3117z00_838;obj_t BgL_arg3118z00_839;
{ /* ./Globalize/kapture.scm 124 */
obj_t BgL_arg3121z00_840;
{ /* ./Globalize/kapture.scm 124 */
int BgL_kz00_1348;
BgL_kz00_1348 = 
(int)(((long)2)); 
BgL_arg3121z00_840 = 
VECTOR_REF(BgL_otherzd2kapturedzd2_836,BgL_kz00_1348); } 
BgL_arg3117z00_838 = 
MAKE_PAIR(BgL_arg3121z00_840, BgL_kapturedz00_813); } 
BgL_arg3118z00_839 = 
CDR(BgL_ctoz00_814); 
{ 
obj_t BgL_ctoz00_1559;obj_t BgL_kapturedz00_1558;
BgL_kapturedz00_1558 = BgL_arg3117z00_838; 
BgL_ctoz00_1559 = BgL_arg3118z00_839; 
BgL_ctoz00_814 = BgL_ctoz00_1559; 
BgL_kapturedz00_813 = BgL_kapturedz00_1558; 
goto BgL_loopz00_816;} }  else 
{ /* ./Globalize/kapture.scm 119 */
obj_t BgL_arg3126z00_841;obj_t BgL_arg3128z00_842;bool_t BgL_arg3129z00_843;
{ /* ./Globalize/kapture.scm 119 */
obj_t BgL_arg3132z00_844;
{ /* ./Globalize/kapture.scm 119 */
int BgL_kz00_1351;
BgL_kz00_1351 = 
(int)(((long)2)); 
BgL_arg3132z00_844 = 
VECTOR_REF(BgL_otherzd2kapturedzd2_836,BgL_kz00_1351); } 
BgL_arg3126z00_841 = 
MAKE_PAIR(BgL_arg3132z00_844, BgL_kapturedz00_813); } 
BgL_arg3128z00_842 = 
CDR(BgL_ctoz00_814); 
if(BgL_setterzf3zf3_815)
{ /* ./Globalize/kapture.scm 122 */
obj_t BgL_arg3137z00_846;
{ /* ./Globalize/kapture.scm 122 */
int BgL_kz00_1354;
BgL_kz00_1354 = 
(int)(((long)1)); 
BgL_arg3137z00_846 = 
VECTOR_REF(BgL_otherzd2kapturedzd2_836,BgL_kz00_1354); } 
{ /* ./Globalize/kapture.scm 122 */
obj_t BgL_auxz00_1567;
BgL_auxz00_1567 = 
(obj_t)(BgL_localz00_2); 
BgL_arg3129z00_843 = 
(BgL_arg3137z00_846==BgL_auxz00_1567); } }  else 
{ /* ./Globalize/kapture.scm 121 */
BgL_arg3129z00_843 = ((bool_t)0); } 
{ 
bool_t BgL_setterzf3zf3_1572;obj_t BgL_ctoz00_1571;obj_t BgL_kapturedz00_1570;
BgL_kapturedz00_1570 = BgL_arg3126z00_841; 
BgL_ctoz00_1571 = BgL_arg3128z00_842; 
BgL_setterzf3zf3_1572 = BgL_arg3129z00_843; 
BgL_setterzf3zf3_815 = BgL_setterzf3zf3_1572; 
BgL_ctoz00_814 = BgL_ctoz00_1571; 
BgL_kapturedz00_813 = BgL_kapturedz00_1570; 
goto BgL_loopz00_816;} } } } }  else 
{ /* ./Globalize/kapture.scm 113 */
{ /* ./Globalize/kapture.scm 131 */
obj_t BgL_arg3146z00_848;
BgL_arg3146z00_848 = 
CDR(BgL_ctoz00_814); 
{ 
obj_t BgL_ctoz00_1574;
BgL_ctoz00_1574 = BgL_arg3146z00_848; 
BgL_ctoz00_814 = BgL_ctoz00_1574; 
goto BgL_loopz00_816;} } } } } } } } } } } } } } } } 
}



/* union */
BGL_EXPORTED_DEF obj_t BGl_unionz00zzglobaliza7e_kaptureza7(obj_t BgL_setsz00_4)
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 142 */
{ /* ./Globalize/kapture.scm 143 */
long BgL_za72za7_1357;
BgL_za72za7_1357 = BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7; 
BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7 = 
(((long)1)+BgL_za72za7_1357); } 
{ 
obj_t BgL_setsz00_853;obj_t BgL_unionz00_854;
BgL_setsz00_853 = BgL_setsz00_4; 
BgL_unionz00_854 = BNIL; 
BgL_loopz00_855:
{ /* ./Globalize/kapture.scm 146 */
bool_t BgL_test3170z00_856;
BgL_test3170z00_856 = 
NULLP(BgL_setsz00_853); 
if(BgL_test3170z00_856)
{ /* ./Globalize/kapture.scm 146 */
return BgL_unionz00_854;}  else 
{ 
obj_t BgL_setz00_857;obj_t BgL_unionz00_858;
{ /* ./Globalize/kapture.scm 148 */
obj_t BgL_arg3172z00_860;
BgL_arg3172z00_860 = 
CAR(BgL_setsz00_853); 
BgL_setz00_857 = BgL_arg3172z00_860; 
BgL_unionz00_858 = BgL_unionz00_854; 
BgL_liipz00_859:
{ /* ./Globalize/kapture.scm 151 */
bool_t BgL_test3175z00_861;
BgL_test3175z00_861 = 
NULLP(BgL_setz00_857); 
if(BgL_test3175z00_861)
{ /* ./Globalize/kapture.scm 151 */
{ /* ./Globalize/kapture.scm 152 */
obj_t BgL_arg3177z00_862;
BgL_arg3177z00_862 = 
CDR(BgL_setsz00_853); 
{ 
obj_t BgL_unionz00_1583;obj_t BgL_setsz00_1582;
BgL_setsz00_1582 = BgL_arg3177z00_862; 
BgL_unionz00_1583 = BgL_unionz00_858; 
BgL_unionz00_854 = BgL_unionz00_1583; 
BgL_setsz00_853 = BgL_setsz00_1582; 
goto BgL_loopz00_855;} } }  else 
{ /* ./Globalize/kapture.scm 154 */
bool_t BgL_test3180z00_863;
{ /* ./Globalize/kapture.scm 154 */
BgL_valuez00_bglt BgL_arg3245z00_884;
{ /* ./Globalize/kapture.scm 154 */
BgL_variablez00_bglt BgL_obj1100z00_1363;
{ /* ./Globalize/kapture.scm 154 */
obj_t BgL_auxz00_1584;
BgL_auxz00_1584 = 
CAR(BgL_setz00_857); 
BgL_obj1100z00_1363 = 
(BgL_variablez00_bglt)(BgL_auxz00_1584); } 
BgL_arg3245z00_884 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1363))->BgL_valuez00); } 
{ /* ./Globalize/kapture.scm 154 */
obj_t BgL_obj1344z00_1364;
BgL_obj1344z00_1364 = 
(obj_t)(BgL_arg3245z00_884); 
BgL_test3180z00_863 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1344z00_1364, BGl_funz00zzast_varz00); } } 
if(BgL_test3180z00_863)
{ /* ./Globalize/kapture.scm 154 */
{ /* ./Globalize/kapture.scm 155 */
bool_t BgL_test3181z00_864;
{ /* ./Globalize/kapture.scm 155 */
long BgL_arg3203z00_871;
{ /* ./Globalize/kapture.scm 155 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2793z00_1367;
{ /* ./Globalize/kapture.scm 155 */
BgL_valuez00_bglt BgL_auxz00_1591;
{ /* ./Globalize/kapture.scm 155 */
BgL_variablez00_bglt BgL_obj1100z00_1366;
{ /* ./Globalize/kapture.scm 155 */
obj_t BgL_auxz00_1592;
BgL_auxz00_1592 = 
CAR(BgL_setz00_857); 
BgL_obj1100z00_1366 = 
(BgL_variablez00_bglt)(BgL_auxz00_1592); } 
BgL_auxz00_1591 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1366))->BgL_valuez00); } 
BgL_obj2793z00_1367 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_auxz00_1591); } 
{ 
obj_t BgL_auxz00_1597;
{ /* ./Globalize/kapture.scm 155 */
BgL_objectz00_bglt BgL_auxz00_1598;
BgL_auxz00_1598 = 
(BgL_objectz00_bglt)(BgL_obj2793z00_1367); 
BgL_auxz00_1597 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1598); } 
BgL_arg3203z00_871 = 
(((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1597))->BgL_umarkz00); } } 
{ /* ./Globalize/kapture.scm 155 */
long BgL_n2z00_1390;
BgL_n2z00_1390 = BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7; 
BgL_test3181z00_864 = 
(BgL_arg3203z00_871==BgL_n2z00_1390); } } 
if(BgL_test3181z00_864)
{ /* ./Globalize/kapture.scm 157 */
obj_t BgL_arg3183z00_865;
BgL_arg3183z00_865 = 
CDR(BgL_setz00_857); 
{ 
obj_t BgL_setz00_1605;
BgL_setz00_1605 = BgL_arg3183z00_865; 
BgL_setz00_857 = BgL_setz00_1605; 
goto BgL_liipz00_859;} }  else 
{ /* ./Globalize/kapture.scm 155 */
{ /* ./Globalize/kapture.scm 159 */
BgL_valuez00_bglt BgL_arg3187z00_866;
{ /* ./Globalize/kapture.scm 159 */
BgL_variablez00_bglt BgL_obj1100z00_1370;
{ /* ./Globalize/kapture.scm 159 */
obj_t BgL_auxz00_1606;
BgL_auxz00_1606 = 
CAR(BgL_setz00_857); 
BgL_obj1100z00_1370 = 
(BgL_variablez00_bglt)(BgL_auxz00_1606); } 
BgL_arg3187z00_866 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1370))->BgL_valuez00); } 
{ /* ./Globalize/kapture.scm 159 */
BgL_sfunzf2ginfozf2_bglt BgL_obj2795z00_1371;long BgL_val2794z00_1372;
BgL_obj2795z00_1371 = 
(BgL_sfunzf2ginfozf2_bglt)(BgL_arg3187z00_866); 
BgL_val2794z00_1372 = BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7; 
{ 
obj_t BgL_auxz00_1611;
{ /* ./Globalize/kapture.scm 159 */
BgL_objectz00_bglt BgL_auxz00_1612;
BgL_auxz00_1612 = 
(BgL_objectz00_bglt)(BgL_obj2795z00_1371); 
BgL_auxz00_1611 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1612); } 
((((BgL_sfunzf2ginfozf2_bglt)CREF(BgL_auxz00_1611))->BgL_umarkz00) = ((long)BgL_val2794z00_1372), BUNSPEC); } } } 
{ /* ./Globalize/kapture.scm 161 */
obj_t BgL_arg3194z00_868;obj_t BgL_arg3195z00_869;
BgL_arg3194z00_868 = 
CDR(BgL_setz00_857); 
{ /* ./Globalize/kapture.scm 162 */
obj_t BgL_arg3199z00_870;
BgL_arg3199z00_870 = 
CAR(BgL_setz00_857); 
BgL_arg3195z00_869 = 
MAKE_PAIR(BgL_arg3199z00_870, BgL_unionz00_858); } 
{ 
obj_t BgL_unionz00_1620;obj_t BgL_setz00_1619;
BgL_setz00_1619 = BgL_arg3194z00_868; 
BgL_unionz00_1620 = BgL_arg3195z00_869; 
BgL_unionz00_858 = BgL_unionz00_1620; 
BgL_setz00_857 = BgL_setz00_1619; 
goto BgL_liipz00_859;} } } } }  else 
{ /* ./Globalize/kapture.scm 163 */
bool_t BgL_test3213z00_874;
{ /* ./Globalize/kapture.scm 163 */
long BgL_arg3235z00_881;
{ /* ./Globalize/kapture.scm 163 */
BgL_svarzf2ginfozf2_bglt BgL_obj2862z00_1377;
{ /* ./Globalize/kapture.scm 163 */
BgL_valuez00_bglt BgL_auxz00_1621;
{ /* ./Globalize/kapture.scm 163 */
BgL_variablez00_bglt BgL_obj1100z00_1376;
{ /* ./Globalize/kapture.scm 163 */
obj_t BgL_auxz00_1622;
BgL_auxz00_1622 = 
CAR(BgL_setz00_857); 
BgL_obj1100z00_1376 = 
(BgL_variablez00_bglt)(BgL_auxz00_1622); } 
BgL_auxz00_1621 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1376))->BgL_valuez00); } 
BgL_obj2862z00_1377 = 
(BgL_svarzf2ginfozf2_bglt)(BgL_auxz00_1621); } 
{ 
obj_t BgL_auxz00_1627;
{ /* ./Globalize/kapture.scm 163 */
BgL_objectz00_bglt BgL_auxz00_1628;
BgL_auxz00_1628 = 
(BgL_objectz00_bglt)(BgL_obj2862z00_1377); 
BgL_auxz00_1627 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1628); } 
BgL_arg3235z00_881 = 
(((BgL_svarzf2ginfozf2_bglt)CREF(BgL_auxz00_1627))->BgL_markz00); } } 
{ /* ./Globalize/kapture.scm 163 */
long BgL_n2z00_1392;
BgL_n2z00_1392 = BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7; 
BgL_test3213z00_874 = 
(BgL_arg3235z00_881==BgL_n2z00_1392); } } 
if(BgL_test3213z00_874)
{ /* ./Globalize/kapture.scm 163 */
{ /* ./Globalize/kapture.scm 164 */
obj_t BgL_arg3215z00_875;
BgL_arg3215z00_875 = 
CDR(BgL_setz00_857); 
{ 
obj_t BgL_setz00_1635;
BgL_setz00_1635 = BgL_arg3215z00_875; 
BgL_setz00_857 = BgL_setz00_1635; 
goto BgL_liipz00_859;} } }  else 
{ /* ./Globalize/kapture.scm 163 */
{ /* ./Globalize/kapture.scm 166 */
BgL_valuez00_bglt BgL_arg3219z00_876;
{ /* ./Globalize/kapture.scm 166 */
BgL_variablez00_bglt BgL_obj1100z00_1380;
{ /* ./Globalize/kapture.scm 166 */
obj_t BgL_auxz00_1636;
BgL_auxz00_1636 = 
CAR(BgL_setz00_857); 
BgL_obj1100z00_1380 = 
(BgL_variablez00_bglt)(BgL_auxz00_1636); } 
BgL_arg3219z00_876 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1100z00_1380))->BgL_valuez00); } 
{ /* ./Globalize/kapture.scm 166 */
BgL_svarzf2ginfozf2_bglt BgL_obj2864z00_1381;long BgL_val2863z00_1382;
BgL_obj2864z00_1381 = 
(BgL_svarzf2ginfozf2_bglt)(BgL_arg3219z00_876); 
BgL_val2863z00_1382 = BGl_za2unionzd2roundza2zd2zzglobaliza7e_kaptureza7; 
{ 
obj_t BgL_auxz00_1641;
{ /* ./Globalize/kapture.scm 166 */
BgL_objectz00_bglt BgL_auxz00_1642;
BgL_auxz00_1642 = 
(BgL_objectz00_bglt)(BgL_obj2864z00_1381); 
BgL_auxz00_1641 = 
BGL_OBJECT_WIDENING(BgL_auxz00_1642); } 
((((BgL_svarzf2ginfozf2_bglt)CREF(BgL_auxz00_1641))->BgL_markz00) = ((long)BgL_val2863z00_1382), BUNSPEC); } } } 
{ /* ./Globalize/kapture.scm 167 */
obj_t BgL_arg3226z00_878;obj_t BgL_arg3227z00_879;
BgL_arg3226z00_878 = 
CDR(BgL_setz00_857); 
{ /* ./Globalize/kapture.scm 168 */
obj_t BgL_arg3231z00_880;
BgL_arg3231z00_880 = 
CAR(BgL_setz00_857); 
BgL_arg3227z00_879 = 
MAKE_PAIR(BgL_arg3231z00_880, BgL_unionz00_858); } 
{ 
obj_t BgL_unionz00_1650;obj_t BgL_setz00_1649;
BgL_setz00_1649 = BgL_arg3226z00_878; 
BgL_unionz00_1650 = BgL_arg3227z00_879; 
BgL_unionz00_858 = BgL_unionz00_1650; 
BgL_setz00_857 = BgL_setz00_1649; 
goto BgL_liipz00_859;} } } } } } } } } } } 
}



/* _union */
obj_t BGl__unionz00zzglobaliza7e_kaptureza7(obj_t BgL_envz00_1387, obj_t BgL_setsz00_1388)
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 142 */
return 
BGl_unionz00zzglobaliza7e_kaptureza7(BgL_setsz00_1388);} 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzglobaliza7e_kaptureza7()
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 15 */
return BUNSPEC;} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzglobaliza7e_kaptureza7()
{ AN_OBJECT;
{ /* ./Globalize/kapture.scm 15 */
BGl_modulezd2initializa7ationz75zztools_tracez00(((long)59211), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zztools_shapez00(((long)30833), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zztools_speekz00(((long)23537), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zztools_argsz00(((long)42726), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zztype_cachez00(((long)25848), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzast_nodez00(((long)50868), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzast_sexpz00(((long)15705), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzast_localz00(((long)28959), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzglobaliza7e_ginfoza7(((long)0), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzglobaliza7e_nodeza7(((long)60835), "globalize_kapture"); 
BGl_modulezd2initializa7ationz75zzglobaliza7e_freeza7(((long)30276), "globalize_kapture"); 
return 
BGl_modulezd2initializa7ationz75zzglobaliza7e_cloctoza7(((long)31687), "globalize_kapture");} 
}

