/*===========================================================================*/
/*   (Cgen/capp.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 Cgen/capp.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_copz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
} *BgL_copz00_bglt;

typedef struct BgL_clabelz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   obj_t BgL_namez00;
   bool_t BgL_usedzf3zf3;
   obj_t BgL_bodyz00;
} *BgL_clabelz00_bglt;

typedef struct BgL_cgotoz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_clabelz00_bgl * BgL_labelz00;
} *BgL_cgotoz00_bglt;

typedef struct BgL_blockz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_bodyz00;
} *BgL_blockz00_bglt;

typedef struct BgL_creturnz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_creturnz00_bglt;

typedef struct BgL_cvoidz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_cvoidz00_bglt;

typedef struct BgL_catomz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   obj_t BgL_valuez00;
} *BgL_catomz00_bglt;

typedef struct BgL_varcz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_variablez00_bgl * BgL_variablez00;
} *BgL_varcz00_bglt;

typedef struct BgL_cpragmaz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   obj_t BgL_formatz00;
   obj_t BgL_argsz00;
} *BgL_cpragmaz00_bglt;

typedef struct BgL_ccastz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_copz00_bgl * BgL_argz00;
} *BgL_ccastz00_bglt;

typedef struct BgL_csequencez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   bool_t BgL_czd2expzf3z21;
   obj_t BgL_copsz00;
} *BgL_csequencez00_bglt;

typedef struct BgL_nopz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
} *BgL_nopz00_bglt;

typedef struct BgL_stopz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_stopz00_bglt;

typedef struct BgL_csetqz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_varcz00_bgl * BgL_varz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_csetqz00_bglt;

typedef struct BgL_cifz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_testz00;
   struct BgL_copz00_bgl * BgL_truez00;
   struct BgL_copz00_bgl * BgL_falsez00;
} *BgL_cifz00_bglt;

typedef struct BgL_localzd2varzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   obj_t BgL_varsz00;
} *BgL_localzd2varzd2_bglt;

typedef struct BgL_cfuncallz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
   obj_t BgL_strengthz00;
} *BgL_cfuncallz00_bglt;

typedef struct BgL_capplyz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_funz00;
   struct BgL_copz00_bgl * BgL_argz00;
} *BgL_capplyz00_bglt;

typedef struct BgL_cappz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
} *BgL_cappz00_bglt;

typedef struct BgL_cfailz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_procz00;
   struct BgL_copz00_bgl * BgL_msgz00;
   struct BgL_copz00_bgl * BgL_objz00;
} *BgL_cfailz00_bglt;

typedef struct BgL_cswitchz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_testz00;
   obj_t BgL_clausesz00;
} *BgL_cswitchz00_bglt;

typedef struct BgL_cmakezd2boxzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_cmakezd2boxzd2_bglt;

typedef struct BgL_cboxzd2refzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_varz00;
} *BgL_cboxzd2refzd2_bglt;

typedef struct BgL_cboxzd2setz12zc0_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_varz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_cboxzd2setz12zc0_bglt;

typedef struct BgL_csetzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_exitz00;
   struct BgL_copz00_bgl * BgL_jumpzd2valuezd2;
   struct BgL_copz00_bgl * BgL_bodyz00;
} *BgL_csetzd2exzd2itz00_bglt;

typedef struct BgL_cjumpzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_exitz00;
   struct BgL_copz00_bgl * BgL_valuez00;
} *BgL_cjumpzd2exzd2itz00_bglt;

typedef struct BgL_sfunzf2czf2_bgl {
   struct BgL_clabelz00_bgl * BgL_labelz00;
   bool_t BgL_integratedz00;
} *BgL_sfunzf2czf2_bglt;

typedef struct BgL_bdbzd2blockzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_copz00_bgl * BgL_bodyz00;
} *BgL_bdbzd2blockzd2_bglt;


static obj_t BGl_methodzd2initzd2zzcgen_cappz00();
BGL_IMPORT obj_t open_input_string(obj_t);
extern BgL_cappz00_bglt BGl_makezd2cappzd2zzcgen_copz00(obj_t, BgL_copz00_bglt, obj_t);
static obj_t BGl_nodezd2ze3copzd2funcall3262ze3zzcgen_cappz00(obj_t, obj_t, obj_t);
extern obj_t BGl_sfunz00zzast_varz00;
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
static obj_t BGl_nodezd2sfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt, BgL_appz00_bglt, obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
static obj_t BGl_nodezd2ze3copzd2appzd2ly3260z31zzcgen_cappz00(obj_t, obj_t, obj_t);
extern BgL_cgotoz00_bglt BGl_makezd2cgotozd2zzcgen_copz00(obj_t, BgL_clabelz00_bglt);
extern BgL_blockz00_bglt BGl_makezd2blockzd2zzcgen_copz00(obj_t, BgL_copz00_bglt);
extern obj_t BGl_globalz00zzast_varz00;
extern obj_t BGl_za2procedureza2z00zztype_cachez00;
extern obj_t BGl_za2stopzd2kontza2zd2zzcgen_cgenz00;
extern BgL_csequencez00_bglt BGl_makezd2csequencezd2zzcgen_copz00(obj_t, bool_t, obj_t);
static obj_t BGl_nodezd2cfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt, BgL_appz00_bglt, obj_t);
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
BGL_IMPORT obj_t BGl_lastzd2pairzd2zz__r4_pairs_and_lists_6_3z00(obj_t);
extern obj_t BGl_varz00zzast_nodez00;
extern BgL_localz00_bglt BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(obj_t, BgL_typez00_bglt);
extern obj_t BGl_csetqz00zzcgen_copz00;
static obj_t BGl_cnstzd2initzd2zzcgen_cappz00();
extern obj_t BGl_funcallz00zzast_nodez00;
static obj_t BGl_importedzd2moduleszd2initz00zzcgen_cappz00();
extern BgL_capplyz00_bglt BGl_makezd2capplyzd2zzcgen_copz00(obj_t, BgL_copz00_bglt, BgL_copz00_bglt);
extern BgL_csetqz00_bglt BGl_makezd2csetqzd2zzcgen_copz00(obj_t, BgL_varcz00_bglt, BgL_copz00_bglt);
BGL_IMPORT obj_t BGl_addzd2methodz12zc0zz__objectz00(obj_t, obj_t, obj_t);
static obj_t BGl_toplevelzd2initzd2zzcgen_cappz00();
extern obj_t BGl_appzd2lyzd2zzast_nodez00;
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzcgen_cappz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_tracez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_toolsz00(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_localz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzeffect_effectz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzbackend_c_emitz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzcgen_copz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzcgen_cgenz00(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 *);
extern BgL_copz00_bglt BGl_bdbzd2letzd2varz00zzcgen_cgenz00(BgL_copz00_bglt, obj_t);
extern BgL_localzd2varzd2_bglt BGl_makezd2localzd2varz00zzcgen_copz00(obj_t, obj_t);
extern BgL_varcz00_bglt BGl_makezd2varczd2zzcgen_copz00(obj_t, BgL_variablez00_bglt);
static obj_t BGl_nodezd2ze3copzd2app3264ze3zzcgen_cappz00(obj_t, obj_t, obj_t);
extern obj_t BGl_catomz00zzcgen_copz00;
extern obj_t BGl_appz00zzast_nodez00;
extern obj_t BGl_varcz00zzcgen_copz00;
extern obj_t BGl_blockzd2kontzd2zzcgen_cgenz00(obj_t, obj_t);
extern obj_t BGl_localz00zzast_varz00;
extern obj_t BGl_za2returnzd2kontza2zd2zzcgen_cgenz00;
extern obj_t BGl_za2objza2z00zztype_cachez00;
extern obj_t BGl_za2idzd2kontza2zd2zzcgen_cgenz00;
extern BgL_setqz00_bglt BGl_nodezd2setqzd2zzcgen_cgenz00(BgL_variablez00_bglt, BgL_nodez00_bglt);
static obj_t BGl_requirezd2initializa7ationz75zzcgen_cappz00 = BUNSPEC;
extern BgL_copz00_bglt BGl_nodezd2ze3copz31zzcgen_cgenz00(BgL_nodez00_bglt, obj_t);
extern BgL_stopz00_bglt BGl_makezd2stopzd2zzcgen_copz00(obj_t, BgL_copz00_bglt);
static obj_t BGl_nodezd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt, BgL_appz00_bglt, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzcgen_cappz00();
extern BgL_cfuncallz00_bglt BGl_makezd2cfuncallzd2zzcgen_copz00(obj_t, BgL_copz00_bglt, obj_t, obj_t);
extern obj_t BGl_za2thezd2globalza2zd2zzcgen_cgenz00;
static obj_t __cnst[ 2 ] ;


extern obj_t BGl_nodezd2ze3copzd2envze3zzcgen_cgenz00;
DEFINE_STRING( BGl_string5043z00zzcgen_cappz00, BgL_bgl_string5043za700za7za7cgen_cappza7005070z00, "fun aux ", 8 );
DEFINE_STATIC_PROCEDURE( BGl_proc5040z00zzcgen_cappz00, BgL_bgl_nodeza7d2za7e3copza7d2appza7d2ly3260za731za7za7cgen_cappza7005071z00, BGl_nodezd2ze3copzd2appzd2ly3260z31zzcgen_cappz00, 0L, 2 );
DEFINE_STATIC_PROCEDURE( BGl_proc5041z00zzcgen_cappz00, BgL_bgl_nodeza7d2za7e3copza7d2funcall3262za7e3za7za7cgen_cappza7005072za7, BGl_nodezd2ze3copzd2funcall3262ze3zzcgen_cappz00, 0L, 2 );
DEFINE_STATIC_PROCEDURE( BGl_proc5042z00zzcgen_cappz00, BgL_bgl_nodeza7d2za7e3copza7d2app3264za7e3za7za7cgen_cappza7005073za7, BGl_nodezd2ze3copzd2app3264ze3zzcgen_cappz00, 0L, 2 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzcgen_cappz00(long BgL_checksumz00_2066, char * BgL_fromz00_2067)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzcgen_cappz00))
{ 
BGl_requirezd2initializa7ationz75zzcgen_cappz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzcgen_cappz00(); 
BGl_cnstzd2initzd2zzcgen_cappz00(); 
BGl_importedzd2moduleszd2initz00zzcgen_cappz00(); 
BGl_methodzd2initzd2zzcgen_cappz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzcgen_cappz00()
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 15 */
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "cgen_capp"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzcgen_cappz00()
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 15 */
{ /* ./Cgen/capp.scm 15 */
obj_t BgL_cportz00_2059;
BgL_cportz00_2059 = 
open_input_string(BGl_string5043z00zzcgen_cappz00); 
{ 
long BgL_iz00_2060;
BgL_iz00_2060 = ((long)1); 
BgL_loopz00_2061:
{ /* ./Cgen/capp.scm 15 */
bool_t BgL_test5045z00_2062;
BgL_test5045z00_2062 = 
(BgL_iz00_2060==((long)-1)); 
if(BgL_test5045z00_2062)
{ /* ./Cgen/capp.scm 15 */
return BUNSPEC;}  else 
{ /* ./Cgen/capp.scm 15 */
{ /* ./Cgen/capp.scm 15 */
obj_t BgL_arg5047z00_2063;
{ /* ./Cgen/capp.scm 15 */
obj_t BgL_list5050z00_2064;
BgL_list5050z00_2064 = 
MAKE_PAIR(BgL_cportz00_2059, BNIL); 
BgL_arg5047z00_2063 = 
BGl_readz00zz__readerz00(BgL_list5050z00_2064); } 
{ /* ./Cgen/capp.scm 15 */
int BgL_auxz00_2083;
BgL_auxz00_2083 = 
(int)(BgL_iz00_2060); 
CNST_TABLE_SET(BgL_auxz00_2083, BgL_arg5047z00_2063); } } 
{ /* ./Cgen/capp.scm 15 */
int BgL_auxz00_2065;
{ /* ./Cgen/capp.scm 15 */
long BgL_auxz00_2086;
BgL_auxz00_2086 = 
(BgL_iz00_2060-((long)1)); 
BgL_auxz00_2065 = 
(int)(BgL_auxz00_2086); } 
{ 
long BgL_iz00_2089;
BgL_iz00_2089 = 
(long)(BgL_auxz00_2065); 
BgL_iz00_2060 = BgL_iz00_2089; 
goto BgL_loopz00_2061;} } } } } } } 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zzcgen_cappz00()
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 15 */
return BUNSPEC;} 
}



/* node-sfun-non-tail-app->cop */
obj_t BGl_nodezd2sfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt BgL_varz00_10, BgL_appz00_bglt BgL_nodez00_11, obj_t BgL_kontz00_12)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 222 */
{ /* ./Cgen/capp.scm 223 */
obj_t BgL_argsz00_862;
{ /* ./Cgen/capp.scm 223 */
BgL_sfunz00_bglt BgL_obj1367z00_1819;
{ /* ./Cgen/capp.scm 223 */
BgL_valuez00_bglt BgL_auxz00_2091;
BgL_auxz00_2091 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_10))->BgL_valuez00); 
BgL_obj1367z00_1819 = 
(BgL_sfunz00_bglt)(BgL_auxz00_2091); } 
BgL_argsz00_862 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1367z00_1819))->BgL_argsz00); } 
{ /* ./Cgen/capp.scm 223 */
obj_t BgL_argszd2typezd2_863;
{ /* ./Cgen/capp.scm 225 */
bool_t BgL_test3404z00_932;
BgL_test3404z00_932 = 
NULLP(BgL_argsz00_862); 
if(BgL_test3404z00_932)
{ /* ./Cgen/capp.scm 225 */
BgL_argszd2typezd2_863 = BNIL; }  else 
{ /* ./Cgen/capp.scm 227 */
bool_t BgL_test3405z00_933;
{ /* ./Cgen/capp.scm 227 */
obj_t BgL_arg3436z00_950;
BgL_arg3436z00_950 = 
CAR(BgL_argsz00_862); 
BgL_test3405z00_933 = 
BGl_iszd2azf3z21zz__objectz00(BgL_arg3436z00_950, BGl_localz00zzast_varz00); } 
if(BgL_test3405z00_933)
{ /* ./Cgen/capp.scm 227 */
{ /* ./Cgen/capp.scm 228 */
bool_t BgL_test3406z00_935;
BgL_test3406z00_935 = 
NULLP(BgL_argsz00_862); 
if(BgL_test3406z00_935)
{ /* ./Cgen/capp.scm 228 */
BgL_argszd2typezd2_863 = BNIL; }  else 
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_head3228z00_936;
{ /* ./Cgen/capp.scm 228 */
BgL_typez00_bglt BgL_arg3427z00_947;
{ /* ./Cgen/capp.scm 228 */
BgL_variablez00_bglt BgL_obj1097z00_1825;
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_auxz00_2102;
BgL_auxz00_2102 = 
CAR(BgL_argsz00_862); 
BgL_obj1097z00_1825 = 
(BgL_variablez00_bglt)(BgL_auxz00_2102); } 
BgL_arg3427z00_947 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1097z00_1825))->BgL_typez00); } 
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_obj1z00_1826;
BgL_obj1z00_1826 = 
(obj_t)(BgL_arg3427z00_947); 
BgL_head3228z00_936 = 
MAKE_PAIR(BgL_obj1z00_1826, BNIL); } } 
{ 
obj_t BgL_l3226z00_937;obj_t BgL_tail3229z00_938;
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_arg3408z00_940;
BgL_arg3408z00_940 = 
CDR(BgL_argsz00_862); 
BgL_l3226z00_937 = BgL_arg3408z00_940; 
BgL_tail3229z00_938 = BgL_head3228z00_936; 
BgL_map3227z00_939:
{ /* ./Cgen/capp.scm 228 */
bool_t BgL_test3411z00_941;
BgL_test3411z00_941 = 
NULLP(BgL_l3226z00_937); 
if(BgL_test3411z00_941)
{ /* ./Cgen/capp.scm 228 */
BgL_argszd2typezd2_863 = BgL_head3228z00_936; }  else 
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_newtail3230z00_942;
{ /* ./Cgen/capp.scm 228 */
BgL_typez00_bglt BgL_arg3418z00_944;
{ /* ./Cgen/capp.scm 228 */
BgL_variablez00_bglt BgL_obj1097z00_1831;
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_auxz00_2111;
BgL_auxz00_2111 = 
CAR(BgL_l3226z00_937); 
BgL_obj1097z00_1831 = 
(BgL_variablez00_bglt)(BgL_auxz00_2111); } 
BgL_arg3418z00_944 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1097z00_1831))->BgL_typez00); } 
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_obj1z00_1832;
BgL_obj1z00_1832 = 
(obj_t)(BgL_arg3418z00_944); 
BgL_newtail3230z00_942 = 
MAKE_PAIR(BgL_obj1z00_1832, BNIL); } } 
SET_CDR(BgL_tail3229z00_938, BgL_newtail3230z00_942); 
{ /* ./Cgen/capp.scm 228 */
obj_t BgL_arg3414z00_943;
BgL_arg3414z00_943 = 
CDR(BgL_l3226z00_937); 
{ 
obj_t BgL_tail3229z00_2120;obj_t BgL_l3226z00_2119;
BgL_l3226z00_2119 = BgL_arg3414z00_943; 
BgL_tail3229z00_2120 = BgL_newtail3230z00_942; 
BgL_tail3229z00_938 = BgL_tail3229z00_2120; 
BgL_l3226z00_937 = BgL_l3226z00_2119; 
goto BgL_map3227z00_939;} } } } } } } } }  else 
{ /* ./Cgen/capp.scm 227 */
BgL_argszd2typezd2_863 = BgL_argsz00_862; } } } 
{ 
BgL_copz00_bglt BgL_copz00_925;BgL_localz00_bglt BgL_auxz00_926;
{ /* ./Cgen/capp.scm 231 */

{ 
obj_t BgL_oldzd2actualszd2_865;obj_t BgL_argszd2typezd2_866;obj_t BgL_newzd2actualszd2_867;BgL_localz00_bglt BgL_auxz00_868;obj_t BgL_auxsz00_869;obj_t BgL_expsz00_870;
{ /* ./Cgen/capp.scm 234 */
obj_t BgL_arg3273z00_872;BgL_localz00_bglt BgL_arg3275z00_874;
BgL_arg3273z00_872 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_11))->BgL_argsz00); 
BgL_arg3275z00_874 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
BgL_oldzd2actualszd2_865 = BgL_arg3273z00_872; 
BgL_argszd2typezd2_866 = BgL_argszd2typezd2_863; 
BgL_newzd2actualszd2_867 = BNIL; 
BgL_auxz00_868 = BgL_arg3275z00_874; 
BgL_auxsz00_869 = BNIL; 
BgL_expsz00_870 = BNIL; 
BgL_loopz00_871:
{ /* ./Cgen/capp.scm 240 */
bool_t BgL_test3281z00_877;
BgL_test3281z00_877 = 
NULLP(BgL_oldzd2actualszd2_865); 
if(BgL_test3281z00_877)
{ /* ./Cgen/capp.scm 241 */
bool_t BgL_test3282z00_878;
BgL_test3282z00_878 = 
NULLP(BgL_auxsz00_869); 
if(BgL_test3282z00_878)
{ /* ./Cgen/capp.scm 243 */
BgL_cappz00_bglt BgL_arg3284z00_879;
{ /* ./Cgen/capp.scm 243 */
obj_t BgL_arg3287z00_880;BgL_copz00_bglt BgL_arg3288z00_881;obj_t BgL_arg3289z00_882;
{ /* ./Cgen/capp.scm 243 */
BgL_nodez00_bglt BgL_obj1560z00_1840;
BgL_obj1560z00_1840 = 
(BgL_nodez00_bglt)(BgL_nodez00_11); 
BgL_arg3287z00_880 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1840))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 244 */
BgL_varz00_bglt BgL_arg3293z00_883;
BgL_arg3293z00_883 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_11))->BgL_funz00); 
BgL_arg3288z00_881 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3293z00_883), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
BgL_arg3289z00_882 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_867); 
BgL_arg3284z00_879 = 
BGl_makezd2cappzd2zzcgen_copz00(BgL_arg3287z00_880, BgL_arg3288z00_881, BgL_arg3289z00_882); } 
return 
PROCEDURE_ENTRY(BgL_kontz00_12)(BgL_kontz00_12, 
(obj_t)(BgL_arg3284z00_879), BEOA);}  else 
{ /* ./Cgen/capp.scm 250 */
obj_t BgL_locz00_884;
{ /* ./Cgen/capp.scm 250 */
BgL_nodez00_bglt BgL_obj1560z00_1842;
BgL_obj1560z00_1842 = 
(BgL_nodez00_bglt)(BgL_nodez00_11); 
BgL_locz00_884 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1842))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 252 */
obj_t BgL_arg3298z00_885;BgL_csequencez00_bglt BgL_arg3299z00_886;
BgL_arg3298z00_885 = BgL_locz00_884; 
{ /* ./Cgen/capp.scm 254 */
obj_t BgL_arg3302z00_887;obj_t BgL_arg3303z00_888;
BgL_arg3302z00_887 = BgL_locz00_884; 
{ /* ./Cgen/capp.scm 258 */
BgL_localzd2varzd2_bglt BgL_arg3306z00_889;BgL_csequencez00_bglt BgL_arg3307z00_890;obj_t BgL_arg3308z00_891;
{ /* ./Cgen/capp.scm 258 */
obj_t BgL_arg3319z00_895;obj_t BgL_arg3320z00_896;
BgL_arg3319z00_895 = BgL_locz00_884; 
BgL_arg3320z00_896 = BgL_auxsz00_869; 
BgL_arg3306z00_889 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg3319z00_895, BgL_arg3320z00_896); } 
{ /* ./Cgen/capp.scm 261 */
obj_t BgL_arg3323z00_897;obj_t BgL_arg3324z00_898;
BgL_arg3323z00_897 = BgL_locz00_884; 
BgL_arg3324z00_898 = BgL_expsz00_870; 
BgL_arg3307z00_890 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3323z00_897, ((bool_t)0), BgL_arg3324z00_898); } 
{ /* ./Cgen/capp.scm 264 */
BgL_cappz00_bglt BgL_arg3327z00_899;
{ /* ./Cgen/capp.scm 264 */
obj_t BgL_arg3330z00_900;BgL_copz00_bglt BgL_arg3331z00_901;obj_t BgL_arg3332z00_902;
BgL_arg3330z00_900 = BgL_locz00_884; 
{ /* ./Cgen/capp.scm 265 */
BgL_varz00_bglt BgL_arg3335z00_903;
BgL_arg3335z00_903 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_11))->BgL_funz00); 
BgL_arg3331z00_901 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3335z00_903), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
BgL_arg3332z00_902 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_867); 
BgL_arg3327z00_899 = 
BGl_makezd2cappzd2zzcgen_copz00(BgL_arg3330z00_900, BgL_arg3331z00_901, BgL_arg3332z00_902); } 
BgL_arg3308z00_891 = 
PROCEDURE_ENTRY(BgL_kontz00_12)(BgL_kontz00_12, 
(obj_t)(BgL_arg3327z00_899), BEOA); } 
{ /* ./Cgen/capp.scm 255 */
obj_t BgL_list3310z00_892;
{ /* ./Cgen/capp.scm 255 */
obj_t BgL_arg3312z00_893;
{ /* ./Cgen/capp.scm 255 */
obj_t BgL_arg3315z00_894;
BgL_arg3315z00_894 = 
MAKE_PAIR(BgL_arg3308z00_891, BNIL); 
{ /* ./Cgen/capp.scm 255 */
obj_t BgL_auxz00_2152;
BgL_auxz00_2152 = 
(obj_t)(BgL_arg3307z00_890); 
BgL_arg3312z00_893 = 
MAKE_PAIR(BgL_auxz00_2152, BgL_arg3315z00_894); } } 
{ /* ./Cgen/capp.scm 255 */
obj_t BgL_auxz00_2155;
BgL_auxz00_2155 = 
(obj_t)(BgL_arg3306z00_889); 
BgL_list3310z00_892 = 
MAKE_PAIR(BgL_auxz00_2155, BgL_arg3312z00_893); } } 
BgL_arg3303z00_888 = BgL_list3310z00_892; } } 
BgL_arg3299z00_886 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3302z00_887, ((bool_t)0), BgL_arg3303z00_888); } 
{ /* ./Cgen/capp.scm 251 */
BgL_blockz00_bglt BgL_auxz00_2159;
BgL_auxz00_2159 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg3298z00_885, 
(BgL_copz00_bglt)(BgL_arg3299z00_886)); 
return 
(obj_t)(BgL_auxz00_2159);} } } }  else 
{ /* ./Cgen/capp.scm 268 */
BgL_copz00_bglt BgL_copz00_904;
{ /* ./Cgen/capp.scm 268 */
BgL_setqz00_bglt BgL_arg3388z00_923;
{ /* ./Cgen/capp.scm 268 */
obj_t BgL_arg3391z00_924;
BgL_arg3391z00_924 = 
CAR(BgL_oldzd2actualszd2_865); 
BgL_arg3388z00_923 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_auxz00_868), 
(BgL_nodez00_bglt)(BgL_arg3391z00_924)); } 
BgL_copz00_904 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3388z00_923), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 269 */
bool_t BgL_test3341z00_905;
BgL_copz00_925 = BgL_copz00_904; 
BgL_auxz00_926 = BgL_auxz00_868; 
{ /* ./Cgen/capp.scm 232 */
bool_t BgL__andtest_3231z00_928;
{ /* ./Cgen/capp.scm 232 */
obj_t BgL_obj2881z00_1858;
BgL_obj2881z00_1858 = 
(obj_t)(BgL_copz00_925); 
BgL__andtest_3231z00_928 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1858, BGl_csetqz00zzcgen_copz00); } 
if(BgL__andtest_3231z00_928)
{ /* ./Cgen/capp.scm 233 */
obj_t BgL_auxz00_2178;obj_t BgL_auxz00_2172;
BgL_auxz00_2178 = 
(obj_t)(BgL_auxz00_926); 
{ /* ./Cgen/capp.scm 233 */
BgL_variablez00_bglt BgL_auxz00_2173;
{ /* ./Cgen/capp.scm 233 */
BgL_varcz00_bglt BgL_arg3400z00_930;
{ /* ./Cgen/capp.scm 233 */
BgL_csetqz00_bglt BgL_obj2867z00_1859;
BgL_obj2867z00_1859 = 
(BgL_csetqz00_bglt)(BgL_copz00_925); 
BgL_arg3400z00_930 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1859))->BgL_varz00); } 
BgL_auxz00_2173 = 
(((BgL_varcz00_bglt)CREF(BgL_arg3400z00_930))->BgL_variablez00); } 
BgL_auxz00_2172 = 
(obj_t)(BgL_auxz00_2173); } 
BgL_test3341z00_905 = 
(BgL_auxz00_2172==BgL_auxz00_2178); }  else 
{ /* ./Cgen/capp.scm 232 */
BgL_test3341z00_905 = ((bool_t)0); } } 
if(BgL_test3341z00_905)
{ /* ./Cgen/capp.scm 270 */
obj_t BgL_arg3343z00_906;obj_t BgL_arg3344z00_907;obj_t BgL_arg3345z00_908;
BgL_arg3343z00_906 = 
CDR(BgL_oldzd2actualszd2_865); 
BgL_arg3344z00_907 = 
CDR(BgL_argszd2typezd2_866); 
{ /* ./Cgen/capp.scm 272 */
BgL_copz00_bglt BgL_arg3350z00_909;
{ /* ./Cgen/capp.scm 272 */
BgL_csetqz00_bglt BgL_obj2868z00_1849;
BgL_obj2868z00_1849 = 
(BgL_csetqz00_bglt)(BgL_copz00_904); 
BgL_arg3350z00_909 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1849))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 272 */
obj_t BgL_auxz00_2186;
BgL_auxz00_2186 = 
(obj_t)(BgL_arg3350z00_909); 
BgL_arg3345z00_908 = 
MAKE_PAIR(BgL_auxz00_2186, BgL_newzd2actualszd2_867); } } 
{ 
obj_t BgL_newzd2actualszd2_2191;obj_t BgL_argszd2typezd2_2190;obj_t BgL_oldzd2actualszd2_2189;
BgL_oldzd2actualszd2_2189 = BgL_arg3343z00_906; 
BgL_argszd2typezd2_2190 = BgL_arg3344z00_907; 
BgL_newzd2actualszd2_2191 = BgL_arg3345z00_908; 
BgL_newzd2actualszd2_867 = BgL_newzd2actualszd2_2191; 
BgL_argszd2typezd2_866 = BgL_argszd2typezd2_2190; 
BgL_oldzd2actualszd2_865 = BgL_oldzd2actualszd2_2189; 
goto BgL_loopz00_871;} }  else 
{ /* ./Cgen/capp.scm 269 */
{ /* ./Cgen/capp.scm 277 */
obj_t BgL_arg3354z00_910;
BgL_arg3354z00_910 = 
CAR(BgL_argszd2typezd2_866); 
{ /* ./Cgen/capp.scm 277 */
BgL_variablez00_bglt BgL_obj1099z00_1851;BgL_typez00_bglt BgL_val1098z00_1852;
BgL_obj1099z00_1851 = 
(BgL_variablez00_bglt)(BgL_auxz00_868); 
BgL_val1098z00_1852 = 
(BgL_typez00_bglt)(BgL_arg3354z00_910); 
((((BgL_variablez00_bglt)CREF(BgL_obj1099z00_1851))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1098z00_1852), BUNSPEC); } } 
{ /* ./Cgen/capp.scm 278 */
obj_t BgL_arg3358z00_911;obj_t BgL_arg3359z00_912;obj_t BgL_arg3360z00_913;BgL_localz00_bglt BgL_arg3362z00_914;obj_t BgL_arg3363z00_915;obj_t BgL_arg3364z00_916;
BgL_arg3358z00_911 = 
CDR(BgL_oldzd2actualszd2_865); 
BgL_arg3359z00_912 = 
CDR(BgL_argszd2typezd2_866); 
{ /* ./Cgen/capp.scm 281 */
BgL_varcz00_bglt BgL_arg3369z00_917;
{ /* ./Cgen/capp.scm 281 */
obj_t BgL_arg3372z00_918;BgL_localz00_bglt BgL_arg3373z00_919;
{ /* ./Cgen/capp.scm 281 */
BgL_nodez00_bglt BgL_obj1560z00_1856;
{ /* ./Cgen/capp.scm 281 */
obj_t BgL_auxz00_2198;
BgL_auxz00_2198 = 
CAR(BgL_oldzd2actualszd2_865); 
BgL_obj1560z00_1856 = 
(BgL_nodez00_bglt)(BgL_auxz00_2198); } 
BgL_arg3372z00_918 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1856))->BgL_locz00); } 
BgL_arg3373z00_919 = BgL_auxz00_868; 
BgL_arg3369z00_917 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg3372z00_918, 
(BgL_variablez00_bglt)(BgL_arg3373z00_919)); } 
{ /* ./Cgen/capp.scm 280 */
obj_t BgL_auxz00_2204;
BgL_auxz00_2204 = 
(obj_t)(BgL_arg3369z00_917); 
BgL_arg3360z00_913 = 
MAKE_PAIR(BgL_auxz00_2204, BgL_newzd2actualszd2_867); } } 
{ /* ./Cgen/capp.scm 284 */
obj_t BgL_arg3380z00_921;obj_t BgL_arg3381z00_922;
BgL_arg3380z00_921 = 
CNST_TABLE_REF(((long)0)); 
BgL_arg3381z00_922 = 
CAR(BgL_argszd2typezd2_866); 
BgL_arg3362z00_914 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(BgL_arg3380z00_921, 
(BgL_typez00_bglt)(BgL_arg3381z00_922)); } 
{ /* ./Cgen/capp.scm 285 */
obj_t BgL_auxz00_2211;
BgL_auxz00_2211 = 
(obj_t)(BgL_auxz00_868); 
BgL_arg3363z00_915 = 
MAKE_PAIR(BgL_auxz00_2211, BgL_auxsz00_869); } 
{ /* ./Cgen/capp.scm 286 */
obj_t BgL_auxz00_2214;
BgL_auxz00_2214 = 
(obj_t)(BgL_copz00_904); 
BgL_arg3364z00_916 = 
MAKE_PAIR(BgL_auxz00_2214, BgL_expsz00_870); } 
{ 
obj_t BgL_expsz00_2222;obj_t BgL_auxsz00_2221;BgL_localz00_bglt BgL_auxz00_2220;obj_t BgL_newzd2actualszd2_2219;obj_t BgL_argszd2typezd2_2218;obj_t BgL_oldzd2actualszd2_2217;
BgL_oldzd2actualszd2_2217 = BgL_arg3358z00_911; 
BgL_argszd2typezd2_2218 = BgL_arg3359z00_912; 
BgL_newzd2actualszd2_2219 = BgL_arg3360z00_913; 
BgL_auxz00_2220 = BgL_arg3362z00_914; 
BgL_auxsz00_2221 = BgL_arg3363z00_915; 
BgL_expsz00_2222 = BgL_arg3364z00_916; 
BgL_expsz00_870 = BgL_expsz00_2222; 
BgL_auxsz00_869 = BgL_auxsz00_2221; 
BgL_auxz00_868 = BgL_auxz00_2220; 
BgL_newzd2actualszd2_867 = BgL_newzd2actualszd2_2219; 
BgL_argszd2typezd2_866 = BgL_argszd2typezd2_2218; 
BgL_oldzd2actualszd2_865 = BgL_oldzd2actualszd2_2217; 
goto BgL_loopz00_871;} } } } } } } } } } } } } 
}



/* node-cfun-non-tail-app->cop */
obj_t BGl_nodezd2cfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt BgL_varz00_13, BgL_appz00_bglt BgL_nodez00_14, obj_t BgL_kontz00_15)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 294 */
{ /* ./Cgen/capp.scm 295 */
obj_t BgL_argszd2typezd2_952;
{ /* ./Cgen/capp.scm 295 */
BgL_cfunz00_bglt BgL_obj1445z00_1862;
{ /* ./Cgen/capp.scm 295 */
BgL_valuez00_bglt BgL_auxz00_2223;
BgL_auxz00_2223 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_13))->BgL_valuez00); 
BgL_obj1445z00_1862 = 
(BgL_cfunz00_bglt)(BgL_auxz00_2223); } 
BgL_argszd2typezd2_952 = 
(((BgL_cfunz00_bglt)CREF(BgL_obj1445z00_1862))->BgL_argszd2typezd2); } 
{ 
BgL_copz00_bglt BgL_copz00_1019;BgL_localz00_bglt BgL_auxz00_1020;
{ 
obj_t BgL_oldzd2actualszd2_954;obj_t BgL_argszd2typezd2_955;obj_t BgL_newzd2actualszd2_956;BgL_localz00_bglt BgL_auxz00_957;obj_t BgL_auxsz00_958;obj_t BgL_expsz00_959;
{ /* ./Cgen/capp.scm 301 */
obj_t BgL_arg3446z00_961;BgL_localz00_bglt BgL_arg3448z00_963;
BgL_arg3446z00_961 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_14))->BgL_argsz00); 
BgL_arg3448z00_963 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
BgL_oldzd2actualszd2_954 = BgL_arg3446z00_961; 
BgL_argszd2typezd2_955 = BgL_argszd2typezd2_952; 
BgL_newzd2actualszd2_956 = BNIL; 
BgL_auxz00_957 = BgL_arg3448z00_963; 
BgL_auxsz00_958 = BNIL; 
BgL_expsz00_959 = BNIL; 
BgL_loopz00_960:
{ /* ./Cgen/capp.scm 307 */
bool_t BgL_test3454z00_966;
BgL_test3454z00_966 = 
NULLP(BgL_oldzd2actualszd2_954); 
if(BgL_test3454z00_966)
{ /* ./Cgen/capp.scm 308 */
bool_t BgL_test3455z00_967;
BgL_test3455z00_967 = 
NULLP(BgL_auxsz00_958); 
if(BgL_test3455z00_967)
{ /* ./Cgen/capp.scm 310 */
BgL_cappz00_bglt BgL_arg3457z00_968;
{ /* ./Cgen/capp.scm 310 */
obj_t BgL_arg3460z00_969;BgL_copz00_bglt BgL_arg3461z00_970;obj_t BgL_arg3462z00_971;
{ /* ./Cgen/capp.scm 310 */
BgL_nodez00_bglt BgL_obj1560z00_1866;
BgL_obj1560z00_1866 = 
(BgL_nodez00_bglt)(BgL_nodez00_14); 
BgL_arg3460z00_969 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1866))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 311 */
BgL_varz00_bglt BgL_arg3466z00_972;
BgL_arg3466z00_972 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_14))->BgL_funz00); 
BgL_arg3461z00_970 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3466z00_972), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
BgL_arg3462z00_971 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_956); 
BgL_arg3457z00_968 = 
BGl_makezd2cappzd2zzcgen_copz00(BgL_arg3460z00_969, BgL_arg3461z00_970, BgL_arg3462z00_971); } 
return 
PROCEDURE_ENTRY(BgL_kontz00_15)(BgL_kontz00_15, 
(obj_t)(BgL_arg3457z00_968), BEOA);}  else 
{ /* ./Cgen/capp.scm 317 */
obj_t BgL_locz00_973;
{ /* ./Cgen/capp.scm 317 */
BgL_nodez00_bglt BgL_obj1560z00_1868;
BgL_obj1560z00_1868 = 
(BgL_nodez00_bglt)(BgL_nodez00_14); 
BgL_locz00_973 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1868))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 319 */
obj_t BgL_arg3471z00_974;BgL_csequencez00_bglt BgL_arg3472z00_975;
BgL_arg3471z00_974 = BgL_locz00_973; 
{ /* ./Cgen/capp.scm 321 */
obj_t BgL_arg3475z00_976;obj_t BgL_arg3476z00_977;
BgL_arg3475z00_976 = BgL_locz00_973; 
{ /* ./Cgen/capp.scm 325 */
BgL_localzd2varzd2_bglt BgL_arg3479z00_978;BgL_csequencez00_bglt BgL_arg3480z00_979;obj_t BgL_arg3481z00_980;
{ /* ./Cgen/capp.scm 325 */
obj_t BgL_arg3492z00_984;obj_t BgL_arg3493z00_985;
BgL_arg3492z00_984 = BgL_locz00_973; 
BgL_arg3493z00_985 = BgL_auxsz00_958; 
BgL_arg3479z00_978 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg3492z00_984, BgL_arg3493z00_985); } 
{ /* ./Cgen/capp.scm 328 */
obj_t BgL_arg3496z00_986;obj_t BgL_arg3497z00_987;
BgL_arg3496z00_986 = BgL_locz00_973; 
BgL_arg3497z00_987 = BgL_expsz00_959; 
BgL_arg3480z00_979 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3496z00_986, ((bool_t)0), BgL_arg3497z00_987); } 
{ /* ./Cgen/capp.scm 331 */
BgL_cappz00_bglt BgL_arg3500z00_988;
{ /* ./Cgen/capp.scm 331 */
obj_t BgL_arg3503z00_989;BgL_copz00_bglt BgL_arg3504z00_990;obj_t BgL_arg3506z00_991;
BgL_arg3503z00_989 = BgL_locz00_973; 
{ /* ./Cgen/capp.scm 332 */
BgL_varz00_bglt BgL_arg3509z00_992;
BgL_arg3509z00_992 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_14))->BgL_funz00); 
BgL_arg3504z00_990 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3509z00_992), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
BgL_arg3506z00_991 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_956); 
BgL_arg3500z00_988 = 
BGl_makezd2cappzd2zzcgen_copz00(BgL_arg3503z00_989, BgL_arg3504z00_990, BgL_arg3506z00_991); } 
BgL_arg3481z00_980 = 
PROCEDURE_ENTRY(BgL_kontz00_15)(BgL_kontz00_15, 
(obj_t)(BgL_arg3500z00_988), BEOA); } 
{ /* ./Cgen/capp.scm 322 */
obj_t BgL_list3483z00_981;
{ /* ./Cgen/capp.scm 322 */
obj_t BgL_arg3485z00_982;
{ /* ./Cgen/capp.scm 322 */
obj_t BgL_arg3488z00_983;
BgL_arg3488z00_983 = 
MAKE_PAIR(BgL_arg3481z00_980, BNIL); 
{ /* ./Cgen/capp.scm 322 */
obj_t BgL_auxz00_2258;
BgL_auxz00_2258 = 
(obj_t)(BgL_arg3480z00_979); 
BgL_arg3485z00_982 = 
MAKE_PAIR(BgL_auxz00_2258, BgL_arg3488z00_983); } } 
{ /* ./Cgen/capp.scm 322 */
obj_t BgL_auxz00_2261;
BgL_auxz00_2261 = 
(obj_t)(BgL_arg3479z00_978); 
BgL_list3483z00_981 = 
MAKE_PAIR(BgL_auxz00_2261, BgL_arg3485z00_982); } } 
BgL_arg3476z00_977 = BgL_list3483z00_981; } } 
BgL_arg3472z00_975 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3475z00_976, ((bool_t)0), BgL_arg3476z00_977); } 
{ /* ./Cgen/capp.scm 318 */
BgL_blockz00_bglt BgL_auxz00_2265;
BgL_auxz00_2265 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg3471z00_974, 
(BgL_copz00_bglt)(BgL_arg3472z00_975)); 
return 
(obj_t)(BgL_auxz00_2265);} } } }  else 
{ /* ./Cgen/capp.scm 335 */
BgL_copz00_bglt BgL_copz00_993;
{ /* ./Cgen/capp.scm 335 */
BgL_setqz00_bglt BgL_arg3575z00_1016;
{ /* ./Cgen/capp.scm 335 */
obj_t BgL_arg3578z00_1017;
BgL_arg3578z00_1017 = 
CAR(BgL_oldzd2actualszd2_954); 
BgL_arg3575z00_1016 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_auxz00_957), 
(BgL_nodez00_bglt)(BgL_arg3578z00_1017)); } 
BgL_copz00_993 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3575z00_1016), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 336 */
bool_t BgL_test3515z00_994;
BgL_copz00_1019 = BgL_copz00_993; 
BgL_auxz00_1020 = BgL_auxz00_957; 
{ /* ./Cgen/capp.scm 297 */
bool_t BgL__andtest_3239z00_1022;
{ /* ./Cgen/capp.scm 297 */
obj_t BgL_obj2881z00_1888;
BgL_obj2881z00_1888 = 
(obj_t)(BgL_copz00_1019); 
BgL__andtest_3239z00_1022 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1888, BGl_csetqz00zzcgen_copz00); } 
if(BgL__andtest_3239z00_1022)
{ /* ./Cgen/capp.scm 298 */
bool_t BgL__andtest_3240z00_1023;
{ /* ./Cgen/capp.scm 298 */
obj_t BgL_auxz00_2284;obj_t BgL_auxz00_2278;
BgL_auxz00_2284 = 
(obj_t)(BgL_auxz00_1020); 
{ /* ./Cgen/capp.scm 298 */
BgL_variablez00_bglt BgL_auxz00_2279;
{ /* ./Cgen/capp.scm 298 */
BgL_varcz00_bglt BgL_arg3600z00_1028;
{ /* ./Cgen/capp.scm 298 */
BgL_csetqz00_bglt BgL_obj2867z00_1889;
BgL_obj2867z00_1889 = 
(BgL_csetqz00_bglt)(BgL_copz00_1019); 
BgL_arg3600z00_1028 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1889))->BgL_varz00); } 
BgL_auxz00_2279 = 
(((BgL_varcz00_bglt)CREF(BgL_arg3600z00_1028))->BgL_variablez00); } 
BgL_auxz00_2278 = 
(obj_t)(BgL_auxz00_2279); } 
BgL__andtest_3240z00_1023 = 
(BgL_auxz00_2278==BgL_auxz00_2284); } 
if(BgL__andtest_3240z00_1023)
{ /* ./Cgen/capp.scm 299 */
bool_t BgL__ortest_3241z00_1024;
{ /* ./Cgen/capp.scm 299 */
BgL_copz00_bglt BgL_arg3593z00_1026;
{ /* ./Cgen/capp.scm 299 */
BgL_csetqz00_bglt BgL_obj2868z00_1891;
BgL_obj2868z00_1891 = 
(BgL_csetqz00_bglt)(BgL_copz00_1019); 
BgL_arg3593z00_1026 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1891))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 299 */
obj_t BgL_obj2770z00_1892;
BgL_obj2770z00_1892 = 
(obj_t)(BgL_arg3593z00_1026); 
BgL__ortest_3241z00_1024 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2770z00_1892, BGl_catomz00zzcgen_copz00); } } 
if(BgL__ortest_3241z00_1024)
{ /* ./Cgen/capp.scm 299 */
BgL_test3515z00_994 = BgL__ortest_3241z00_1024; }  else 
{ /* ./Cgen/capp.scm 300 */
BgL_copz00_bglt BgL_arg3589z00_1025;
{ /* ./Cgen/capp.scm 300 */
BgL_csetqz00_bglt BgL_obj2868z00_1893;
BgL_obj2868z00_1893 = 
(BgL_csetqz00_bglt)(BgL_copz00_1019); 
BgL_arg3589z00_1025 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1893))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 300 */
obj_t BgL_obj2784z00_1894;
BgL_obj2784z00_1894 = 
(obj_t)(BgL_arg3589z00_1025); 
BgL_test3515z00_994 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2784z00_1894, BGl_varcz00zzcgen_copz00); } } }  else 
{ /* ./Cgen/capp.scm 298 */
BgL_test3515z00_994 = ((bool_t)0); } }  else 
{ /* ./Cgen/capp.scm 297 */
BgL_test3515z00_994 = ((bool_t)0); } } 
if(BgL_test3515z00_994)
{ /* ./Cgen/capp.scm 337 */
obj_t BgL_arg3517z00_995;obj_t BgL_arg3518z00_996;obj_t BgL_arg3520z00_997;
BgL_arg3517z00_995 = 
CDR(BgL_oldzd2actualszd2_954); 
{ /* ./Cgen/capp.scm 338 */
bool_t BgL_testz00_2299;
{ /* ./Cgen/capp.scm 338 */
obj_t BgL_auxz00_2300;
BgL_auxz00_2300 = 
CDR(BgL_argszd2typezd2_955); 
BgL_testz00_2299 = 
NULLP(BgL_auxz00_2300); } 
if(BgL_testz00_2299)
{ /* ./Cgen/capp.scm 338 */
BgL_arg3518z00_996 = BgL_argszd2typezd2_955; }  else 
{ /* ./Cgen/capp.scm 338 */
BgL_arg3518z00_996 = 
CDR(BgL_argszd2typezd2_955); } } 
{ /* ./Cgen/capp.scm 341 */
BgL_copz00_bglt BgL_arg3530z00_1000;
{ /* ./Cgen/capp.scm 341 */
BgL_csetqz00_bglt BgL_obj2868z00_1877;
BgL_obj2868z00_1877 = 
(BgL_csetqz00_bglt)(BgL_copz00_993); 
BgL_arg3530z00_1000 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1877))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 341 */
obj_t BgL_auxz00_2306;
BgL_auxz00_2306 = 
(obj_t)(BgL_arg3530z00_1000); 
BgL_arg3520z00_997 = 
MAKE_PAIR(BgL_auxz00_2306, BgL_newzd2actualszd2_956); } } 
{ 
obj_t BgL_newzd2actualszd2_2311;obj_t BgL_argszd2typezd2_2310;obj_t BgL_oldzd2actualszd2_2309;
BgL_oldzd2actualszd2_2309 = BgL_arg3517z00_995; 
BgL_argszd2typezd2_2310 = BgL_arg3518z00_996; 
BgL_newzd2actualszd2_2311 = BgL_arg3520z00_997; 
BgL_newzd2actualszd2_956 = BgL_newzd2actualszd2_2311; 
BgL_argszd2typezd2_955 = BgL_argszd2typezd2_2310; 
BgL_oldzd2actualszd2_954 = BgL_oldzd2actualszd2_2309; 
goto BgL_loopz00_960;} }  else 
{ /* ./Cgen/capp.scm 336 */
{ /* ./Cgen/capp.scm 346 */
obj_t BgL_arg3534z00_1001;
BgL_arg3534z00_1001 = 
CAR(BgL_argszd2typezd2_955); 
{ /* ./Cgen/capp.scm 346 */
BgL_variablez00_bglt BgL_obj1099z00_1879;BgL_typez00_bglt BgL_val1098z00_1880;
BgL_obj1099z00_1879 = 
(BgL_variablez00_bglt)(BgL_auxz00_957); 
BgL_val1098z00_1880 = 
(BgL_typez00_bglt)(BgL_arg3534z00_1001); 
((((BgL_variablez00_bglt)CREF(BgL_obj1099z00_1879))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1098z00_1880), BUNSPEC); } } 
{ /* ./Cgen/capp.scm 347 */
obj_t BgL_arg3538z00_1002;obj_t BgL_arg3541z00_1003;obj_t BgL_arg3542z00_1004;BgL_localz00_bglt BgL_arg3543z00_1005;obj_t BgL_arg3544z00_1006;obj_t BgL_arg3545z00_1007;
BgL_arg3538z00_1002 = 
CDR(BgL_oldzd2actualszd2_954); 
{ /* ./Cgen/capp.scm 348 */
bool_t BgL_testz00_2317;
{ /* ./Cgen/capp.scm 348 */
obj_t BgL_auxz00_2318;
BgL_auxz00_2318 = 
CDR(BgL_argszd2typezd2_955); 
BgL_testz00_2317 = 
NULLP(BgL_auxz00_2318); } 
if(BgL_testz00_2317)
{ /* ./Cgen/capp.scm 348 */
BgL_arg3541z00_1003 = BgL_argszd2typezd2_955; }  else 
{ /* ./Cgen/capp.scm 348 */
BgL_arg3541z00_1003 = 
CDR(BgL_argszd2typezd2_955); } } 
{ /* ./Cgen/capp.scm 352 */
BgL_varcz00_bglt BgL_arg3556z00_1010;
{ /* ./Cgen/capp.scm 352 */
obj_t BgL_arg3559z00_1011;BgL_localz00_bglt BgL_arg3560z00_1012;
{ /* ./Cgen/capp.scm 352 */
BgL_nodez00_bglt BgL_obj1560z00_1886;
{ /* ./Cgen/capp.scm 352 */
obj_t BgL_auxz00_2322;
BgL_auxz00_2322 = 
CAR(BgL_oldzd2actualszd2_954); 
BgL_obj1560z00_1886 = 
(BgL_nodez00_bglt)(BgL_auxz00_2322); } 
BgL_arg3559z00_1011 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1886))->BgL_locz00); } 
BgL_arg3560z00_1012 = BgL_auxz00_957; 
BgL_arg3556z00_1010 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg3559z00_1011, 
(BgL_variablez00_bglt)(BgL_arg3560z00_1012)); } 
{ /* ./Cgen/capp.scm 351 */
obj_t BgL_auxz00_2328;
BgL_auxz00_2328 = 
(obj_t)(BgL_arg3556z00_1010); 
BgL_arg3542z00_1004 = 
MAKE_PAIR(BgL_auxz00_2328, BgL_newzd2actualszd2_956); } } 
{ /* ./Cgen/capp.scm 355 */
obj_t BgL_arg3567z00_1014;obj_t BgL_arg3568z00_1015;
BgL_arg3567z00_1014 = 
CNST_TABLE_REF(((long)0)); 
BgL_arg3568z00_1015 = 
CAR(BgL_argszd2typezd2_955); 
BgL_arg3543z00_1005 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(BgL_arg3567z00_1014, 
(BgL_typez00_bglt)(BgL_arg3568z00_1015)); } 
{ /* ./Cgen/capp.scm 356 */
obj_t BgL_auxz00_2335;
BgL_auxz00_2335 = 
(obj_t)(BgL_auxz00_957); 
BgL_arg3544z00_1006 = 
MAKE_PAIR(BgL_auxz00_2335, BgL_auxsz00_958); } 
{ /* ./Cgen/capp.scm 357 */
obj_t BgL_auxz00_2338;
BgL_auxz00_2338 = 
(obj_t)(BgL_copz00_993); 
BgL_arg3545z00_1007 = 
MAKE_PAIR(BgL_auxz00_2338, BgL_expsz00_959); } 
{ 
obj_t BgL_expsz00_2346;obj_t BgL_auxsz00_2345;BgL_localz00_bglt BgL_auxz00_2344;obj_t BgL_newzd2actualszd2_2343;obj_t BgL_argszd2typezd2_2342;obj_t BgL_oldzd2actualszd2_2341;
BgL_oldzd2actualszd2_2341 = BgL_arg3538z00_1002; 
BgL_argszd2typezd2_2342 = BgL_arg3541z00_1003; 
BgL_newzd2actualszd2_2343 = BgL_arg3542z00_1004; 
BgL_auxz00_2344 = BgL_arg3543z00_1005; 
BgL_auxsz00_2345 = BgL_arg3544z00_1006; 
BgL_expsz00_2346 = BgL_arg3545z00_1007; 
BgL_expsz00_959 = BgL_expsz00_2346; 
BgL_auxsz00_958 = BgL_auxsz00_2345; 
BgL_auxz00_957 = BgL_auxz00_2344; 
BgL_newzd2actualszd2_956 = BgL_newzd2actualszd2_2343; 
BgL_argszd2typezd2_955 = BgL_argszd2typezd2_2342; 
BgL_oldzd2actualszd2_954 = BgL_oldzd2actualszd2_2341; 
goto BgL_loopz00_960;} } } } } } } } } } } 
}



/* node-tail-app->cop */
obj_t BGl_nodezd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_variablez00_bglt BgL_varz00_16, BgL_appz00_bglt BgL_nodez00_17, obj_t BgL_kontz00_18)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 367 */
{ /* ./Cgen/capp.scm 368 */
BgL_clabelz00_bglt BgL_labelz00_1030;obj_t BgL_argsz00_1031;obj_t BgL_locz00_1032;
{ /* ./Cgen/capp.scm 368 */
BgL_sfunzf2czf2_bglt BgL_obj3129z00_1896;
{ /* ./Cgen/capp.scm 368 */
BgL_valuez00_bglt BgL_auxz00_2347;
BgL_auxz00_2347 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_16))->BgL_valuez00); 
BgL_obj3129z00_1896 = 
(BgL_sfunzf2czf2_bglt)(BgL_auxz00_2347); } 
{ 
obj_t BgL_auxz00_2350;
{ /* ./Cgen/capp.scm 368 */
BgL_objectz00_bglt BgL_auxz00_2351;
BgL_auxz00_2351 = 
(BgL_objectz00_bglt)(BgL_obj3129z00_1896); 
BgL_auxz00_2350 = 
BGL_OBJECT_WIDENING(BgL_auxz00_2351); } 
BgL_labelz00_1030 = 
(((BgL_sfunzf2czf2_bglt)CREF(BgL_auxz00_2350))->BgL_labelz00); } } 
{ /* ./Cgen/capp.scm 369 */
BgL_sfunz00_bglt BgL_obj1367z00_1898;
{ /* ./Cgen/capp.scm 369 */
BgL_valuez00_bglt BgL_auxz00_2355;
BgL_auxz00_2355 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_16))->BgL_valuez00); 
BgL_obj1367z00_1898 = 
(BgL_sfunz00_bglt)(BgL_auxz00_2355); } 
BgL_argsz00_1031 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1367z00_1898))->BgL_argsz00); } 
{ /* ./Cgen/capp.scm 370 */
BgL_nodez00_bglt BgL_obj1560z00_1899;
BgL_obj1560z00_1899 = 
(BgL_nodez00_bglt)(BgL_nodez00_17); 
BgL_locz00_1032 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1899))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 371 */
bool_t BgL_test3604z00_1033;
{ /* ./Cgen/capp.scm 371 */
BgL_sfunzf2czf2_bglt BgL_obj3130z00_1901;
{ /* ./Cgen/capp.scm 371 */
BgL_valuez00_bglt BgL_auxz00_2361;
BgL_auxz00_2361 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_16))->BgL_valuez00); 
BgL_obj3130z00_1901 = 
(BgL_sfunzf2czf2_bglt)(BgL_auxz00_2361); } 
{ 
obj_t BgL_auxz00_2364;
{ /* ./Cgen/capp.scm 371 */
BgL_objectz00_bglt BgL_auxz00_2365;
BgL_auxz00_2365 = 
(BgL_objectz00_bglt)(BgL_obj3130z00_1901); 
BgL_auxz00_2364 = 
BGL_OBJECT_WIDENING(BgL_auxz00_2365); } 
BgL_test3604z00_1033 = 
(((BgL_sfunzf2czf2_bglt)CREF(BgL_auxz00_2364))->BgL_integratedz00); } } 
if(BgL_test3604z00_1033)
{ /* ./Cgen/capp.scm 393 */
bool_t BgL_test3605z00_1034;
BgL_test3605z00_1034 = 
NULLP(BgL_argsz00_1031); 
if(BgL_test3605z00_1034)
{ /* ./Cgen/capp.scm 393 */
{ /* ./Cgen/capp.scm 395 */
BgL_clabelz00_bglt BgL_obj2679z00_1903;bool_t BgL_val2677z00_1904;
BgL_obj2679z00_1903 = BgL_labelz00_1030; 
BgL_val2677z00_1904 = ((bool_t)1); 
((((BgL_clabelz00_bglt)CREF(BgL_obj2679z00_1903))->BgL_usedzf3zf3) = ((bool_t)BgL_val2677z00_1904), BUNSPEC); } 
{ /* ./Cgen/capp.scm 397 */
obj_t BgL_arg3608z00_1035;BgL_clabelz00_bglt BgL_arg3609z00_1036;
BgL_arg3608z00_1035 = BgL_locz00_1032; 
BgL_arg3609z00_1036 = BgL_labelz00_1030; 
{ /* ./Cgen/capp.scm 396 */
BgL_cgotoz00_bglt BgL_auxz00_2373;
BgL_auxz00_2373 = 
BGl_makezd2cgotozd2zzcgen_copz00(BgL_arg3608z00_1035, BgL_arg3609z00_1036); 
return 
(obj_t)(BgL_auxz00_2373);} } }  else 
{ 
obj_t BgL_argsz00_1037;obj_t BgL_actualsz00_1038;obj_t BgL_auxsz00_1039;obj_t BgL_seq1z00_1040;obj_t BgL_seq2z00_1041;
{ /* ./Cgen/capp.scm 400 */
obj_t BgL_arg3612z00_1043;obj_t BgL_arg3615z00_1046;
BgL_arg3612z00_1043 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_17))->BgL_argsz00); 
{ /* ./Cgen/capp.scm 404 */
BgL_cgotoz00_bglt BgL_arg3619z00_1047;
{ /* ./Cgen/capp.scm 404 */
BgL_clabelz00_bglt BgL_obj2679z00_1906;bool_t BgL_val2677z00_1907;
BgL_obj2679z00_1906 = BgL_labelz00_1030; 
BgL_val2677z00_1907 = ((bool_t)1); 
((((BgL_clabelz00_bglt)CREF(BgL_obj2679z00_1906))->BgL_usedzf3zf3) = ((bool_t)BgL_val2677z00_1907), BUNSPEC); } 
{ /* ./Cgen/capp.scm 406 */
obj_t BgL_arg3625z00_1049;BgL_clabelz00_bglt BgL_arg3626z00_1050;
BgL_arg3625z00_1049 = BgL_locz00_1032; 
BgL_arg3626z00_1050 = BgL_labelz00_1030; 
BgL_arg3619z00_1047 = 
BGl_makezd2cgotozd2zzcgen_copz00(BgL_arg3625z00_1049, BgL_arg3626z00_1050); } 
{ /* ./Cgen/capp.scm 403 */
obj_t BgL_list3621z00_1048;
{ /* ./Cgen/capp.scm 403 */
obj_t BgL_auxz00_2379;
BgL_auxz00_2379 = 
(obj_t)(BgL_arg3619z00_1047); 
BgL_list3621z00_1048 = 
MAKE_PAIR(BgL_auxz00_2379, BNIL); } 
BgL_arg3615z00_1046 = BgL_list3621z00_1048; } } 
BgL_argsz00_1037 = BgL_argsz00_1031; 
BgL_actualsz00_1038 = BgL_arg3612z00_1043; 
BgL_auxsz00_1039 = BNIL; 
BgL_seq1z00_1040 = BNIL; 
BgL_seq2z00_1041 = BgL_arg3615z00_1046; 
BgL_loopz00_1042:
{ /* ./Cgen/capp.scm 408 */
bool_t BgL_test3628z00_1051;
BgL_test3628z00_1051 = 
NULLP(BgL_argsz00_1037); 
if(BgL_test3628z00_1051)
{ /* ./Cgen/capp.scm 408 */
{ /* ./Cgen/capp.scm 410 */
bool_t BgL_test3629z00_1052;
{ /* ./Cgen/capp.scm 410 */
obj_t BgL_objz00_1911;
BgL_objz00_1911 = BgL_seq1z00_1040; 
BgL_test3629z00_1052 = 
NULLP(BgL_objz00_1911); } 
if(BgL_test3629z00_1052)
{ /* ./Cgen/capp.scm 410 */
BgL_seq1z00_1040 = BgL_seq2z00_1041; }  else 
{ /* ./Cgen/capp.scm 410 */
BgL_seq1z00_1040 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_seq1z00_1040); 
{ /* ./Cgen/capp.scm 414 */
obj_t BgL_arg3632z00_1053;
BgL_arg3632z00_1053 = 
BGl_lastzd2pairzd2zz__r4_pairs_and_lists_6_3z00(BgL_seq1z00_1040); 
SET_CDR(BgL_arg3632z00_1053, BgL_seq2z00_1041); } } } 
{ /* ./Cgen/capp.scm 418 */
BgL_copz00_bglt BgL_arg3637z00_1054;
{ /* ./Cgen/capp.scm 418 */
BgL_csequencez00_bglt BgL_arg3640z00_1055;
{ /* ./Cgen/capp.scm 418 */
obj_t BgL_arg3643z00_1056;obj_t BgL_arg3644z00_1057;
BgL_arg3643z00_1056 = BgL_locz00_1032; 
{ /* ./Cgen/capp.scm 420 */
BgL_localzd2varzd2_bglt BgL_arg3647z00_1058;
{ /* ./Cgen/capp.scm 420 */
obj_t BgL_arg3650z00_1059;obj_t BgL_arg3651z00_1060;
BgL_arg3650z00_1059 = BgL_locz00_1032; 
BgL_arg3651z00_1060 = BgL_auxsz00_1039; 
BgL_arg3647z00_1058 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg3650z00_1059, BgL_arg3651z00_1060); } 
{ /* ./Cgen/capp.scm 419 */
obj_t BgL_auxz00_2390;
BgL_auxz00_2390 = 
(obj_t)(BgL_arg3647z00_1058); 
BgL_arg3644z00_1057 = 
MAKE_PAIR(BgL_auxz00_2390, BgL_seq1z00_1040); } } 
BgL_arg3640z00_1055 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3643z00_1056, ((bool_t)0), BgL_arg3644z00_1057); } 
BgL_arg3637z00_1054 = 
BGl_bdbzd2letzd2varz00zzcgen_cgenz00(
(BgL_copz00_bglt)(BgL_arg3640z00_1055), BgL_locz00_1032); } 
return 
BGl_blockzd2kontzd2zzcgen_cgenz00(
(obj_t)(BgL_arg3637z00_1054), BFALSE);} }  else 
{ /* ./Cgen/capp.scm 425 */
obj_t BgL_argz00_1061;obj_t BgL_actz00_1062;
BgL_argz00_1061 = 
CAR(BgL_argsz00_1037); 
BgL_actz00_1062 = 
CAR(BgL_actualsz00_1038); 
{ /* ./Cgen/capp.scm 430 */
bool_t BgL_test3653z00_1063;
{ /* ./Cgen/capp.scm 430 */
bool_t BgL_test3704z00_1085;
BgL_test3704z00_1085 = 
BGl_iszd2azf3z21zz__objectz00(BgL_actz00_1062, BGl_varz00zzast_nodez00); 
if(BgL_test3704z00_1085)
{ /* ./Cgen/capp.scm 430 */
obj_t BgL_auxz00_2402;
{ /* ./Cgen/capp.scm 430 */
BgL_variablez00_bglt BgL_auxz00_2403;
{ /* ./Cgen/capp.scm 430 */
BgL_varz00_bglt BgL_obj1625z00_1917;
BgL_obj1625z00_1917 = 
(BgL_varz00_bglt)(BgL_actz00_1062); 
BgL_auxz00_2403 = 
(((BgL_varz00_bglt)CREF(BgL_obj1625z00_1917))->BgL_variablez00); } 
BgL_auxz00_2402 = 
(obj_t)(BgL_auxz00_2403); } 
BgL_test3653z00_1063 = 
(BgL_argz00_1061==BgL_auxz00_2402); }  else 
{ /* ./Cgen/capp.scm 430 */
BgL_test3653z00_1063 = ((bool_t)0); } } 
if(BgL_test3653z00_1063)
{ /* ./Cgen/capp.scm 431 */
obj_t BgL_arg3655z00_1064;obj_t BgL_arg3656z00_1065;
BgL_arg3655z00_1064 = 
CDR(BgL_argsz00_1037); 
BgL_arg3656z00_1065 = 
CDR(BgL_actualsz00_1038); 
{ 
obj_t BgL_actualsz00_2412;obj_t BgL_argsz00_2411;
BgL_argsz00_2411 = BgL_arg3655z00_1064; 
BgL_actualsz00_2412 = BgL_arg3656z00_1065; 
BgL_actualsz00_1038 = BgL_actualsz00_2412; 
BgL_argsz00_1037 = BgL_argsz00_2411; 
goto BgL_loopz00_1042;} }  else 
{ /* ./Cgen/capp.scm 436 */
BgL_localz00_bglt BgL_auxz00_1066;
{ /* ./Cgen/capp.scm 437 */
obj_t BgL_arg3699z00_1083;BgL_typez00_bglt BgL_arg3700z00_1084;
{ /* ./Cgen/capp.scm 437 */
BgL_variablez00_bglt BgL_obj1093z00_1920;
BgL_obj1093z00_1920 = 
(BgL_variablez00_bglt)(BgL_argz00_1061); 
BgL_arg3699z00_1083 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1093z00_1920))->BgL_idz00); } 
{ /* ./Cgen/capp.scm 438 */
BgL_variablez00_bglt BgL_obj1097z00_1921;
BgL_obj1097z00_1921 = 
(BgL_variablez00_bglt)(BgL_argz00_1061); 
BgL_arg3700z00_1084 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1097z00_1921))->BgL_typez00); } 
BgL_auxz00_1066 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(BgL_arg3699z00_1083, BgL_arg3700z00_1084); } 
{ /* ./Cgen/capp.scm 439 */
obj_t BgL_arg3661z00_1067;obj_t BgL_arg3662z00_1068;obj_t BgL_arg3663z00_1069;obj_t BgL_arg3664z00_1070;obj_t BgL_arg3665z00_1071;
BgL_arg3661z00_1067 = 
CDR(BgL_argsz00_1037); 
BgL_arg3662z00_1068 = 
CDR(BgL_actualsz00_1038); 
{ /* ./Cgen/capp.scm 441 */
obj_t BgL_auxz00_2420;
BgL_auxz00_2420 = 
(obj_t)(BgL_auxz00_1066); 
BgL_arg3663z00_1069 = 
MAKE_PAIR(BgL_auxz00_2420, BgL_auxsz00_1039); } 
{ /* ./Cgen/capp.scm 442 */
BgL_copz00_bglt BgL_arg3671z00_1072;
{ /* ./Cgen/capp.scm 442 */
BgL_setqz00_bglt BgL_arg3674z00_1073;
BgL_arg3674z00_1073 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_auxz00_1066), 
(BgL_nodez00_bglt)(BgL_actz00_1062)); 
BgL_arg3671z00_1072 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3674z00_1073), BGl_za2stopzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 442 */
obj_t BgL_auxz00_2428;
BgL_auxz00_2428 = 
(obj_t)(BgL_arg3671z00_1072); 
BgL_arg3664z00_1070 = 
MAKE_PAIR(BgL_auxz00_2428, BgL_seq1z00_1040); } } 
{ /* ./Cgen/capp.scm 447 */
BgL_stopz00_bglt BgL_arg3678z00_1074;
{ /* ./Cgen/capp.scm 447 */
obj_t BgL_arg3681z00_1075;BgL_csetqz00_bglt BgL_arg3682z00_1076;
{ /* ./Cgen/capp.scm 447 */
BgL_nodez00_bglt BgL_obj1560z00_1924;
BgL_obj1560z00_1924 = 
(BgL_nodez00_bglt)(BgL_actz00_1062); 
BgL_arg3681z00_1075 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1924))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 450 */
obj_t BgL_arg3686z00_1077;BgL_varcz00_bglt BgL_arg3687z00_1078;BgL_varcz00_bglt BgL_arg3688z00_1079;
BgL_arg3686z00_1077 = BgL_locz00_1032; 
{ /* ./Cgen/capp.scm 452 */
obj_t BgL_arg3691z00_1080;
BgL_arg3691z00_1080 = BgL_argz00_1061; 
BgL_arg3687z00_1078 = 
BGl_makezd2varczd2zzcgen_copz00(BFALSE, 
(BgL_variablez00_bglt)(BgL_arg3691z00_1080)); } 
{ /* ./Cgen/capp.scm 454 */
obj_t BgL_arg3694z00_1081;BgL_localz00_bglt BgL_arg3695z00_1082;
{ /* ./Cgen/capp.scm 454 */
BgL_nodez00_bglt BgL_obj1560z00_1925;
BgL_obj1560z00_1925 = 
(BgL_nodez00_bglt)(BgL_actz00_1062); 
BgL_arg3694z00_1081 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1925))->BgL_locz00); } 
BgL_arg3695z00_1082 = BgL_auxz00_1066; 
BgL_arg3688z00_1079 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg3694z00_1081, 
(BgL_variablez00_bglt)(BgL_arg3695z00_1082)); } 
BgL_arg3682z00_1076 = 
BGl_makezd2csetqzd2zzcgen_copz00(BgL_arg3686z00_1077, BgL_arg3687z00_1078, 
(BgL_copz00_bglt)(BgL_arg3688z00_1079)); } 
BgL_arg3678z00_1074 = 
BGl_makezd2stopzd2zzcgen_copz00(BgL_arg3681z00_1075, 
(BgL_copz00_bglt)(BgL_arg3682z00_1076)); } 
{ /* ./Cgen/capp.scm 445 */
obj_t BgL_auxz00_2443;
BgL_auxz00_2443 = 
(obj_t)(BgL_arg3678z00_1074); 
BgL_arg3665z00_1071 = 
MAKE_PAIR(BgL_auxz00_2443, BgL_seq2z00_1041); } } 
{ 
obj_t BgL_seq2z00_2450;obj_t BgL_seq1z00_2449;obj_t BgL_auxsz00_2448;obj_t BgL_actualsz00_2447;obj_t BgL_argsz00_2446;
BgL_argsz00_2446 = BgL_arg3661z00_1067; 
BgL_actualsz00_2447 = BgL_arg3662z00_1068; 
BgL_auxsz00_2448 = BgL_arg3663z00_1069; 
BgL_seq1z00_2449 = BgL_arg3664z00_1070; 
BgL_seq2z00_2450 = BgL_arg3665z00_1071; 
BgL_seq2z00_1041 = BgL_seq2z00_2450; 
BgL_seq1z00_1040 = BgL_seq1z00_2449; 
BgL_auxsz00_1039 = BgL_auxsz00_2448; 
BgL_actualsz00_1038 = BgL_actualsz00_2447; 
BgL_argsz00_1037 = BgL_argsz00_2446; 
goto BgL_loopz00_1042;} } } } } } } } }  else 
{ /* ./Cgen/capp.scm 371 */
{ /* ./Cgen/capp.scm 373 */
BgL_valuez00_bglt BgL_arg3715z00_1087;
BgL_arg3715z00_1087 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_16))->BgL_valuez00); 
{ /* ./Cgen/capp.scm 373 */
BgL_sfunzf2czf2_bglt BgL_obj3132z00_1927;bool_t BgL_val3131z00_1928;
BgL_obj3132z00_1927 = 
(BgL_sfunzf2czf2_bglt)(BgL_arg3715z00_1087); 
BgL_val3131z00_1928 = ((bool_t)1); 
{ 
obj_t BgL_auxz00_2453;
{ /* ./Cgen/capp.scm 373 */
BgL_objectz00_bglt BgL_auxz00_2454;
BgL_auxz00_2454 = 
(BgL_objectz00_bglt)(BgL_obj3132z00_1927); 
BgL_auxz00_2453 = 
BGL_OBJECT_WIDENING(BgL_auxz00_2454); } 
((((BgL_sfunzf2czf2_bglt)CREF(BgL_auxz00_2453))->BgL_integratedz00) = ((bool_t)BgL_val3131z00_1928), BUNSPEC); } } } 
{ /* ./Cgen/capp.scm 374 */
BgL_copz00_bglt BgL_bodyz00_1088;
{ /* ./Cgen/capp.scm 374 */
obj_t BgL_arg3757z00_1107;
{ /* ./Cgen/capp.scm 374 */
BgL_sfunz00_bglt BgL_obj1370z00_1930;
{ /* ./Cgen/capp.scm 374 */
BgL_valuez00_bglt BgL_auxz00_2458;
BgL_auxz00_2458 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_16))->BgL_valuez00); 
BgL_obj1370z00_1930 = 
(BgL_sfunz00_bglt)(BgL_auxz00_2458); } 
BgL_arg3757z00_1107 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1370z00_1930))->BgL_bodyz00); } 
BgL_bodyz00_1088 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3757z00_1107), BgL_kontz00_18); } 
{ /* ./Cgen/capp.scm 375 */
BgL_clabelz00_bglt BgL_obj2683z00_1931;obj_t BgL_val2681z00_1932;
BgL_obj2683z00_1931 = BgL_labelz00_1030; 
BgL_val2681z00_1932 = 
(obj_t)(BgL_bodyz00_1088); 
((((BgL_clabelz00_bglt)CREF(BgL_obj2683z00_1931))->BgL_bodyz00) = ((obj_t)BgL_val2681z00_1932), BUNSPEC); } 
{ /* ./Cgen/capp.scm 376 */
bool_t BgL_test3719z00_1089;
BgL_test3719z00_1089 = 
NULLP(BgL_argsz00_1031); 
if(BgL_test3719z00_1089)
{ /* ./Cgen/capp.scm 376 */
return 
(obj_t)(BgL_labelz00_1030);}  else 
{ 
obj_t BgL_formalsz00_1090;obj_t BgL_actualsz00_1091;obj_t BgL_seqz00_1092;
{ /* ./Cgen/capp.scm 379 */
obj_t BgL_arg3721z00_1094;
BgL_arg3721z00_1094 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_17))->BgL_argsz00); 
{ /* ./Cgen/capp.scm 378 */
BgL_csequencez00_bglt BgL_auxz00_2470;
BgL_formalsz00_1090 = BgL_argsz00_1031; 
BgL_actualsz00_1091 = BgL_arg3721z00_1094; 
BgL_seqz00_1092 = BNIL; 
BgL_loopz00_1093:
{ /* ./Cgen/capp.scm 381 */
bool_t BgL_test3725z00_1096;
BgL_test3725z00_1096 = 
NULLP(BgL_formalsz00_1090); 
if(BgL_test3725z00_1096)
{ /* ./Cgen/capp.scm 383 */
obj_t BgL_arg3728z00_1097;obj_t BgL_arg3729z00_1098;
BgL_arg3728z00_1097 = BgL_locz00_1032; 
{ /* ./Cgen/capp.scm 384 */
obj_t BgL_arg3732z00_1099;
{ /* ./Cgen/capp.scm 384 */
obj_t BgL_auxz00_2473;
BgL_auxz00_2473 = 
(obj_t)(BgL_labelz00_1030); 
BgL_arg3732z00_1099 = 
MAKE_PAIR(BgL_auxz00_2473, BgL_seqz00_1092); } 
BgL_arg3729z00_1098 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_arg3732z00_1099); } 
BgL_auxz00_2470 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg3728z00_1097, ((bool_t)0), BgL_arg3729z00_1098); }  else 
{ /* ./Cgen/capp.scm 385 */
obj_t BgL_arg3736z00_1100;obj_t BgL_arg3737z00_1101;obj_t BgL_arg3738z00_1102;
BgL_arg3736z00_1100 = 
CDR(BgL_formalsz00_1090); 
BgL_arg3737z00_1101 = 
CDR(BgL_actualsz00_1091); 
{ /* ./Cgen/capp.scm 387 */
BgL_copz00_bglt BgL_arg3743z00_1103;
{ /* ./Cgen/capp.scm 387 */
BgL_setqz00_bglt BgL_arg3746z00_1104;
{ /* ./Cgen/capp.scm 387 */
obj_t BgL_arg3749z00_1105;obj_t BgL_arg3750z00_1106;
BgL_arg3749z00_1105 = 
CAR(BgL_formalsz00_1090); 
BgL_arg3750z00_1106 = 
CAR(BgL_actualsz00_1091); 
BgL_arg3746z00_1104 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_arg3749z00_1105), 
(BgL_nodez00_bglt)(BgL_arg3750z00_1106)); } 
BgL_arg3743z00_1103 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg3746z00_1104), BGl_za2stopzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 387 */
obj_t BgL_auxz00_2487;
BgL_auxz00_2487 = 
(obj_t)(BgL_arg3743z00_1103); 
BgL_arg3738z00_1102 = 
MAKE_PAIR(BgL_auxz00_2487, BgL_seqz00_1092); } } 
{ 
obj_t BgL_seqz00_2492;obj_t BgL_actualsz00_2491;obj_t BgL_formalsz00_2490;
BgL_formalsz00_2490 = BgL_arg3736z00_1100; 
BgL_actualsz00_2491 = BgL_arg3737z00_1101; 
BgL_seqz00_2492 = BgL_arg3738z00_1102; 
BgL_seqz00_1092 = BgL_seqz00_2492; 
BgL_actualsz00_1091 = BgL_actualsz00_2491; 
BgL_formalsz00_1090 = BgL_formalsz00_2490; 
goto BgL_loopz00_1093;} } } 
return 
(obj_t)(BgL_auxz00_2470);} } } } } } } } } 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzcgen_cappz00()
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 15 */
BGl_addzd2methodz12zc0zz__objectz00(BGl_nodezd2ze3copzd2envze3zzcgen_cgenz00, BGl_appzd2lyzd2zzast_nodez00, BGl_proc5040z00zzcgen_cappz00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_nodezd2ze3copzd2envze3zzcgen_cgenz00, BGl_funcallz00zzast_nodez00, BGl_proc5041z00zzcgen_cappz00); 
return 
BGl_addzd2methodz12zc0zz__objectz00(BGl_nodezd2ze3copzd2envze3zzcgen_cgenz00, BGl_appz00zzast_nodez00, BGl_proc5042z00zzcgen_cappz00);} 
}



/* node->cop-app3264 */
obj_t BGl_nodezd2ze3copzd2app3264ze3zzcgen_cappz00(obj_t BgL_envz00_2047, obj_t BgL_nodez00_2048, obj_t BgL_kontz00_2049)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 195 */
{ 
BgL_appz00_bglt BgL_nodez00_1800;obj_t BgL_kontz00_1801;
BgL_nodez00_1800 = 
(BgL_appz00_bglt)(BgL_nodez00_2048); 
BgL_kontz00_1801 = BgL_kontz00_2049; 
{ /* ./Cgen/capp.scm 199 */
BgL_variablez00_bglt BgL_varz00_1805;
{ /* ./Cgen/capp.scm 199 */
BgL_varz00_bglt BgL_arg4752z00_1811;
BgL_arg4752z00_1811 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_1800))->BgL_funz00); 
BgL_varz00_1805 = 
(((BgL_varz00_bglt)CREF(BgL_arg4752z00_1811))->BgL_variablez00); } 
{ /* ./Cgen/capp.scm 200 */
bool_t BgL_test4742z00_1806;
{ /* ./Cgen/capp.scm 200 */
bool_t BgL_test4745z00_1807;
{ /* ./Cgen/capp.scm 200 */
obj_t BgL_obj1240z00_2036;
BgL_obj1240z00_2036 = 
(obj_t)(BgL_varz00_1805); 
BgL_test4745z00_1807 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1240z00_2036, BGl_globalz00zzast_varz00); } 
if(BgL_test4745z00_1807)
{ /* ./Cgen/capp.scm 201 */
bool_t BgL__ortest_3225z00_1808;
{ /* ./Cgen/capp.scm 201 */
bool_t BgL_test4748z00_1810;
{ /* ./Cgen/capp.scm 201 */
obj_t BgL_auxz00_2502;
BgL_auxz00_2502 = 
(obj_t)(BgL_varz00_1805); 
BgL_test4748z00_1810 = 
(BgL_auxz00_2502==BGl_za2thezd2globalza2zd2zzcgen_cgenz00); } 
if(BgL_test4748z00_1810)
{ /* ./Cgen/capp.scm 201 */
BgL__ortest_3225z00_1808 = ((bool_t)0); }  else 
{ /* ./Cgen/capp.scm 201 */
BgL__ortest_3225z00_1808 = ((bool_t)1); } } 
if(BgL__ortest_3225z00_1808)
{ /* ./Cgen/capp.scm 202 */
BgL_test4742z00_1806 = BgL__ortest_3225z00_1808; }  else 
{ /* ./Cgen/capp.scm 202 */
bool_t BgL_test4746z00_1809;
BgL_test4746z00_1809 = 
(BgL_kontz00_1801==BGl_za2returnzd2kontza2zd2zzcgen_cgenz00); 
if(BgL_test4746z00_1809)
{ /* ./Cgen/capp.scm 202 */
BgL_test4742z00_1806 = ((bool_t)0); }  else 
{ /* ./Cgen/capp.scm 202 */
BgL_test4742z00_1806 = ((bool_t)1); } } }  else 
{ /* ./Cgen/capp.scm 200 */
BgL_test4742z00_1806 = ((bool_t)0); } } 
if(BgL_test4742z00_1806)
{ /* ./Cgen/capp.scm 200 */
{ /* ./Cgen/capp.scm 203 */
bool_t BgL_test3265z00_2040;
{ /* ./Cgen/capp.scm 203 */
BgL_valuez00_bglt BgL_arg3269z00_2041;
BgL_arg3269z00_2041 = 
(((BgL_variablez00_bglt)CREF(BgL_varz00_1805))->BgL_valuez00); 
{ /* ./Cgen/capp.scm 203 */
obj_t BgL_obj1425z00_2043;
BgL_obj1425z00_2043 = 
(obj_t)(BgL_arg3269z00_2041); 
BgL_test3265z00_2040 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1425z00_2043, BGl_sfunz00zzast_varz00); } } 
if(BgL_test3265z00_2040)
{ /* ./Cgen/capp.scm 203 */
return 
BGl_nodezd2sfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_varz00_1805, BgL_nodez00_1800, BgL_kontz00_1801);}  else 
{ /* ./Cgen/capp.scm 203 */
return 
BGl_nodezd2cfunzd2nonzd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_varz00_1805, BgL_nodez00_1800, BgL_kontz00_1801);} } }  else 
{ /* ./Cgen/capp.scm 200 */
return 
BGl_nodezd2tailzd2appzd2ze3copz31zzcgen_cappz00(BgL_varz00_1805, BgL_nodez00_1800, BgL_kontz00_1801);} } } } } 
}



/* node->cop-funcall3262 */
obj_t BGl_nodezd2ze3copzd2funcall3262ze3zzcgen_cappz00(obj_t BgL_envz00_2050, obj_t BgL_nodez00_2051, obj_t BgL_kontz00_2052)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 113 */
{ 
BgL_funcallz00_bglt BgL_nodez00_1704;obj_t BgL_kontz00_1705;
BgL_nodez00_1704 = 
(BgL_funcallz00_bglt)(BgL_nodez00_2051); 
BgL_kontz00_1705 = BgL_kontz00_2052; 
{ 
obj_t BgL_oldzd2actualszd2_1709;obj_t BgL_newzd2actualszd2_1710;BgL_localz00_bglt BgL_auxz00_1711;obj_t BgL_auxsz00_1712;obj_t BgL_expsz00_1713;
{ /* ./Cgen/capp.scm 117 */
obj_t BgL_arg4540z00_1715;BgL_localz00_bglt BgL_arg4542z00_1717;
BgL_arg4540z00_1715 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_argsz00); 
BgL_arg4542z00_1717 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
BgL_oldzd2actualszd2_1709 = BgL_arg4540z00_1715; 
BgL_newzd2actualszd2_1710 = BNIL; 
BgL_auxz00_1711 = BgL_arg4542z00_1717; 
BgL_auxsz00_1712 = BNIL; 
BgL_expsz00_1713 = BNIL; 
BgL_loopz00_1714:
{ /* ./Cgen/capp.scm 122 */
bool_t BgL_test4548z00_1720;
BgL_test4548z00_1720 = 
NULLP(BgL_oldzd2actualszd2_1709); 
if(BgL_test4548z00_1720)
{ /* ./Cgen/capp.scm 123 */
BgL_localz00_bglt BgL_auxz00_1721;
BgL_auxz00_1721 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
{ /* ./Cgen/capp.scm 123 */
BgL_copz00_bglt BgL_copz00_1722;
{ /* ./Cgen/capp.scm 124 */
BgL_setqz00_bglt BgL_arg4680z00_1777;
{ /* ./Cgen/capp.scm 124 */
BgL_nodez00_bglt BgL_arg4683z00_1778;
BgL_arg4683z00_1778 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_funz00); 
BgL_arg4680z00_1777 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_auxz00_1721), BgL_arg4683z00_1778); } 
BgL_copz00_1722 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg4680z00_1777), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 124 */

{ /* ./Cgen/capp.scm 125 */
bool_t BgL_test4549z00_1723;
{ /* ./Cgen/capp.scm 125 */
bool_t BgL_test4665z00_1772;
{ /* ./Cgen/capp.scm 125 */
obj_t BgL_obj2881z00_1999;
BgL_obj2881z00_1999 = 
(obj_t)(BgL_copz00_1722); 
BgL_test4665z00_1772 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1999, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4665z00_1772)
{ /* ./Cgen/capp.scm 126 */
bool_t BgL_test4666z00_1773;
{ /* ./Cgen/capp.scm 126 */
BgL_nodez00_bglt BgL_arg4675z00_1776;
BgL_arg4675z00_1776 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_funz00); 
{ /* ./Cgen/capp.scm 126 */
obj_t BgL_obj1640z00_2001;
BgL_obj1640z00_2001 = 
(obj_t)(BgL_arg4675z00_1776); 
BgL_test4666z00_1773 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1640z00_2001, BGl_varz00zzast_nodez00); } } 
if(BgL_test4666z00_1773)
{ /* ./Cgen/capp.scm 127 */
obj_t BgL_auxz00_2545;obj_t BgL_auxz00_2539;
BgL_auxz00_2545 = 
(obj_t)(BgL_auxz00_1721); 
{ /* ./Cgen/capp.scm 127 */
BgL_variablez00_bglt BgL_auxz00_2540;
{ /* ./Cgen/capp.scm 127 */
BgL_varcz00_bglt BgL_arg4671z00_1775;
{ /* ./Cgen/capp.scm 127 */
BgL_csetqz00_bglt BgL_obj2867z00_2002;
BgL_obj2867z00_2002 = 
(BgL_csetqz00_bglt)(BgL_copz00_1722); 
BgL_arg4671z00_1775 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_2002))->BgL_varz00); } 
BgL_auxz00_2540 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4671z00_1775))->BgL_variablez00); } 
BgL_auxz00_2539 = 
(obj_t)(BgL_auxz00_2540); } 
BgL_test4549z00_1723 = 
(BgL_auxz00_2539==BgL_auxz00_2545); }  else 
{ /* ./Cgen/capp.scm 126 */
BgL_test4549z00_1723 = ((bool_t)0); } }  else 
{ /* ./Cgen/capp.scm 125 */
BgL_test4549z00_1723 = ((bool_t)0); } } 
if(BgL_test4549z00_1723)
{ /* ./Cgen/capp.scm 128 */
BgL_copz00_bglt BgL_cfunz00_1724;
{ /* ./Cgen/capp.scm 128 */
BgL_csetqz00_bglt BgL_obj2868z00_2004;
BgL_obj2868z00_2004 = 
(BgL_csetqz00_bglt)(BgL_copz00_1722); 
BgL_cfunz00_1724 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_2004))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 129 */
bool_t BgL_test4550z00_1725;
BgL_test4550z00_1725 = 
NULLP(BgL_auxsz00_1712); 
if(BgL_test4550z00_1725)
{ /* ./Cgen/capp.scm 131 */
BgL_cfuncallz00_bglt BgL_arg4552z00_1726;
{ /* ./Cgen/capp.scm 131 */
obj_t BgL_arg4555z00_1727;BgL_copz00_bglt BgL_arg4556z00_1728;obj_t BgL_arg4558z00_1729;obj_t BgL_arg4559z00_1730;
{ /* ./Cgen/capp.scm 131 */
BgL_nodez00_bglt BgL_obj1560z00_2006;
BgL_obj1560z00_2006 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4555z00_1727 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2006))->BgL_locz00); } 
BgL_arg4556z00_1728 = BgL_cfunz00_1724; 
BgL_arg4558z00_1729 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_1710); 
BgL_arg4559z00_1730 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_strengthz00); 
BgL_arg4552z00_1726 = 
BGl_makezd2cfuncallzd2zzcgen_copz00(BgL_arg4555z00_1727, BgL_arg4556z00_1728, BgL_arg4558z00_1729, BgL_arg4559z00_1730); } 
return 
PROCEDURE_ENTRY(BgL_kontz00_1705)(BgL_kontz00_1705, 
(obj_t)(BgL_arg4552z00_1726), BEOA);}  else 
{ /* ./Cgen/capp.scm 136 */
obj_t BgL_arg4565z00_1731;BgL_csequencez00_bglt BgL_arg4566z00_1732;
{ /* ./Cgen/capp.scm 136 */
BgL_nodez00_bglt BgL_obj1560z00_2008;
BgL_obj1560z00_2008 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4565z00_1731 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2008))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 137 */
obj_t BgL_arg4570z00_1733;obj_t BgL_arg4571z00_1734;
{ /* ./Cgen/capp.scm 138 */
BgL_nodez00_bglt BgL_obj1560z00_2009;
BgL_obj1560z00_2009 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4570z00_1733 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2009))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 142 */
BgL_localzd2varzd2_bglt BgL_arg4575z00_1735;BgL_csequencez00_bglt BgL_arg4576z00_1736;obj_t BgL_arg4577z00_1737;
{ /* ./Cgen/capp.scm 142 */
obj_t BgL_arg4588z00_1741;obj_t BgL_arg4589z00_1742;
{ /* ./Cgen/capp.scm 142 */
BgL_nodez00_bglt BgL_obj1560z00_2010;
BgL_obj1560z00_2010 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4588z00_1741 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2010))->BgL_locz00); } 
BgL_arg4589z00_1742 = BgL_auxsz00_1712; 
BgL_arg4575z00_1735 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg4588z00_1741, BgL_arg4589z00_1742); } 
{ /* ./Cgen/capp.scm 145 */
obj_t BgL_arg4593z00_1743;obj_t BgL_arg4594z00_1744;
{ /* ./Cgen/capp.scm 145 */
BgL_nodez00_bglt BgL_obj1560z00_2011;
BgL_obj1560z00_2011 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4593z00_1743 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2011))->BgL_locz00); } 
BgL_arg4594z00_1744 = BgL_expsz00_1713; 
BgL_arg4576z00_1736 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4593z00_1743, ((bool_t)0), BgL_arg4594z00_1744); } 
{ /* ./Cgen/capp.scm 148 */
BgL_cfuncallz00_bglt BgL_arg4598z00_1745;
{ /* ./Cgen/capp.scm 148 */
obj_t BgL_arg4601z00_1746;BgL_copz00_bglt BgL_arg4602z00_1747;obj_t BgL_arg4603z00_1748;obj_t BgL_arg4604z00_1749;
{ /* ./Cgen/capp.scm 148 */
BgL_nodez00_bglt BgL_obj1560z00_2012;
BgL_obj1560z00_2012 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4601z00_1746 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2012))->BgL_locz00); } 
BgL_arg4602z00_1747 = BgL_cfunz00_1724; 
BgL_arg4603z00_1748 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_1710); 
BgL_arg4604z00_1749 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_strengthz00); 
BgL_arg4598z00_1745 = 
BGl_makezd2cfuncallzd2zzcgen_copz00(BgL_arg4601z00_1746, BgL_arg4602z00_1747, BgL_arg4603z00_1748, BgL_arg4604z00_1749); } 
BgL_arg4577z00_1737 = 
PROCEDURE_ENTRY(BgL_kontz00_1705)(BgL_kontz00_1705, 
(obj_t)(BgL_arg4598z00_1745), BEOA); } 
{ /* ./Cgen/capp.scm 139 */
obj_t BgL_list4579z00_1738;
{ /* ./Cgen/capp.scm 139 */
obj_t BgL_arg4581z00_1739;
{ /* ./Cgen/capp.scm 139 */
obj_t BgL_arg4584z00_1740;
BgL_arg4584z00_1740 = 
MAKE_PAIR(BgL_arg4577z00_1737, BNIL); 
{ /* ./Cgen/capp.scm 139 */
obj_t BgL_auxz00_2580;
BgL_auxz00_2580 = 
(obj_t)(BgL_arg4576z00_1736); 
BgL_arg4581z00_1739 = 
MAKE_PAIR(BgL_auxz00_2580, BgL_arg4584z00_1740); } } 
{ /* ./Cgen/capp.scm 139 */
obj_t BgL_auxz00_2583;
BgL_auxz00_2583 = 
(obj_t)(BgL_arg4575z00_1735); 
BgL_list4579z00_1738 = 
MAKE_PAIR(BgL_auxz00_2583, BgL_arg4581z00_1739); } } 
BgL_arg4571z00_1734 = BgL_list4579z00_1738; } } 
BgL_arg4566z00_1732 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4570z00_1733, ((bool_t)0), BgL_arg4571z00_1734); } 
{ /* ./Cgen/capp.scm 135 */
BgL_blockz00_bglt BgL_auxz00_2587;
BgL_auxz00_2587 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg4565z00_1731, 
(BgL_copz00_bglt)(BgL_arg4566z00_1732)); 
return 
(obj_t)(BgL_auxz00_2587);} } } }  else 
{ /* ./Cgen/capp.scm 154 */
obj_t BgL_arg4612z00_1751;BgL_csequencez00_bglt BgL_arg4613z00_1752;
{ /* ./Cgen/capp.scm 154 */
BgL_nodez00_bglt BgL_obj1560z00_2016;
BgL_obj1560z00_2016 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4612z00_1751 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2016))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 156 */
obj_t BgL_arg4617z00_1753;obj_t BgL_arg4618z00_1754;
{ /* ./Cgen/capp.scm 156 */
BgL_nodez00_bglt BgL_obj1560z00_2017;
BgL_obj1560z00_2017 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4617z00_1753 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2017))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 160 */
BgL_localzd2varzd2_bglt BgL_arg4622z00_1755;BgL_csequencez00_bglt BgL_arg4623z00_1756;obj_t BgL_arg4624z00_1757;
{ /* ./Cgen/capp.scm 160 */
obj_t BgL_arg4635z00_1761;obj_t BgL_arg4637z00_1762;
{ /* ./Cgen/capp.scm 160 */
BgL_nodez00_bglt BgL_obj1560z00_2018;
BgL_obj1560z00_2018 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4635z00_1761 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2018))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 161 */
obj_t BgL_auxz00_2597;
BgL_auxz00_2597 = 
(obj_t)(BgL_auxz00_1721); 
BgL_arg4637z00_1762 = 
MAKE_PAIR(BgL_auxz00_2597, BgL_auxsz00_1712); } 
BgL_arg4622z00_1755 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg4635z00_1761, BgL_arg4637z00_1762); } 
{ /* ./Cgen/capp.scm 163 */
obj_t BgL_arg4642z00_1763;obj_t BgL_arg4643z00_1764;
{ /* ./Cgen/capp.scm 163 */
BgL_nodez00_bglt BgL_obj1560z00_2019;
BgL_obj1560z00_2019 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4642z00_1763 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2019))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 164 */
obj_t BgL_auxz00_2603;
BgL_auxz00_2603 = 
(obj_t)(BgL_copz00_1722); 
BgL_arg4643z00_1764 = 
MAKE_PAIR(BgL_auxz00_2603, BgL_expsz00_1713); } 
BgL_arg4623z00_1756 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4642z00_1763, ((bool_t)0), BgL_arg4643z00_1764); } 
{ /* ./Cgen/capp.scm 166 */
BgL_cfuncallz00_bglt BgL_arg4648z00_1765;
{ /* ./Cgen/capp.scm 166 */
obj_t BgL_arg4652z00_1766;BgL_varcz00_bglt BgL_arg4653z00_1767;obj_t BgL_arg4654z00_1768;obj_t BgL_arg4655z00_1769;
{ /* ./Cgen/capp.scm 166 */
BgL_nodez00_bglt BgL_obj1560z00_2020;
BgL_obj1560z00_2020 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4652z00_1766 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2020))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 168 */
obj_t BgL_arg4659z00_1770;BgL_localz00_bglt BgL_arg4660z00_1771;
{ /* ./Cgen/capp.scm 168 */
BgL_nodez00_bglt BgL_obj1560z00_2021;
BgL_obj1560z00_2021 = 
(BgL_nodez00_bglt)(BgL_nodez00_1704); 
BgL_arg4659z00_1770 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2021))->BgL_locz00); } 
BgL_arg4660z00_1771 = BgL_auxz00_1721; 
BgL_arg4653z00_1767 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4659z00_1770, 
(BgL_variablez00_bglt)(BgL_arg4660z00_1771)); } 
BgL_arg4654z00_1768 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_newzd2actualszd2_1710); 
BgL_arg4655z00_1769 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1704))->BgL_strengthz00); 
BgL_arg4648z00_1765 = 
BGl_makezd2cfuncallzd2zzcgen_copz00(BgL_arg4652z00_1766, 
(BgL_copz00_bglt)(BgL_arg4653z00_1767), BgL_arg4654z00_1768, BgL_arg4655z00_1769); } 
BgL_arg4624z00_1757 = 
PROCEDURE_ENTRY(BgL_kontz00_1705)(BgL_kontz00_1705, 
(obj_t)(BgL_arg4648z00_1765), BEOA); } 
{ /* ./Cgen/capp.scm 157 */
obj_t BgL_list4626z00_1758;
{ /* ./Cgen/capp.scm 157 */
obj_t BgL_arg4628z00_1759;
{ /* ./Cgen/capp.scm 157 */
obj_t BgL_arg4631z00_1760;
BgL_arg4631z00_1760 = 
MAKE_PAIR(BgL_arg4624z00_1757, BNIL); 
{ /* ./Cgen/capp.scm 157 */
obj_t BgL_auxz00_2621;
BgL_auxz00_2621 = 
(obj_t)(BgL_arg4623z00_1756); 
BgL_arg4628z00_1759 = 
MAKE_PAIR(BgL_auxz00_2621, BgL_arg4631z00_1760); } } 
{ /* ./Cgen/capp.scm 157 */
obj_t BgL_auxz00_2624;
BgL_auxz00_2624 = 
(obj_t)(BgL_arg4622z00_1755); 
BgL_list4626z00_1758 = 
MAKE_PAIR(BgL_auxz00_2624, BgL_arg4628z00_1759); } } 
BgL_arg4618z00_1754 = BgL_list4626z00_1758; } } 
BgL_arg4613z00_1752 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4617z00_1753, ((bool_t)0), BgL_arg4618z00_1754); } 
{ /* ./Cgen/capp.scm 153 */
BgL_blockz00_bglt BgL_auxz00_2628;
BgL_auxz00_2628 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg4612z00_1751, 
(BgL_copz00_bglt)(BgL_arg4613z00_1752)); 
return 
(obj_t)(BgL_auxz00_2628);} } } } } }  else 
{ /* ./Cgen/capp.scm 172 */
BgL_copz00_bglt BgL_copz00_1779;
{ /* ./Cgen/capp.scm 172 */
BgL_setqz00_bglt BgL_arg4729z00_1796;
{ /* ./Cgen/capp.scm 172 */
obj_t BgL_arg4732z00_1797;
BgL_arg4732z00_1797 = 
CAR(BgL_oldzd2actualszd2_1709); 
BgL_arg4729z00_1796 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_auxz00_1711), 
(BgL_nodez00_bglt)(BgL_arg4732z00_1797)); } 
BgL_copz00_1779 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg4729z00_1796), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 174 */
bool_t BgL_test4687z00_1780;
{ /* ./Cgen/capp.scm 174 */
bool_t BgL_test4719z00_1793;
{ /* ./Cgen/capp.scm 174 */
obj_t BgL_obj2881z00_2026;
BgL_obj2881z00_2026 = 
(obj_t)(BgL_copz00_1779); 
BgL_test4719z00_1793 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_2026, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4719z00_1793)
{ /* ./Cgen/capp.scm 175 */
obj_t BgL_auxz00_2647;obj_t BgL_auxz00_2641;
BgL_auxz00_2647 = 
(obj_t)(BgL_auxz00_1711); 
{ /* ./Cgen/capp.scm 175 */
BgL_variablez00_bglt BgL_auxz00_2642;
{ /* ./Cgen/capp.scm 175 */
BgL_varcz00_bglt BgL_arg4724z00_1795;
{ /* ./Cgen/capp.scm 175 */
BgL_csetqz00_bglt BgL_obj2867z00_2027;
BgL_obj2867z00_2027 = 
(BgL_csetqz00_bglt)(BgL_copz00_1779); 
BgL_arg4724z00_1795 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_2027))->BgL_varz00); } 
BgL_auxz00_2642 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4724z00_1795))->BgL_variablez00); } 
BgL_auxz00_2641 = 
(obj_t)(BgL_auxz00_2642); } 
BgL_test4687z00_1780 = 
(BgL_auxz00_2641==BgL_auxz00_2647); }  else 
{ /* ./Cgen/capp.scm 174 */
BgL_test4687z00_1780 = ((bool_t)0); } } 
if(BgL_test4687z00_1780)
{ /* ./Cgen/capp.scm 177 */
obj_t BgL_arg4689z00_1781;obj_t BgL_arg4690z00_1782;
BgL_arg4689z00_1781 = 
CDR(BgL_oldzd2actualszd2_1709); 
{ /* ./Cgen/capp.scm 178 */
BgL_copz00_bglt BgL_arg4694z00_1783;
{ /* ./Cgen/capp.scm 178 */
BgL_csetqz00_bglt BgL_obj2868z00_2030;
BgL_obj2868z00_2030 = 
(BgL_csetqz00_bglt)(BgL_copz00_1779); 
BgL_arg4694z00_1783 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_2030))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 178 */
obj_t BgL_auxz00_2654;
BgL_auxz00_2654 = 
(obj_t)(BgL_arg4694z00_1783); 
BgL_arg4690z00_1782 = 
MAKE_PAIR(BgL_auxz00_2654, BgL_newzd2actualszd2_1710); } } 
{ 
obj_t BgL_newzd2actualszd2_2658;obj_t BgL_oldzd2actualszd2_2657;
BgL_oldzd2actualszd2_2657 = BgL_arg4689z00_1781; 
BgL_newzd2actualszd2_2658 = BgL_arg4690z00_1782; 
BgL_newzd2actualszd2_1710 = BgL_newzd2actualszd2_2658; 
BgL_oldzd2actualszd2_1709 = BgL_oldzd2actualszd2_2657; 
goto BgL_loopz00_1714;} }  else 
{ /* ./Cgen/capp.scm 174 */
{ /* ./Cgen/capp.scm 183 */
obj_t BgL_arg4698z00_1784;obj_t BgL_arg4699z00_1785;BgL_localz00_bglt BgL_arg4700z00_1786;obj_t BgL_arg4701z00_1787;obj_t BgL_arg4702z00_1788;
BgL_arg4698z00_1784 = 
CDR(BgL_oldzd2actualszd2_1709); 
{ /* ./Cgen/capp.scm 185 */
BgL_varcz00_bglt BgL_arg4706z00_1789;
{ /* ./Cgen/capp.scm 185 */
obj_t BgL_arg4709z00_1790;BgL_localz00_bglt BgL_arg4710z00_1791;
{ /* ./Cgen/capp.scm 185 */
BgL_nodez00_bglt BgL_obj1560z00_2033;
{ /* ./Cgen/capp.scm 185 */
obj_t BgL_auxz00_2660;
BgL_auxz00_2660 = 
CAR(BgL_oldzd2actualszd2_1709); 
BgL_obj1560z00_2033 = 
(BgL_nodez00_bglt)(BgL_auxz00_2660); } 
BgL_arg4709z00_1790 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_2033))->BgL_locz00); } 
BgL_arg4710z00_1791 = BgL_auxz00_1711; 
BgL_arg4706z00_1789 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4709z00_1790, 
(BgL_variablez00_bglt)(BgL_arg4710z00_1791)); } 
{ /* ./Cgen/capp.scm 184 */
obj_t BgL_auxz00_2666;
BgL_auxz00_2666 = 
(obj_t)(BgL_arg4706z00_1789); 
BgL_arg4699z00_1785 = 
MAKE_PAIR(BgL_auxz00_2666, BgL_newzd2actualszd2_1710); } } 
BgL_arg4700z00_1786 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
{ /* ./Cgen/capp.scm 189 */
obj_t BgL_auxz00_2672;
BgL_auxz00_2672 = 
(obj_t)(BgL_auxz00_1711); 
BgL_arg4701z00_1787 = 
MAKE_PAIR(BgL_auxz00_2672, BgL_auxsz00_1712); } 
{ /* ./Cgen/capp.scm 190 */
obj_t BgL_auxz00_2675;
BgL_auxz00_2675 = 
(obj_t)(BgL_copz00_1779); 
BgL_arg4702z00_1788 = 
MAKE_PAIR(BgL_auxz00_2675, BgL_expsz00_1713); } 
{ 
obj_t BgL_expsz00_2682;obj_t BgL_auxsz00_2681;BgL_localz00_bglt BgL_auxz00_2680;obj_t BgL_newzd2actualszd2_2679;obj_t BgL_oldzd2actualszd2_2678;
BgL_oldzd2actualszd2_2678 = BgL_arg4698z00_1784; 
BgL_newzd2actualszd2_2679 = BgL_arg4699z00_1785; 
BgL_auxz00_2680 = BgL_arg4700z00_1786; 
BgL_auxsz00_2681 = BgL_arg4701z00_1787; 
BgL_expsz00_2682 = BgL_arg4702z00_1788; 
BgL_expsz00_1713 = BgL_expsz00_2682; 
BgL_auxsz00_1712 = BgL_auxsz00_2681; 
BgL_auxz00_1711 = BgL_auxz00_2680; 
BgL_newzd2actualszd2_1710 = BgL_newzd2actualszd2_2679; 
BgL_oldzd2actualszd2_1709 = BgL_oldzd2actualszd2_2678; 
goto BgL_loopz00_1714;} } } } } } } } } } 
}



/* node->cop-app-ly3260 */
obj_t BGl_nodezd2ze3copzd2appzd2ly3260z31zzcgen_cappz00(obj_t BgL_envz00_2053, obj_t BgL_nodez00_2054, obj_t BgL_kontz00_2055)
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 33 */
{ 
BgL_appzd2lyzd2_bglt BgL_nodez00_1599;obj_t BgL_kontz00_1600;
BgL_nodez00_1599 = 
(BgL_appzd2lyzd2_bglt)(BgL_nodez00_2054); 
BgL_kontz00_1600 = BgL_kontz00_2055; 
{ /* ./Cgen/capp.scm 37 */
BgL_nodez00_bglt BgL_valuez00_1604;
BgL_valuez00_1604 = 
(((BgL_appzd2lyzd2_bglt)CREF(BgL_nodez00_1599))->BgL_argz00); 
{ /* ./Cgen/capp.scm 37 */
BgL_localz00_bglt BgL_vauxz00_1605;
BgL_vauxz00_1605 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
{ /* ./Cgen/capp.scm 38 */
BgL_copz00_bglt BgL_vcopz00_1606;
{ /* ./Cgen/capp.scm 39 */
BgL_setqz00_bglt BgL_arg4528z00_1701;
BgL_arg4528z00_1701 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_vauxz00_1605), BgL_valuez00_1604); 
BgL_vcopz00_1606 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg4528z00_1701), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 39 */
BgL_nodez00_bglt BgL_funz00_1607;
BgL_funz00_1607 = 
(((BgL_appzd2lyzd2_bglt)CREF(BgL_nodez00_1599))->BgL_funz00); 
{ /* ./Cgen/capp.scm 40 */
BgL_localz00_bglt BgL_fauxz00_1608;
BgL_fauxz00_1608 = 
BGl_makezd2localzd2svarzf2namezf2zzcgen_cgenz00(
CNST_TABLE_REF(((long)1)), 
(BgL_typez00_bglt)(BGl_za2procedureza2z00zztype_cachez00)); 
{ /* ./Cgen/capp.scm 41 */
BgL_copz00_bglt BgL_fcopz00_1609;
{ /* ./Cgen/capp.scm 42 */
BgL_setqz00_bglt BgL_arg4521z00_1700;
BgL_arg4521z00_1700 = 
BGl_nodezd2setqzd2zzcgen_cgenz00(
(BgL_variablez00_bglt)(BgL_fauxz00_1608), BgL_funz00_1607); 
BgL_fcopz00_1609 = 
BGl_nodezd2ze3copz31zzcgen_cgenz00(
(BgL_nodez00_bglt)(BgL_arg4521z00_1700), BGl_za2idzd2kontza2zd2zzcgen_cgenz00); } 
{ /* ./Cgen/capp.scm 42 */

{ /* ./Cgen/capp.scm 44 */
bool_t BgL_test4293z00_1610;
{ /* ./Cgen/capp.scm 44 */
bool_t BgL_test4501z00_1693;
{ /* ./Cgen/capp.scm 44 */
obj_t BgL_obj2881z00_1942;
BgL_obj2881z00_1942 = 
(obj_t)(BgL_vcopz00_1606); 
BgL_test4501z00_1693 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1942, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4501z00_1693)
{ /* ./Cgen/capp.scm 44 */
bool_t BgL_test4502z00_1694;
{ /* ./Cgen/capp.scm 44 */
obj_t BgL_auxz00_2709;obj_t BgL_auxz00_2703;
BgL_auxz00_2709 = 
(obj_t)(BgL_vauxz00_1605); 
{ /* ./Cgen/capp.scm 44 */
BgL_variablez00_bglt BgL_auxz00_2704;
{ /* ./Cgen/capp.scm 44 */
BgL_varcz00_bglt BgL_arg4516z00_1699;
{ /* ./Cgen/capp.scm 44 */
BgL_csetqz00_bglt BgL_obj2867z00_1943;
BgL_obj2867z00_1943 = 
(BgL_csetqz00_bglt)(BgL_vcopz00_1606); 
BgL_arg4516z00_1699 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1943))->BgL_varz00); } 
BgL_auxz00_2704 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4516z00_1699))->BgL_variablez00); } 
BgL_auxz00_2703 = 
(obj_t)(BgL_auxz00_2704); } 
BgL_test4502z00_1694 = 
(BgL_auxz00_2703==BgL_auxz00_2709); } 
if(BgL_test4502z00_1694)
{ /* ./Cgen/capp.scm 45 */
bool_t BgL_test4503z00_1695;
{ /* ./Cgen/capp.scm 45 */
obj_t BgL_obj2881z00_1945;
BgL_obj2881z00_1945 = 
(obj_t)(BgL_fcopz00_1609); 
BgL_test4503z00_1695 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1945, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4503z00_1695)
{ /* ./Cgen/capp.scm 45 */
obj_t BgL_auxz00_2722;obj_t BgL_auxz00_2716;
BgL_auxz00_2722 = 
(obj_t)(BgL_fauxz00_1608); 
{ /* ./Cgen/capp.scm 45 */
BgL_variablez00_bglt BgL_auxz00_2717;
{ /* ./Cgen/capp.scm 45 */
BgL_varcz00_bglt BgL_arg4508z00_1697;
{ /* ./Cgen/capp.scm 45 */
BgL_csetqz00_bglt BgL_obj2867z00_1946;
BgL_obj2867z00_1946 = 
(BgL_csetqz00_bglt)(BgL_fcopz00_1609); 
BgL_arg4508z00_1697 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1946))->BgL_varz00); } 
BgL_auxz00_2717 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4508z00_1697))->BgL_variablez00); } 
BgL_auxz00_2716 = 
(obj_t)(BgL_auxz00_2717); } 
BgL_test4293z00_1610 = 
(BgL_auxz00_2716==BgL_auxz00_2722); }  else 
{ /* ./Cgen/capp.scm 45 */
BgL_test4293z00_1610 = ((bool_t)0); } }  else 
{ /* ./Cgen/capp.scm 44 */
BgL_test4293z00_1610 = ((bool_t)0); } }  else 
{ /* ./Cgen/capp.scm 44 */
BgL_test4293z00_1610 = ((bool_t)0); } } 
if(BgL_test4293z00_1610)
{ /* ./Cgen/capp.scm 44 */
{ /* ./Cgen/capp.scm 47 */
BgL_capplyz00_bglt BgL_arg4295z00_1611;
{ /* ./Cgen/capp.scm 47 */
obj_t BgL_arg4298z00_1612;BgL_copz00_bglt BgL_arg4299z00_1613;BgL_copz00_bglt BgL_arg4300z00_1614;
{ /* ./Cgen/capp.scm 47 */
BgL_nodez00_bglt BgL_obj1560z00_1948;
BgL_obj1560z00_1948 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4298z00_1612 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1948))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 48 */
BgL_csetqz00_bglt BgL_obj2868z00_1949;
BgL_obj2868z00_1949 = 
(BgL_csetqz00_bglt)(BgL_fcopz00_1609); 
BgL_arg4299z00_1613 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1949))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 49 */
BgL_csetqz00_bglt BgL_obj2868z00_1950;
BgL_obj2868z00_1950 = 
(BgL_csetqz00_bglt)(BgL_vcopz00_1606); 
BgL_arg4300z00_1614 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1950))->BgL_valuez00); } 
BgL_arg4295z00_1611 = 
BGl_makezd2capplyzd2zzcgen_copz00(BgL_arg4298z00_1612, BgL_arg4299z00_1613, BgL_arg4300z00_1614); } 
return 
PROCEDURE_ENTRY(BgL_kontz00_1600)(BgL_kontz00_1600, 
(obj_t)(BgL_arg4295z00_1611), BEOA);} }  else 
{ /* ./Cgen/capp.scm 50 */
bool_t BgL_test4305z00_1615;
{ /* ./Cgen/capp.scm 50 */
bool_t BgL_test4492z00_1690;
{ /* ./Cgen/capp.scm 50 */
obj_t BgL_obj2881z00_1951;
BgL_obj2881z00_1951 = 
(obj_t)(BgL_vcopz00_1606); 
BgL_test4492z00_1690 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1951, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4492z00_1690)
{ /* ./Cgen/capp.scm 50 */
obj_t BgL_auxz00_2745;obj_t BgL_auxz00_2739;
BgL_auxz00_2745 = 
(obj_t)(BgL_vauxz00_1605); 
{ /* ./Cgen/capp.scm 50 */
BgL_variablez00_bglt BgL_auxz00_2740;
{ /* ./Cgen/capp.scm 50 */
BgL_varcz00_bglt BgL_arg4497z00_1692;
{ /* ./Cgen/capp.scm 50 */
BgL_csetqz00_bglt BgL_obj2867z00_1952;
BgL_obj2867z00_1952 = 
(BgL_csetqz00_bglt)(BgL_vcopz00_1606); 
BgL_arg4497z00_1692 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1952))->BgL_varz00); } 
BgL_auxz00_2740 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4497z00_1692))->BgL_variablez00); } 
BgL_auxz00_2739 = 
(obj_t)(BgL_auxz00_2740); } 
BgL_test4305z00_1615 = 
(BgL_auxz00_2739==BgL_auxz00_2745); }  else 
{ /* ./Cgen/capp.scm 50 */
BgL_test4305z00_1615 = ((bool_t)0); } } 
if(BgL_test4305z00_1615)
{ /* ./Cgen/capp.scm 50 */
{ /* ./Cgen/capp.scm 52 */
obj_t BgL_arg4307z00_1616;BgL_csequencez00_bglt BgL_arg4309z00_1617;
{ /* ./Cgen/capp.scm 52 */
BgL_nodez00_bglt BgL_obj1560z00_1954;
BgL_obj1560z00_1954 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4307z00_1616 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1954))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 54 */
obj_t BgL_arg4313z00_1618;obj_t BgL_arg4314z00_1619;
{ /* ./Cgen/capp.scm 54 */
BgL_nodez00_bglt BgL_obj1560z00_1955;
BgL_obj1560z00_1955 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4313z00_1618 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1955))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 58 */
BgL_localzd2varzd2_bglt BgL_arg4318z00_1620;BgL_csequencez00_bglt BgL_arg4319z00_1621;obj_t BgL_arg4320z00_1622;
{ /* ./Cgen/capp.scm 58 */
obj_t BgL_arg4331z00_1626;obj_t BgL_arg4332z00_1627;
{ /* ./Cgen/capp.scm 58 */
BgL_nodez00_bglt BgL_obj1560z00_1956;
BgL_obj1560z00_1956 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4331z00_1626 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1956))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 59 */
obj_t BgL_list4336z00_1628;
{ /* ./Cgen/capp.scm 59 */
obj_t BgL_auxz00_2755;
BgL_auxz00_2755 = 
(obj_t)(BgL_fauxz00_1608); 
BgL_list4336z00_1628 = 
MAKE_PAIR(BgL_auxz00_2755, BNIL); } 
BgL_arg4332z00_1627 = BgL_list4336z00_1628; } 
BgL_arg4318z00_1620 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg4331z00_1626, BgL_arg4332z00_1627); } 
{ /* ./Cgen/capp.scm 61 */
obj_t BgL_arg4339z00_1629;obj_t BgL_arg4340z00_1630;
{ /* ./Cgen/capp.scm 61 */
BgL_nodez00_bglt BgL_obj1560z00_1959;
BgL_obj1560z00_1959 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4339z00_1629 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1959))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 62 */
obj_t BgL_list4344z00_1631;
{ /* ./Cgen/capp.scm 62 */
obj_t BgL_auxz00_2761;
BgL_auxz00_2761 = 
(obj_t)(BgL_fcopz00_1609); 
BgL_list4344z00_1631 = 
MAKE_PAIR(BgL_auxz00_2761, BNIL); } 
BgL_arg4340z00_1630 = BgL_list4344z00_1631; } 
BgL_arg4319z00_1621 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4339z00_1629, ((bool_t)0), BgL_arg4340z00_1630); } 
{ /* ./Cgen/capp.scm 64 */
BgL_capplyz00_bglt BgL_arg4347z00_1632;
{ /* ./Cgen/capp.scm 64 */
obj_t BgL_arg4350z00_1633;BgL_varcz00_bglt BgL_arg4351z00_1634;BgL_copz00_bglt BgL_arg4352z00_1635;
{ /* ./Cgen/capp.scm 64 */
BgL_nodez00_bglt BgL_obj1560z00_1962;
BgL_obj1560z00_1962 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4350z00_1633 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1962))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 66 */
obj_t BgL_arg4357z00_1636;BgL_localz00_bglt BgL_arg4358z00_1637;
{ /* ./Cgen/capp.scm 66 */
BgL_nodez00_bglt BgL_obj1560z00_1963;
BgL_obj1560z00_1963 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4357z00_1636 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1963))->BgL_locz00); } 
BgL_arg4358z00_1637 = BgL_fauxz00_1608; 
BgL_arg4351z00_1634 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4357z00_1636, 
(BgL_variablez00_bglt)(BgL_arg4358z00_1637)); } 
{ /* ./Cgen/capp.scm 68 */
BgL_csetqz00_bglt BgL_obj2868z00_1964;
BgL_obj2868z00_1964 = 
(BgL_csetqz00_bglt)(BgL_vcopz00_1606); 
BgL_arg4352z00_1635 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1964))->BgL_valuez00); } 
BgL_arg4347z00_1632 = 
BGl_makezd2capplyzd2zzcgen_copz00(BgL_arg4350z00_1633, 
(BgL_copz00_bglt)(BgL_arg4351z00_1634), BgL_arg4352z00_1635); } 
BgL_arg4320z00_1622 = 
PROCEDURE_ENTRY(BgL_kontz00_1600)(BgL_kontz00_1600, 
(obj_t)(BgL_arg4347z00_1632), BEOA); } 
{ /* ./Cgen/capp.scm 55 */
obj_t BgL_list4322z00_1623;
{ /* ./Cgen/capp.scm 55 */
obj_t BgL_arg4324z00_1624;
{ /* ./Cgen/capp.scm 55 */
obj_t BgL_arg4327z00_1625;
BgL_arg4327z00_1625 = 
MAKE_PAIR(BgL_arg4320z00_1622, BNIL); 
{ /* ./Cgen/capp.scm 55 */
obj_t BgL_auxz00_2779;
BgL_auxz00_2779 = 
(obj_t)(BgL_arg4319z00_1621); 
BgL_arg4324z00_1624 = 
MAKE_PAIR(BgL_auxz00_2779, BgL_arg4327z00_1625); } } 
{ /* ./Cgen/capp.scm 55 */
obj_t BgL_auxz00_2782;
BgL_auxz00_2782 = 
(obj_t)(BgL_arg4318z00_1620); 
BgL_list4322z00_1623 = 
MAKE_PAIR(BgL_auxz00_2782, BgL_arg4324z00_1624); } } 
BgL_arg4314z00_1619 = BgL_list4322z00_1623; } } 
BgL_arg4309z00_1617 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4313z00_1618, ((bool_t)0), BgL_arg4314z00_1619); } 
{ /* ./Cgen/capp.scm 51 */
BgL_blockz00_bglt BgL_auxz00_2786;
BgL_auxz00_2786 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg4307z00_1616, 
(BgL_copz00_bglt)(BgL_arg4309z00_1617)); 
return 
(obj_t)(BgL_auxz00_2786);} } }  else 
{ /* ./Cgen/capp.scm 69 */
bool_t BgL_test4362z00_1638;
{ /* ./Cgen/capp.scm 69 */
bool_t BgL_test4483z00_1687;
{ /* ./Cgen/capp.scm 69 */
obj_t BgL_obj2881z00_1967;
BgL_obj2881z00_1967 = 
(obj_t)(BgL_fcopz00_1609); 
BgL_test4483z00_1687 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj2881z00_1967, BGl_csetqz00zzcgen_copz00); } 
if(BgL_test4483z00_1687)
{ /* ./Cgen/capp.scm 69 */
obj_t BgL_auxz00_2799;obj_t BgL_auxz00_2793;
BgL_auxz00_2799 = 
(obj_t)(BgL_fauxz00_1608); 
{ /* ./Cgen/capp.scm 69 */
BgL_variablez00_bglt BgL_auxz00_2794;
{ /* ./Cgen/capp.scm 69 */
BgL_varcz00_bglt BgL_arg4488z00_1689;
{ /* ./Cgen/capp.scm 69 */
BgL_csetqz00_bglt BgL_obj2867z00_1968;
BgL_obj2867z00_1968 = 
(BgL_csetqz00_bglt)(BgL_fcopz00_1609); 
BgL_arg4488z00_1689 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2867z00_1968))->BgL_varz00); } 
BgL_auxz00_2794 = 
(((BgL_varcz00_bglt)CREF(BgL_arg4488z00_1689))->BgL_variablez00); } 
BgL_auxz00_2793 = 
(obj_t)(BgL_auxz00_2794); } 
BgL_test4362z00_1638 = 
(BgL_auxz00_2793==BgL_auxz00_2799); }  else 
{ /* ./Cgen/capp.scm 69 */
BgL_test4362z00_1638 = ((bool_t)0); } } 
if(BgL_test4362z00_1638)
{ /* ./Cgen/capp.scm 69 */
{ /* ./Cgen/capp.scm 71 */
obj_t BgL_arg4364z00_1639;BgL_csequencez00_bglt BgL_arg4365z00_1640;
{ /* ./Cgen/capp.scm 71 */
BgL_nodez00_bglt BgL_obj1560z00_1970;
BgL_obj1560z00_1970 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4364z00_1639 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1970))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 73 */
obj_t BgL_arg4369z00_1641;obj_t BgL_arg4370z00_1642;
{ /* ./Cgen/capp.scm 73 */
BgL_nodez00_bglt BgL_obj1560z00_1971;
BgL_obj1560z00_1971 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4369z00_1641 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1971))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 77 */
BgL_localzd2varzd2_bglt BgL_arg4374z00_1643;BgL_csequencez00_bglt BgL_arg4375z00_1644;obj_t BgL_arg4376z00_1645;
{ /* ./Cgen/capp.scm 77 */
obj_t BgL_arg4387z00_1649;obj_t BgL_arg4388z00_1650;
{ /* ./Cgen/capp.scm 77 */
BgL_nodez00_bglt BgL_obj1560z00_1972;
BgL_obj1560z00_1972 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4387z00_1649 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1972))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 78 */
obj_t BgL_list4392z00_1651;
{ /* ./Cgen/capp.scm 78 */
obj_t BgL_auxz00_2809;
BgL_auxz00_2809 = 
(obj_t)(BgL_vauxz00_1605); 
BgL_list4392z00_1651 = 
MAKE_PAIR(BgL_auxz00_2809, BNIL); } 
BgL_arg4388z00_1650 = BgL_list4392z00_1651; } 
BgL_arg4374z00_1643 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg4387z00_1649, BgL_arg4388z00_1650); } 
{ /* ./Cgen/capp.scm 80 */
obj_t BgL_arg4395z00_1652;obj_t BgL_arg4396z00_1653;
{ /* ./Cgen/capp.scm 80 */
BgL_nodez00_bglt BgL_obj1560z00_1975;
BgL_obj1560z00_1975 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4395z00_1652 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1975))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 81 */
obj_t BgL_list4400z00_1654;
{ /* ./Cgen/capp.scm 81 */
obj_t BgL_auxz00_2815;
BgL_auxz00_2815 = 
(obj_t)(BgL_vcopz00_1606); 
BgL_list4400z00_1654 = 
MAKE_PAIR(BgL_auxz00_2815, BNIL); } 
BgL_arg4396z00_1653 = BgL_list4400z00_1654; } 
BgL_arg4375z00_1644 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4395z00_1652, ((bool_t)0), BgL_arg4396z00_1653); } 
{ /* ./Cgen/capp.scm 83 */
BgL_capplyz00_bglt BgL_arg4403z00_1655;
{ /* ./Cgen/capp.scm 83 */
obj_t BgL_arg4406z00_1656;BgL_copz00_bglt BgL_arg4407z00_1657;BgL_varcz00_bglt BgL_arg4409z00_1658;
{ /* ./Cgen/capp.scm 83 */
BgL_nodez00_bglt BgL_obj1560z00_1978;
BgL_obj1560z00_1978 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4406z00_1656 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1978))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 84 */
BgL_csetqz00_bglt BgL_obj2868z00_1979;
BgL_obj2868z00_1979 = 
(BgL_csetqz00_bglt)(BgL_fcopz00_1609); 
BgL_arg4407z00_1657 = 
(((BgL_csetqz00_bglt)CREF(BgL_obj2868z00_1979))->BgL_valuez00); } 
{ /* ./Cgen/capp.scm 86 */
obj_t BgL_arg4414z00_1659;BgL_localz00_bglt BgL_arg4415z00_1660;
{ /* ./Cgen/capp.scm 86 */
BgL_nodez00_bglt BgL_obj1560z00_1980;
BgL_obj1560z00_1980 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4414z00_1659 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1980))->BgL_locz00); } 
BgL_arg4415z00_1660 = BgL_vauxz00_1605; 
BgL_arg4409z00_1658 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4414z00_1659, 
(BgL_variablez00_bglt)(BgL_arg4415z00_1660)); } 
BgL_arg4403z00_1655 = 
BGl_makezd2capplyzd2zzcgen_copz00(BgL_arg4406z00_1656, BgL_arg4407z00_1657, 
(BgL_copz00_bglt)(BgL_arg4409z00_1658)); } 
BgL_arg4376z00_1645 = 
PROCEDURE_ENTRY(BgL_kontz00_1600)(BgL_kontz00_1600, 
(obj_t)(BgL_arg4403z00_1655), BEOA); } 
{ /* ./Cgen/capp.scm 74 */
obj_t BgL_list4378z00_1646;
{ /* ./Cgen/capp.scm 74 */
obj_t BgL_arg4380z00_1647;
{ /* ./Cgen/capp.scm 74 */
obj_t BgL_arg4383z00_1648;
BgL_arg4383z00_1648 = 
MAKE_PAIR(BgL_arg4376z00_1645, BNIL); 
{ /* ./Cgen/capp.scm 74 */
obj_t BgL_auxz00_2833;
BgL_auxz00_2833 = 
(obj_t)(BgL_arg4375z00_1644); 
BgL_arg4380z00_1647 = 
MAKE_PAIR(BgL_auxz00_2833, BgL_arg4383z00_1648); } } 
{ /* ./Cgen/capp.scm 74 */
obj_t BgL_auxz00_2836;
BgL_auxz00_2836 = 
(obj_t)(BgL_arg4374z00_1643); 
BgL_list4378z00_1646 = 
MAKE_PAIR(BgL_auxz00_2836, BgL_arg4380z00_1647); } } 
BgL_arg4370z00_1642 = BgL_list4378z00_1646; } } 
BgL_arg4365z00_1640 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4369z00_1641, ((bool_t)0), BgL_arg4370z00_1642); } 
{ /* ./Cgen/capp.scm 70 */
BgL_blockz00_bglt BgL_auxz00_2840;
BgL_auxz00_2840 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg4364z00_1639, 
(BgL_copz00_bglt)(BgL_arg4365z00_1640)); 
return 
(obj_t)(BgL_auxz00_2840);} } }  else 
{ /* ./Cgen/capp.scm 69 */
{ /* ./Cgen/capp.scm 90 */
obj_t BgL_arg4419z00_1661;BgL_csequencez00_bglt BgL_arg4420z00_1662;
{ /* ./Cgen/capp.scm 90 */
BgL_nodez00_bglt BgL_obj1560z00_1983;
BgL_obj1560z00_1983 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4419z00_1661 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1983))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 92 */
obj_t BgL_arg4424z00_1663;obj_t BgL_arg4425z00_1664;
{ /* ./Cgen/capp.scm 92 */
BgL_nodez00_bglt BgL_obj1560z00_1984;
BgL_obj1560z00_1984 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4424z00_1663 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1984))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 96 */
BgL_localzd2varzd2_bglt BgL_arg4429z00_1665;BgL_csequencez00_bglt BgL_arg4430z00_1666;obj_t BgL_arg4431z00_1667;
{ /* ./Cgen/capp.scm 96 */
obj_t BgL_arg4442z00_1671;obj_t BgL_arg4443z00_1672;
{ /* ./Cgen/capp.scm 96 */
BgL_nodez00_bglt BgL_obj1560z00_1985;
BgL_obj1560z00_1985 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4442z00_1671 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1985))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 97 */
obj_t BgL_list4447z00_1673;
{ /* ./Cgen/capp.scm 97 */
obj_t BgL_arg4449z00_1674;
{ /* ./Cgen/capp.scm 97 */
obj_t BgL_auxz00_2850;
BgL_auxz00_2850 = 
(obj_t)(BgL_vauxz00_1605); 
BgL_arg4449z00_1674 = 
MAKE_PAIR(BgL_auxz00_2850, BNIL); } 
{ /* ./Cgen/capp.scm 97 */
obj_t BgL_auxz00_2853;
BgL_auxz00_2853 = 
(obj_t)(BgL_fauxz00_1608); 
BgL_list4447z00_1673 = 
MAKE_PAIR(BgL_auxz00_2853, BgL_arg4449z00_1674); } } 
BgL_arg4443z00_1672 = BgL_list4447z00_1673; } 
BgL_arg4429z00_1665 = 
BGl_makezd2localzd2varz00zzcgen_copz00(BgL_arg4442z00_1671, BgL_arg4443z00_1672); } 
{ /* ./Cgen/capp.scm 99 */
obj_t BgL_arg4453z00_1675;obj_t BgL_arg4454z00_1676;
{ /* ./Cgen/capp.scm 99 */
BgL_nodez00_bglt BgL_obj1560z00_1988;
BgL_obj1560z00_1988 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4453z00_1675 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1988))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 100 */
obj_t BgL_list4458z00_1677;
{ /* ./Cgen/capp.scm 100 */
obj_t BgL_arg4460z00_1678;
{ /* ./Cgen/capp.scm 100 */
obj_t BgL_auxz00_2859;
BgL_auxz00_2859 = 
(obj_t)(BgL_vcopz00_1606); 
BgL_arg4460z00_1678 = 
MAKE_PAIR(BgL_auxz00_2859, BNIL); } 
{ /* ./Cgen/capp.scm 100 */
obj_t BgL_auxz00_2862;
BgL_auxz00_2862 = 
(obj_t)(BgL_fcopz00_1609); 
BgL_list4458z00_1677 = 
MAKE_PAIR(BgL_auxz00_2862, BgL_arg4460z00_1678); } } 
BgL_arg4454z00_1676 = BgL_list4458z00_1677; } 
BgL_arg4430z00_1666 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4453z00_1675, ((bool_t)0), BgL_arg4454z00_1676); } 
{ /* ./Cgen/capp.scm 102 */
BgL_capplyz00_bglt BgL_arg4464z00_1679;
{ /* ./Cgen/capp.scm 102 */
obj_t BgL_arg4467z00_1680;BgL_varcz00_bglt BgL_arg4468z00_1681;BgL_varcz00_bglt BgL_arg4469z00_1682;
{ /* ./Cgen/capp.scm 102 */
BgL_nodez00_bglt BgL_obj1560z00_1991;
BgL_obj1560z00_1991 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4467z00_1680 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1991))->BgL_locz00); } 
{ /* ./Cgen/capp.scm 104 */
obj_t BgL_arg4474z00_1683;BgL_localz00_bglt BgL_arg4475z00_1684;
{ /* ./Cgen/capp.scm 104 */
BgL_nodez00_bglt BgL_obj1560z00_1992;
BgL_obj1560z00_1992 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4474z00_1683 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1992))->BgL_locz00); } 
BgL_arg4475z00_1684 = BgL_fauxz00_1608; 
BgL_arg4468z00_1681 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4474z00_1683, 
(BgL_variablez00_bglt)(BgL_arg4475z00_1684)); } 
{ /* ./Cgen/capp.scm 107 */
obj_t BgL_arg4479z00_1685;BgL_localz00_bglt BgL_arg4480z00_1686;
{ /* ./Cgen/capp.scm 107 */
BgL_nodez00_bglt BgL_obj1560z00_1993;
BgL_obj1560z00_1993 = 
(BgL_nodez00_bglt)(BgL_nodez00_1599); 
BgL_arg4479z00_1685 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1560z00_1993))->BgL_locz00); } 
BgL_arg4480z00_1686 = BgL_vauxz00_1605; 
BgL_arg4469z00_1682 = 
BGl_makezd2varczd2zzcgen_copz00(BgL_arg4479z00_1685, 
(BgL_variablez00_bglt)(BgL_arg4480z00_1686)); } 
BgL_arg4464z00_1679 = 
BGl_makezd2capplyzd2zzcgen_copz00(BgL_arg4467z00_1680, 
(BgL_copz00_bglt)(BgL_arg4468z00_1681), 
(BgL_copz00_bglt)(BgL_arg4469z00_1682)); } 
BgL_arg4431z00_1667 = 
PROCEDURE_ENTRY(BgL_kontz00_1600)(BgL_kontz00_1600, 
(obj_t)(BgL_arg4464z00_1679), BEOA); } 
{ /* ./Cgen/capp.scm 93 */
obj_t BgL_list4433z00_1668;
{ /* ./Cgen/capp.scm 93 */
obj_t BgL_arg4435z00_1669;
{ /* ./Cgen/capp.scm 93 */
obj_t BgL_arg4438z00_1670;
BgL_arg4438z00_1670 = 
MAKE_PAIR(BgL_arg4431z00_1667, BNIL); 
{ /* ./Cgen/capp.scm 93 */
obj_t BgL_auxz00_2883;
BgL_auxz00_2883 = 
(obj_t)(BgL_arg4430z00_1666); 
BgL_arg4435z00_1669 = 
MAKE_PAIR(BgL_auxz00_2883, BgL_arg4438z00_1670); } } 
{ /* ./Cgen/capp.scm 93 */
obj_t BgL_auxz00_2886;
BgL_auxz00_2886 = 
(obj_t)(BgL_arg4429z00_1665); 
BgL_list4433z00_1668 = 
MAKE_PAIR(BgL_auxz00_2886, BgL_arg4435z00_1669); } } 
BgL_arg4425z00_1664 = BgL_list4433z00_1668; } } 
BgL_arg4420z00_1662 = 
BGl_makezd2csequencezd2zzcgen_copz00(BgL_arg4424z00_1663, ((bool_t)0), BgL_arg4425z00_1664); } 
{ /* ./Cgen/capp.scm 89 */
BgL_blockz00_bglt BgL_auxz00_2890;
BgL_auxz00_2890 = 
BGl_makezd2blockzd2zzcgen_copz00(BgL_arg4419z00_1661, 
(BgL_copz00_bglt)(BgL_arg4420z00_1662)); 
return 
(obj_t)(BgL_auxz00_2890);} } } } } } } } } } } } } } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzcgen_cappz00()
{ AN_OBJECT;
{ /* ./Cgen/capp.scm 15 */
BGl_modulezd2initializa7ationz75zztools_tracez00(((long)59211), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zztools_shapez00(((long)30833), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zztype_toolsz00(((long)15091), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zztype_cachez00(((long)25848), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzast_nodez00(((long)50868), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzast_localz00(((long)28959), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzeffect_effectz00(((long)14017), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzbackend_c_emitz00(((long)11970), "cgen_capp"); 
BGl_modulezd2initializa7ationz75zzcgen_copz00(((long)5379), "cgen_capp"); 
return 
BGl_modulezd2initializa7ationz75zzcgen_cgenz00(((long)61576), "cgen_capp");} 
}

