/*===========================================================================*/
/*   (SawJvm/funcall.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 SawJvm/funcall.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_tclassz00_bgl {
   obj_t BgL_itszd2superzd2;
   obj_t BgL_slotsz00;
   struct BgL_globalz00_bgl * BgL_holderz00;
   obj_t BgL_wideningz00;
   long BgL_depthz00;
   bool_t BgL_finalzf3zf3;
   obj_t BgL_constructorz00;
   obj_t BgL_virtualzd2slotszd2numberz00;
   bool_t BgL_abstractzf3zf3;
   obj_t BgL_widezd2typezd2;
} *BgL_tclassz00_bglt;

typedef struct BgL_jclassz00_bgl {
   obj_t BgL_itszd2superzd2;
   obj_t BgL_slotsz00;
   obj_t BgL_packagez00;
} *BgL_jclassz00_bglt;

typedef struct BgL_wclassz00_bgl {
   obj_t BgL_itszd2classzd2;
} *BgL_wclassz00_bglt;

typedef struct BgL_slotz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_srcz00;
   obj_t BgL_classzd2ownerzd2;
   obj_t BgL_typez00;
   bool_t BgL_readzd2onlyzf3z21;
   obj_t BgL_defaultzd2valuezd2;
   obj_t BgL_virtualzd2numzd2;
   obj_t BgL_getterz00;
   obj_t BgL_setterz00;
   obj_t BgL_indexedz00;
   obj_t BgL_userzd2infozd2;
} *BgL_slotz00_bglt;

typedef struct BgL_backendz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
} *BgL_backendz00_bglt;

typedef struct BgL_cvmz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
} *BgL_cvmz00_bglt;

typedef struct BgL_sawcz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
} *BgL_sawcz00_bglt;

typedef struct BgL_cgenz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
} *BgL_cgenz00_bglt;

typedef struct BgL_jvmz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
   obj_t BgL_qnamez00;
   obj_t BgL_classesz00;
   obj_t BgL_currentzd2classzd2;
   obj_t BgL_declarationsz00;
   obj_t BgL_fieldsz00;
   obj_t BgL_methodsz00;
   obj_t BgL_currentzd2methodzd2;
   obj_t BgL_codez00;
} *BgL_jvmz00_bglt;

typedef struct BgL_dotnetz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_languagez00;
   obj_t BgL_namez00;
   obj_t BgL_externzd2variableszd2;
   obj_t BgL_externzd2functionszd2;
   obj_t BgL_externzd2typeszd2;
   obj_t BgL_variablesz00;
   obj_t BgL_functionsz00;
   obj_t BgL_typesz00;
   obj_t BgL_outz00;
   obj_t BgL_qnamez00;
} *BgL_dotnetz00_bglt;

typedef struct BgL_indexedz00_bgl {
   int BgL_indexz00;
} *BgL_indexedz00_bglt;


BGL_IMPORT obj_t BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
static obj_t BGl_methodzd2initzd2zzsaw_jvm_funcallz00();
static obj_t BGl_namez00zzsaw_jvm_funcallz00(long);
BGL_IMPORT obj_t open_input_string(obj_t);
static obj_t BGl__fillzd2indexedz12zc0zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t);
BGL_IMPORT long BGl_classzd2numzd2zz__objectz00(obj_t);
static obj_t BGl_zc3anonymousza33746ze3z83zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_openzd2libzd2methodz00zzsaw_jvm_outz00(BgL_jvmz00_bglt, obj_t);
static obj_t BGl__wideningzd2indexedzd2zzsaw_jvm_funcallz00(obj_t, obj_t);
static obj_t BGl_compilezd2dispatchzd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt, obj_t, obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_objectzd2ze3structz31zz__objectz00(BgL_objectz00_bglt);
extern obj_t BGl_codez12z12zzsaw_jvm_outz00(BgL_jvmz00_bglt, obj_t);
BGL_IMPORT obj_t BGl_registerzd2classz12zc0zz__objectz00(obj_t, obj_t, obj_t, obj_t, long, obj_t, obj_t, obj_t);
static obj_t BGl_structzb2objectzd2ze3objectzd2indexed3403z51zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_gensymz00zz__r4_symbols_6_4z00;
extern obj_t BGl_globalz00zzast_varz00;
BGL_EXPORTED_DECL obj_t BGl_modulezd2funcallzf2applyz20zzsaw_jvm_funcallz00(BgL_jvmz00_bglt);
static obj_t BGl__allocatezd2indexedzd2zzsaw_jvm_funcallz00(obj_t);
BGL_IMPORT obj_t BGl_everyz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
static obj_t BGl_cnstzd2initzd2zzsaw_jvm_funcallz00();
extern obj_t BGl_getzd2procedureszd2zzsaw_proceduresz00(obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zzsaw_jvm_funcallz00();
BGL_IMPORT obj_t make_struct(obj_t, int, obj_t);
BGL_IMPORT obj_t BGl_addzd2methodz12zc0zz__objectz00(obj_t, obj_t, obj_t);
extern obj_t BGl_closezd2methodzd2zzsaw_jvm_outz00(BgL_jvmz00_bglt);
static obj_t BGl_compilezd2forzd2applyz00zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t);
static obj_t BGl_compilezd2funizd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt, long, obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_2zb2zb2zz__r4_numbers_6_5z00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_2zd2zd2zz__r4_numbers_6_5z00(obj_t, obj_t);
extern BgL_globalz00_bglt BGl_globalzd2entryzd2zzbackend_cplibz00(BgL_globalz00_bglt);
BGL_IMPORT bool_t BGl_2zd3zd3zz__r4_numbers_6_5z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzsaw_jvm_funcallz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_nodez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_classz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzobject_slotsz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzbackend_backendz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzbackend_libz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzbackend_cplibz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzsaw_proceduresz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzsaw_jvm_outz00(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_booleans_6_1z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(long, char *);
BGL_EXPORTED_DECL BgL_indexedz00_bglt BGl_makezd2indexedzd2zzsaw_jvm_funcallz00(obj_t, obj_t, BgL_typez00_bglt, BgL_valuez00_bglt, obj_t, obj_t, obj_t, long, obj_t, obj_t, bool_t, bool_t, bool_t, obj_t, obj_t, obj_t, int);
static obj_t BGl_getzd2labsz72za0zzsaw_jvm_funcallz00(long, obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_indexedzf3zf3zzsaw_jvm_funcallz00(obj_t);
BGL_EXPORTED_DECL BgL_indexedz00_bglt BGl_wideningzd2indexedzd2zzsaw_jvm_funcallz00(int);
BGL_IMPORT bool_t BGl_2ze3zd3z30zz__r4_numbers_6_5z00(obj_t, obj_t);
BGL_IMPORT obj_t string_to_symbol(char *);
static obj_t BGl_compilezd2applyzd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt, obj_t);
extern obj_t BGl_callzd2globalzd2zzsaw_jvm_outz00(BgL_jvmz00_bglt, BgL_globalz00_bglt);
BGL_IMPORT obj_t string_append(obj_t, obj_t);
BGL_IMPORT obj_t BGl_forzd2eachzd2zz__r4_control_features_6_9z00(obj_t, obj_t);
BGL_IMPORT BgL_objectz00_bglt BGl_structzb2objectzd2ze3objectz83zz__objectz00(BgL_objectz00_bglt, obj_t);
extern BgL_globalz00_bglt BGl_makezd2globalzd2zzast_varz00(obj_t, obj_t, BgL_typez00_bglt, BgL_valuez00_bglt, obj_t, obj_t, obj_t, long, obj_t, obj_t, bool_t, bool_t, bool_t, obj_t, obj_t, obj_t);
static obj_t BGl__makezd2indexedzd2zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_IMPORT obj_t BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(long, obj_t);
BGL_EXPORTED_DEF obj_t BGl_indexedz00zzsaw_jvm_funcallz00 = BUNSPEC;
BGL_EXPORTED_DECL BgL_globalz00_bglt BGl_allocatezd2indexedzd2zzsaw_jvm_funcallz00();
extern obj_t BGl_labelz00zzsaw_jvm_outz00(BgL_jvmz00_bglt, obj_t);
extern obj_t BGl_declarezd2globalzd2zzsaw_jvm_outz00(BgL_jvmz00_bglt, BgL_globalz00_bglt);
static bool_t BGl_neededzf3zf3zzsaw_jvm_funcallz00(long, obj_t);
static obj_t BGl__indexedzf3zf3zzsaw_jvm_funcallz00(obj_t, obj_t);
extern obj_t BGl_declarezd2localszd2zzsaw_jvm_outz00(BgL_jvmz00_bglt, obj_t, obj_t);
extern obj_t BGl_globalzd2arityzd2zzbackend_cplibz00(BgL_globalz00_bglt);
static obj_t BGl_objectzd2initzd2zzsaw_jvm_funcallz00();
static obj_t BGl_compilezd2forzd2funcalliz00zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_requirezd2initializa7ationz75zzsaw_jvm_funcallz00 = BUNSPEC;
BGL_EXPORTED_DECL BgL_indexedz00_bglt BGl_fillzd2indexedz12zc0zzsaw_jvm_funcallz00(BgL_indexedz00_bglt, int);
static obj_t BGl_getzd2labszd2zzsaw_jvm_funcallz00(long, obj_t, obj_t);
static obj_t BGl_zc3anonymousza33584ze3z83zzsaw_jvm_funcallz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzsaw_jvm_funcallz00();
static obj_t BGl__modulezd2funcallzf2apply4297z20zzsaw_jvm_funcallz00(obj_t, obj_t);
static obj_t BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_jvmz00_bglt, long, obj_t);
static obj_t BGl_objectzd2ze3structzd2indexed3400ze3zzsaw_jvm_funcallz00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_findzd2superzd2classzd2methodzd2zz__objectz00(BgL_objectz00_bglt, obj_t, obj_t);
static obj_t __cnst[ 23 ] ;


DEFINE_EXPORT_PROCEDURE( BGl_indexedzf3zd2envz21zzsaw_jvm_funcallz00, BgL_bgl__indexedza7f3za7f3za7za7saw_jvm_funcallza7004504za7, BGl__indexedzf3zf3zzsaw_jvm_funcallz00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_fillzd2indexedz12zd2envz12zzsaw_jvm_funcallz00, BgL_bgl__fillza7d2indexedza712za7c0za7za7saw_jvm_funcallza7004505z00, BGl__fillzd2indexedz12zc0zzsaw_jvm_funcallz00, 0L, 2 );
DEFINE_EXPORT_PROCEDURE( BGl_allocatezd2indexedzd2envz00zzsaw_jvm_funcallz00, BgL_bgl__allocateza7d2indexedza7d2za7za7saw_jvm_funcallza7004506za7, BGl__allocatezd2indexedzd2zzsaw_jvm_funcallz00, 0L, 0 );
BGL_IMPORT obj_t BGl_objectzd2ze3structzd2envze3zz__objectz00;
DEFINE_STATIC_PROCEDURE( BGl_proc4467z00zzsaw_jvm_funcallz00, BgL_bgl_objectza7d2za7e3structza7d2indexed3400za7e3za7za7saw_jvm_funcallza7004507za7, BGl_objectzd2ze3structzd2indexed3400ze3zzsaw_jvm_funcallz00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4468z00zzsaw_jvm_funcallz00, BgL_bgl_structza7b2objectza7d2za7e3objectza7d2indexed3403za751za7za7saw_jvm_funcallza7004508z00, BGl_structzb2objectzd2ze3objectzd2indexed3403z51zzsaw_jvm_funcallz00, 0L, 2 );
DEFINE_STRING( BGl_string4469z00zzsaw_jvm_funcallz00, BgL_bgl_string4469za700za7za7saw_jvm_funcallza7004509z00, "indexed (astore l) (dup) (getfield cdr) (getfield car) (checkcast pair) (invokespecial papply) (aload l) (this l) apply (getstatic *nil*) putstatic getstatic (pop) (invokestatic cons) (areturn) invokespecial err tableswitch (getfield procindex) (aload this) aload this ", 269 );
DEFINE_STRING( BGl_string4466z00zzsaw_jvm_funcallz00, BgL_bgl_string4466za700za7za7saw_jvm_funcallza7004510z00, "L", 1 );
DEFINE_STRING( BGl_string4465z00zzsaw_jvm_funcallz00, BgL_bgl_string4465za700za7za7saw_jvm_funcallza7004511z00, "p", 1 );
DEFINE_STRING( BGl_string4464z00zzsaw_jvm_funcallz00, BgL_bgl_string4464za700za7za7saw_jvm_funcallza7004512z00, "funcall", 7 );
BGL_IMPORT obj_t BGl_notzd2envzd2zz__r4_booleans_6_1z00;
DEFINE_EXPORT_PROCEDURE( BGl_wideningzd2indexedzd2envz00zzsaw_jvm_funcallz00, BgL_bgl__wideningza7d2indexedza7d2za7za7saw_jvm_funcallza7004513za7, BGl__wideningzd2indexedzd2zzsaw_jvm_funcallz00, 0L, 1 );
DEFINE_EXPORT_PROCEDURE( BGl_makezd2indexedzd2envz00zzsaw_jvm_funcallz00, BgL_bgl__makeza7d2indexedza7d2za7za7saw_jvm_funcallza7004514za7, BGl__makezd2indexedzd2zzsaw_jvm_funcallz00, 0L, 17 );
DEFINE_EXPORT_PROCEDURE( BGl_modulezd2funcallzf2applyzd2envzf2zzsaw_jvm_funcallz00, BgL_bgl__moduleza7d2funcallza7f2apply4297za720za7za7saw_jvm_funcallza7004515z00, BGl__modulezd2funcallzf2apply4297z20zzsaw_jvm_funcallz00, 0L, 1 );
BGL_IMPORT obj_t BGl_structzb2objectzd2ze3objectzd2envz51zz__objectz00;



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzsaw_jvm_funcallz00(long BgL_checksumz00_1803, char * BgL_fromz00_1804)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzsaw_jvm_funcallz00))
{ 
BGl_requirezd2initializa7ationz75zzsaw_jvm_funcallz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzsaw_jvm_funcallz00(); 
BGl_cnstzd2initzd2zzsaw_jvm_funcallz00(); 
BGl_importedzd2moduleszd2initz00zzsaw_jvm_funcallz00(); 
BGl_objectzd2initzd2zzsaw_jvm_funcallz00(); 
BGl_methodzd2initzd2zzsaw_jvm_funcallz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 1 */
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5z00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__r4_booleans_6_1z00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__r4_control_features_6_9z00(((long)0), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zz__r4_numbers_6_5_fixnumz00(((long)0), "saw_jvm_funcall"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 1 */
{ /* ./SawJvm/funcall.scm 1 */
obj_t BgL_cportz00_1777;
BgL_cportz00_1777 = 
open_input_string(BGl_string4469z00zzsaw_jvm_funcallz00); 
{ 
long BgL_iz00_1778;
BgL_iz00_1778 = ((long)22); 
BgL_loopz00_1779:
{ /* ./SawJvm/funcall.scm 1 */
bool_t BgL_test4471z00_1780;
BgL_test4471z00_1780 = 
(BgL_iz00_1778==((long)-1)); 
if(BgL_test4471z00_1780)
{ /* ./SawJvm/funcall.scm 1 */
return BUNSPEC;}  else 
{ /* ./SawJvm/funcall.scm 1 */
{ /* ./SawJvm/funcall.scm 1 */
obj_t BgL_arg4474z00_1781;
{ /* ./SawJvm/funcall.scm 1 */
obj_t BgL_list4477z00_1782;
BgL_list4477z00_1782 = 
MAKE_PAIR(BgL_cportz00_1777, BNIL); 
BgL_arg4474z00_1781 = 
BGl_readz00zz__readerz00(BgL_list4477z00_1782); } 
{ /* ./SawJvm/funcall.scm 1 */
int BgL_auxz00_1826;
BgL_auxz00_1826 = 
(int)(BgL_iz00_1778); 
CNST_TABLE_SET(BgL_auxz00_1826, BgL_arg4474z00_1781); } } 
{ /* ./SawJvm/funcall.scm 1 */
int BgL_auxz00_1783;
{ /* ./SawJvm/funcall.scm 1 */
long BgL_auxz00_1829;
BgL_auxz00_1829 = 
(BgL_iz00_1778-((long)1)); 
BgL_auxz00_1783 = 
(int)(BgL_auxz00_1829); } 
{ 
long BgL_iz00_1832;
BgL_iz00_1832 = 
(long)(BgL_auxz00_1783); 
BgL_iz00_1778 = BgL_iz00_1832; 
goto BgL_loopz00_1779;} } } } } } } 
}



/* module-funcall/apply */
BGL_EXPORTED_DEF obj_t BGl_modulezd2funcallzf2applyz20zzsaw_jvm_funcallz00(BgL_jvmz00_bglt BgL_mez00_1)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 19 */
{ /* ./SawJvm/funcall.scm 20 */
obj_t BgL_pz00_897;
{ /* ./SawJvm/funcall.scm 20 */
obj_t BgL_arg3433z00_909;
{ /* ./SawJvm/funcall.scm 20 */
obj_t BgL_arg3436z00_910;
{ /* ./SawJvm/funcall.scm 20 */
BgL_backendz00_bglt BgL_obj2989z00_1584;
BgL_obj2989z00_1584 = 
(BgL_backendz00_bglt)(BgL_mez00_1); 
BgL_arg3436z00_910 = 
(((BgL_backendz00_bglt)CREF(BgL_obj2989z00_1584))->BgL_functionsz00); } 
BgL_arg3433z00_909 = 
BGl_getzd2procedureszd2zzsaw_proceduresz00(BgL_arg3436z00_910); } 
BgL_pz00_897 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BgL_arg3433z00_909); } 
{ /* ./SawJvm/funcall.scm 22 */
long BgL_nz00_898;
BgL_nz00_898 = ((long)0); 
{ 
obj_t BgL_l3379z00_899;
BgL_l3379z00_899 = BgL_pz00_897; 
BgL_forzd2each3380zd2_900:
{ /* ./SawJvm/funcall.scm 23 */
bool_t BgL_test3405z00_901;
BgL_test3405z00_901 = 
PAIRP(BgL_l3379z00_899); 
if(BgL_test3405z00_901)
{ /* ./SawJvm/funcall.scm 23 */
{ /* ./SawJvm/funcall.scm 24 */
obj_t BgL_varz00_902;
BgL_varz00_902 = 
CAR(BgL_l3379z00_899); 
{ /* ./SawJvm/funcall.scm 24 */
BgL_globalz00_bglt BgL_obj3381z00_903;
{ 
BgL_globalz00_bglt BgL_auxz00_1841;
BgL_auxz00_1841 = 
(BgL_globalz00_bglt)(BgL_varz00_902); 
BgL_obj3381z00_903 = 
((BgL_globalz00_bglt)BgL_auxz00_1841); } 
{ /* ./SawJvm/funcall.scm 24 */
BgL_indexedz00_bglt BgL_arg3407z00_904;
{ /* ./SawJvm/funcall.scm 24 */
long BgL_arg3410z00_905;
BgL_arg3410z00_905 = BgL_nz00_898; 
{ /* ./SawJvm/funcall.scm 24 */
BgL_indexedz00_bglt BgL_res4290z00_1593;
{ /* ./SawJvm/funcall.scm 24 */
int BgL_index3295z00_1587;
BgL_index3295z00_1587 = 
(int)(BgL_arg3410z00_905); 
{ /* ./SawJvm/funcall.scm 24 */
BgL_indexedz00_bglt BgL_new3296z00_1588;
BgL_new3296z00_1588 = 
((BgL_indexedz00_bglt)BREF( GC_MALLOC (sizeof(struct BgL_indexedz00_bgl)))); 
{ /* ./SawJvm/funcall.scm 24 */
BgL_indexedz00_bglt BgL_res4289z00_1592;
{ /* ./SawJvm/funcall.scm 24 */
BgL_indexedz00_bglt BgL_new3318z00_1589;
BgL_new3318z00_1589 = BgL_new3296z00_1588; 
{ /* ./SawJvm/funcall.scm 24 */
int BgL_index3317z00_1591;
BgL_index3317z00_1591 = BgL_index3295z00_1587; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_1589))->BgL_indexz00) = ((int)BgL_index3317z00_1591), BUNSPEC); 
BgL_res4289z00_1592 = BgL_new3318z00_1589; } } BgL_res4289z00_1592; } 
BgL_res4290z00_1593 = BgL_new3296z00_1588; } } 
BgL_arg3407z00_904 = BgL_res4290z00_1593; } } 
{ /* ./SawJvm/funcall.scm 24 */
obj_t BgL_auxz00_1849;BgL_objectz00_bglt BgL_auxz00_1847;
BgL_auxz00_1849 = 
(obj_t)(BgL_arg3407z00_904); 
BgL_auxz00_1847 = 
(BgL_objectz00_bglt)(BgL_obj3381z00_903); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_1847, BgL_auxz00_1849); } } 
{ /* ./SawJvm/funcall.scm 24 */
long BgL_arg3413z00_906;
BgL_arg3413z00_906 = 
BGl_classzd2numzd2zz__objectz00(BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 24 */
BgL_objectz00_bglt BgL_objz00_1594;
BgL_objz00_1594 = 
(BgL_objectz00_bglt)(BgL_obj3381z00_903); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_1594, BgL_arg3413z00_906); } } 
{ /* ./SawJvm/funcall.scm 24 */
obj_t BgL_objz00_1596;
BgL_objz00_1596 = 
(obj_t)(BgL_obj3381z00_903); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_1596); BUNSPEC; } BgL_obj3381z00_903; } 
{ /* ./SawJvm/funcall.scm 25 */
long BgL_za71za7_1597;
BgL_za71za7_1597 = BgL_nz00_898; 
BgL_nz00_898 = 
(BgL_za71za7_1597+((long)1)); } } 
{ /* ./SawJvm/funcall.scm 23 */
obj_t BgL_arg3420z00_907;
BgL_arg3420z00_907 = 
CDR(BgL_l3379z00_899); 
{ 
obj_t BgL_l3379z00_1859;
BgL_l3379z00_1859 = BgL_arg3420z00_907; 
BgL_l3379z00_899 = BgL_l3379z00_1859; 
goto BgL_forzd2each3380zd2_900;} } }  else 
{ /* ./SawJvm/funcall.scm 23 */((bool_t)1); } } } } 
{ /* ./SawJvm/funcall.scm 27 */
bool_t BgL_test3424z00_908;
BgL_test3424z00_908 = 
NULLP(BgL_pz00_897); 
if(BgL_test3424z00_908)
{ /* ./SawJvm/funcall.scm 27 */
return BFALSE;}  else 
{ /* ./SawJvm/funcall.scm 27 */
BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1, ((long)0), BgL_pz00_897); 
BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1, ((long)1), BgL_pz00_897); 
BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1, ((long)2), BgL_pz00_897); 
BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1, ((long)3), BgL_pz00_897); 
BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1, ((long)4), BgL_pz00_897); 
return 
BGl_compilezd2applyzd2zzsaw_jvm_funcallz00(BgL_mez00_1, BgL_pz00_897);} } } } 
}



/* _module-funcall/apply4297 */
obj_t BGl__modulezd2funcallzf2apply4297z20zzsaw_jvm_funcallz00(obj_t BgL_envz00_1721, obj_t BgL_mez00_1722)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 19 */
return 
BGl_modulezd2funcallzf2applyz20zzsaw_jvm_funcallz00(
(BgL_jvmz00_bglt)(BgL_mez00_1722));} 
}



/* funcalli */
obj_t BGl_funcalliz00zzsaw_jvm_funcallz00(BgL_jvmz00_bglt BgL_mez00_5, long BgL_iz00_6, obj_t BgL_procsz00_7)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 44 */
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_needz00_917;
{ /* ./SawJvm/funcall.scm 52 */
bool_t BgL_test3487z00_937;
BgL_test3487z00_937 = 
NULLP(BgL_procsz00_7); 
if(BgL_test3487z00_937)
{ /* ./SawJvm/funcall.scm 52 */
BgL_needz00_917 = BNIL; }  else 
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_head3387z00_938;
{ /* ./SawJvm/funcall.scm 52 */
bool_t BgL_arg3508z00_949;
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_arg3512z00_951;
BgL_arg3512z00_951 = 
CAR(BgL_procsz00_7); 
BgL_arg3508z00_949 = 
BGl_neededzf3zf3zzsaw_jvm_funcallz00(BgL_iz00_6, BgL_arg3512z00_951); } 
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_obj1z00_1603;
BgL_obj1z00_1603 = 
BBOOL(BgL_arg3508z00_949); 
BgL_head3387z00_938 = 
MAKE_PAIR(BgL_obj1z00_1603, BNIL); } } 
{ 
obj_t BgL_l3385z00_939;obj_t BgL_tail3388z00_940;
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_arg3489z00_942;
BgL_arg3489z00_942 = 
CDR(BgL_procsz00_7); 
BgL_l3385z00_939 = BgL_arg3489z00_942; 
BgL_tail3388z00_940 = BgL_head3387z00_938; 
BgL_map3386z00_941:
{ /* ./SawJvm/funcall.scm 52 */
bool_t BgL_test3492z00_943;
BgL_test3492z00_943 = 
NULLP(BgL_l3385z00_939); 
if(BgL_test3492z00_943)
{ /* ./SawJvm/funcall.scm 52 */
BgL_needz00_917 = BgL_head3387z00_938; }  else 
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_newtail3389z00_944;
{ /* ./SawJvm/funcall.scm 52 */
bool_t BgL_arg3499z00_946;
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_arg3503z00_948;
BgL_arg3503z00_948 = 
CAR(BgL_l3385z00_939); 
BgL_arg3499z00_946 = 
BGl_neededzf3zf3zzsaw_jvm_funcallz00(BgL_iz00_6, BgL_arg3503z00_948); } 
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_obj1z00_1608;
BgL_obj1z00_1608 = 
BBOOL(BgL_arg3499z00_946); 
BgL_newtail3389z00_944 = 
MAKE_PAIR(BgL_obj1z00_1608, BNIL); } } 
SET_CDR(BgL_tail3388z00_940, BgL_newtail3389z00_944); 
{ /* ./SawJvm/funcall.scm 52 */
obj_t BgL_arg3495z00_945;
BgL_arg3495z00_945 = 
CDR(BgL_l3385z00_939); 
{ 
obj_t BgL_tail3388z00_1886;obj_t BgL_l3385z00_1885;
BgL_l3385z00_1885 = BgL_arg3495z00_945; 
BgL_tail3388z00_1886 = BgL_newtail3389z00_944; 
BgL_tail3388z00_940 = BgL_tail3388z00_1886; 
BgL_l3385z00_939 = BgL_l3385z00_1885; 
goto BgL_map3386z00_941;} } } } } } } } 
{ /* ./SawJvm/funcall.scm 53 */
bool_t BgL_test3447z00_918;
{ /* ./SawJvm/funcall.scm 53 */
obj_t BgL_list3485z00_935;
BgL_list3485z00_935 = 
MAKE_PAIR(BgL_needz00_917, BNIL); 
{ /* ./SawJvm/funcall.scm 53 */
obj_t BgL_auxz00_1888;
BgL_auxz00_1888 = 
BGl_everyz00zz__r4_pairs_and_lists_6_3z00(BGl_notzd2envzd2zz__r4_booleans_6_1z00, BgL_list3485z00_935); 
BgL_test3447z00_918 = 
CBOOL(BgL_auxz00_1888); } } 
if(BgL_test3447z00_918)
{ /* ./SawJvm/funcall.scm 53 */
return BFALSE;}  else 
{ /* ./SawJvm/funcall.scm 54 */
obj_t BgL_fnamez00_919;
{ /* ./SawJvm/funcall.scm 54 */
obj_t BgL_arg3480z00_933;
BgL_arg3480z00_933 = 
BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(BgL_iz00_6, BNIL); 
BgL_fnamez00_919 = 
string_append(BGl_string4464z00zzsaw_jvm_funcallz00, BgL_arg3480z00_933); } 
{ /* ./SawJvm/funcall.scm 54 */
obj_t BgL_pz00_920;
{ /* ./SawJvm/funcall.scm 55 */
obj_t BgL_arg3474z00_930;obj_t BgL_arg3475z00_931;
BgL_arg3474z00_930 = 
CNST_TABLE_REF(((long)0)); 
BgL_arg3475z00_931 = 
BGl_namez00zzsaw_jvm_funcallz00(BgL_iz00_6); 
BgL_pz00_920 = 
MAKE_PAIR(BgL_arg3474z00_930, BgL_arg3475z00_931); } 
{ /* ./SawJvm/funcall.scm 55 */

{ /* ./SawJvm/funcall.scm 56 */
obj_t BgL_arg3449z00_921;
{ /* ./SawJvm/funcall.scm 56 */
char * BgL_auxz00_1897;
BgL_auxz00_1897 = 
BSTRING_TO_STRING(BgL_fnamez00_919); 
BgL_arg3449z00_921 = 
string_to_symbol(BgL_auxz00_1897); } 
BGl_openzd2libzd2methodz00zzsaw_jvm_outz00(BgL_mez00_5, BgL_arg3449z00_921); } 
BGl_declarezd2localszd2zzsaw_jvm_outz00(BgL_mez00_5, BgL_pz00_920, BNIL); 
{ 
obj_t BgL_l3390z00_922;
BgL_l3390z00_922 = BgL_pz00_920; 
BgL_forzd2each3391zd2_923:
{ /* ./SawJvm/funcall.scm 58 */
bool_t BgL_test3454z00_924;
BgL_test3454z00_924 = 
PAIRP(BgL_l3390z00_922); 
if(BgL_test3454z00_924)
{ /* ./SawJvm/funcall.scm 58 */
{ /* ./SawJvm/funcall.scm 58 */
obj_t BgL_vz00_925;
BgL_vz00_925 = 
CAR(BgL_l3390z00_922); 
{ /* ./SawJvm/funcall.scm 58 */
obj_t BgL_arg3456z00_926;
{ /* ./SawJvm/funcall.scm 58 */
obj_t BgL_arg3459z00_927;obj_t BgL_arg3460z00_928;
BgL_arg3459z00_927 = 
CNST_TABLE_REF(((long)1)); 
BgL_arg3460z00_928 = 
MAKE_PAIR(BgL_vz00_925, BNIL); 
BgL_arg3456z00_926 = 
MAKE_PAIR(BgL_arg3459z00_927, BgL_arg3460z00_928); } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_5, BgL_arg3456z00_926); } } 
{ /* ./SawJvm/funcall.scm 58 */
obj_t BgL_arg3465z00_929;
BgL_arg3465z00_929 = 
CDR(BgL_l3390z00_922); 
{ 
obj_t BgL_l3390z00_1910;
BgL_l3390z00_1910 = BgL_arg3465z00_929; 
BgL_l3390z00_922 = BgL_l3390z00_1910; 
goto BgL_forzd2each3391zd2_923;} } }  else 
{ /* ./SawJvm/funcall.scm 58 */((bool_t)1); } } } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_5, 
CNST_TABLE_REF(((long)2))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_5, 
CNST_TABLE_REF(((long)3))); 
BGl_compilezd2funizd2zzsaw_jvm_funcallz00(BgL_mez00_5, BgL_iz00_6, BgL_needz00_917, BgL_procsz00_7, BgL_fnamez00_919); 
return 
BGl_closezd2methodzd2zzsaw_jvm_outz00(BgL_mez00_5);} } } } } } 
}



/* needed? */
bool_t BGl_neededzf3zf3zzsaw_jvm_funcallz00(long BgL_iz00_1776, obj_t BgL_pz00_958)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 50 */
{ /* ./SawJvm/funcall.scm 46 */
obj_t BgL_arityz00_960;
BgL_arityz00_960 = 
BGl_globalzd2arityzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_958)); 
if(
CBOOL(BgL_arityz00_960))
{ /* ./SawJvm/funcall.scm 48 */
bool_t BgL__ortest_3382z00_961;
{ /* ./SawJvm/funcall.scm 48 */
bool_t BgL_testz00_1921;
{ /* ./SawJvm/funcall.scm 48 */
long BgL_auxz00_1922;
BgL_auxz00_1922 = 
(long)CINT(BgL_arityz00_960); 
BgL_testz00_1921 = 
(BgL_auxz00_1922>=((long)0)); } 
if(BgL_testz00_1921)
{ /* ./SawJvm/funcall.scm 48 */
long BgL_auxz00_1925;
BgL_auxz00_1925 = 
(long)CINT(BgL_arityz00_960); 
BgL__ortest_3382z00_961 = 
(BgL_auxz00_1925==BgL_iz00_1776); }  else 
{ /* ./SawJvm/funcall.scm 48 */
BgL__ortest_3382z00_961 = ((bool_t)0); } } 
if(BgL__ortest_3382z00_961)
{ /* ./SawJvm/funcall.scm 49 */
return BgL__ortest_3382z00_961;}  else 
{ /* ./SawJvm/funcall.scm 49 */
bool_t BgL_testz00_1929;
{ /* ./SawJvm/funcall.scm 49 */
long BgL_auxz00_1930;
BgL_auxz00_1930 = 
(long)CINT(BgL_arityz00_960); 
BgL_testz00_1929 = 
(BgL_auxz00_1930<((long)0)); } 
if(BgL_testz00_1929)
{ /* ./SawJvm/funcall.scm 49 */
obj_t BgL_auxz00_1933;
{ /* ./SawJvm/funcall.scm 49 */
long BgL_auxz00_1934;
BgL_auxz00_1934 = 
(((long)-1)-BgL_iz00_1776); 
BgL_auxz00_1933 = 
BINT(BgL_auxz00_1934); } 
return 
BGl_2ze3zd3z30zz__r4_numbers_6_5z00(BgL_arityz00_960, BgL_auxz00_1933);}  else 
{ /* ./SawJvm/funcall.scm 49 */
return ((bool_t)0);} } }  else 
{ /* ./SawJvm/funcall.scm 47 */
return 
(BgL_iz00_1776<=((long)1));} } } 
}



/* name */
obj_t BGl_namez00zzsaw_jvm_funcallz00(long BgL_nz00_952)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 51 */
{ /* ./SawJvm/funcall.scm 51 */
bool_t BgL_test3517z00_954;
BgL_test3517z00_954 = 
(BgL_nz00_952==((long)0)); 
if(BgL_test3517z00_954)
{ /* ./SawJvm/funcall.scm 51 */
return BNIL;}  else 
{ /* ./SawJvm/funcall.scm 51 */
obj_t BgL_arg3520z00_955;obj_t BgL_arg3521z00_956;
BgL_arg3520z00_955 = 
PROCEDURE_ENTRY(BGl_gensymz00zz__r4_symbols_6_4z00)(BGl_gensymz00zz__r4_symbols_6_4z00, BEOA); 
{ /* ./SawJvm/funcall.scm 51 */
long BgL_arg3525z00_957;
BgL_arg3525z00_957 = 
(BgL_nz00_952-((long)1)); 
BgL_arg3521z00_956 = 
BGl_namez00zzsaw_jvm_funcallz00(BgL_arg3525z00_957); } 
return 
MAKE_PAIR(BgL_arg3520z00_955, BgL_arg3521z00_956);} } } 
}



/* compile-funi */
obj_t BGl_compilezd2funizd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt BgL_mez00_8, long BgL_iz00_9, obj_t BgL_needz00_10, obj_t BgL_procsz00_11, obj_t BgL_fnamez00_12)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 64 */
{ /* ./SawJvm/funcall.scm 71 */
obj_t BgL_labsz00_969;
BgL_labsz00_969 = 
BGl_getzd2labsz72za0zzsaw_jvm_funcallz00(((long)0), BgL_needz00_10, BgL_procsz00_11); 
{ /* ./SawJvm/funcall.scm 72 */
obj_t BgL_arg3541z00_970;
{ /* ./SawJvm/funcall.scm 72 */
obj_t BgL_arg3544z00_971;obj_t BgL_arg3545z00_972;
BgL_arg3544z00_971 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./SawJvm/funcall.scm 72 */
obj_t BgL_arg3548z00_973;obj_t BgL_arg3549z00_974;
BgL_arg3548z00_973 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./SawJvm/funcall.scm 72 */
obj_t BgL_arg3553z00_976;
BgL_arg3553z00_976 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_labsz00_969, BNIL); 
{ /* ./SawJvm/funcall.scm 72 */
obj_t BgL_auxz00_1950;
BgL_auxz00_1950 = 
BINT(((long)0)); 
BgL_arg3549z00_974 = 
MAKE_PAIR(BgL_auxz00_1950, BgL_arg3553z00_976); } } 
BgL_arg3545z00_972 = 
MAKE_PAIR(BgL_arg3548z00_973, BgL_arg3549z00_974); } 
BgL_arg3541z00_970 = 
MAKE_PAIR(BgL_arg3544z00_971, BgL_arg3545z00_972); } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_8, BgL_arg3541z00_970); } 
BGl_labelz00zzsaw_jvm_outz00(BgL_mez00_8, 
CNST_TABLE_REF(((long)5))); 
{ /* ./SawJvm/funcall.scm 74 */
obj_t BgL_arg3558z00_977;
{ /* ./SawJvm/funcall.scm 74 */
obj_t BgL_arg3561z00_978;obj_t BgL_arg3562z00_979;
BgL_arg3561z00_978 = 
CNST_TABLE_REF(((long)6)); 
{ /* ./SawJvm/funcall.scm 74 */
obj_t BgL_arg3565z00_980;
{ /* ./SawJvm/funcall.scm 74 */
obj_t BgL_arg3569z00_982;
BgL_arg3569z00_982 = 
string_append(BGl_string4465z00zzsaw_jvm_funcallz00, BgL_fnamez00_12); 
{ /* ./SawJvm/funcall.scm 74 */
char * BgL_auxz00_1960;
BgL_auxz00_1960 = 
BSTRING_TO_STRING(BgL_arg3569z00_982); 
BgL_arg3565z00_980 = 
string_to_symbol(BgL_auxz00_1960); } } 
BgL_arg3562z00_979 = 
MAKE_PAIR(BgL_arg3565z00_980, BNIL); } 
BgL_arg3558z00_977 = 
MAKE_PAIR(BgL_arg3561z00_978, BgL_arg3562z00_979); } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_8, BgL_arg3558z00_977); } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_8, 
CNST_TABLE_REF(((long)7))); 
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_zc3anonymousza33584ze3z83_1725;
{ 
int BgL_auxz00_1970;int BgL_auxz00_1968;
BgL_auxz00_1970 = 
(int)(((long)2)); 
BgL_auxz00_1968 = 
(int)(((long)3)); 
BgL_zc3anonymousza33584ze3z83_1725 = 
make_fx_procedure(BGl_zc3anonymousza33584ze3z83zzsaw_jvm_funcallz00, BgL_auxz00_1968, BgL_auxz00_1970); } 
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_auxz00_1975;int BgL_auxz00_1973;
BgL_auxz00_1975 = 
(obj_t)(BgL_mez00_8); 
BgL_auxz00_1973 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza33584ze3z83_1725, BgL_auxz00_1973, BgL_auxz00_1975); } 
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_auxz00_1980;int BgL_auxz00_1978;
BgL_auxz00_1980 = 
BINT(BgL_iz00_9); 
BgL_auxz00_1978 = 
(int)(((long)1)); 
PROCEDURE_SET(BgL_zc3anonymousza33584ze3z83_1725, BgL_auxz00_1978, BgL_auxz00_1980); } 
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_list3576z00_984;
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_arg3578z00_985;
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_arg3581z00_986;
BgL_arg3581z00_986 = 
MAKE_PAIR(BgL_procsz00_11, BNIL); 
BgL_arg3578z00_985 = 
MAKE_PAIR(BgL_labsz00_969, BgL_arg3581z00_986); } 
BgL_list3576z00_984 = 
MAKE_PAIR(BgL_needz00_10, BgL_arg3578z00_985); } 
return 
BGl_forzd2eachzd2zz__r4_control_features_6_9z00(BgL_zc3anonymousza33584ze3z83_1725, BgL_list3576z00_984);} } } } 
}



/* get-labs' */
obj_t BGl_getzd2labsz72za0zzsaw_jvm_funcallz00(long BgL_iz00_992, obj_t BgL_nsz00_993, obj_t BgL_psz00_994)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 70 */
{ 
long BgL_nz00_1003;
{ /* ./SawJvm/funcall.scm 67 */
bool_t BgL_test3588z00_996;
BgL_test3588z00_996 = 
NULLP(BgL_nsz00_993); 
if(BgL_test3588z00_996)
{ /* ./SawJvm/funcall.scm 67 */
return BNIL;}  else 
{ /* ./SawJvm/funcall.scm 69 */
obj_t BgL_arg3590z00_997;obj_t BgL_arg3591z00_998;
{ /* ./SawJvm/funcall.scm 69 */
bool_t BgL_test3593z00_999;
{ /* ./SawJvm/funcall.scm 69 */
obj_t BgL_auxz00_1989;
BgL_auxz00_1989 = 
CAR(BgL_nsz00_993); 
BgL_test3593z00_999 = 
CBOOL(BgL_auxz00_1989); } 
if(BgL_test3593z00_999)
{ /* ./SawJvm/funcall.scm 69 */
BgL_nz00_1003 = BgL_iz00_992; 
{ /* ./SawJvm/funcall.scm 65 */
obj_t BgL_arg3607z00_1005;
{ /* ./SawJvm/funcall.scm 65 */
obj_t BgL_arg3611z00_1007;
BgL_arg3611z00_1007 = 
BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(BgL_nz00_1003, BNIL); 
BgL_arg3607z00_1005 = 
string_append(BGl_string4466z00zzsaw_jvm_funcallz00, BgL_arg3611z00_1007); } 
{ /* ./SawJvm/funcall.scm 65 */
char * BgL_auxz00_1995;
BgL_auxz00_1995 = 
BSTRING_TO_STRING(BgL_arg3607z00_1005); 
BgL_arg3590z00_997 = 
string_to_symbol(BgL_auxz00_1995); } } }  else 
{ /* ./SawJvm/funcall.scm 69 */
BgL_arg3590z00_997 = 
CNST_TABLE_REF(((long)5)); } } 
{ /* ./SawJvm/funcall.scm 70 */
long BgL_arg3597z00_1000;obj_t BgL_arg3598z00_1001;obj_t BgL_arg3599z00_1002;
BgL_arg3597z00_1000 = 
(BgL_iz00_992+((long)1)); 
BgL_arg3598z00_1001 = 
CDR(BgL_nsz00_993); 
BgL_arg3599z00_1002 = 
CDR(BgL_psz00_994); 
BgL_arg3591z00_998 = 
BGl_getzd2labsz72za0zzsaw_jvm_funcallz00(BgL_arg3597z00_1000, BgL_arg3598z00_1001, BgL_arg3599z00_1002); } 
return 
MAKE_PAIR(BgL_arg3590z00_997, BgL_arg3591z00_998);} } } } 
}



/* <anonymous:3584> */
obj_t BGl_zc3anonymousza33584ze3z83zzsaw_jvm_funcallz00(obj_t BgL_envz00_1726, obj_t BgL_nzf3zf3_1729, obj_t BgL_labz00_1730, obj_t BgL_pz00_1731)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 76 */
{ /* ./SawJvm/funcall.scm 76 */
obj_t BgL_mez00_1727;obj_t BgL_iz00_1728;
{ /* ./SawJvm/funcall.scm 76 */
int BgL_auxz00_2004;
BgL_auxz00_2004 = 
(int)(((long)0)); 
BgL_mez00_1727 = 
PROCEDURE_REF(BgL_envz00_1726, BgL_auxz00_2004); } 
{ /* ./SawJvm/funcall.scm 76 */
int BgL_auxz00_2007;
BgL_auxz00_2007 = 
(int)(((long)1)); 
BgL_iz00_1728 = 
PROCEDURE_REF(BgL_envz00_1726, BgL_auxz00_2007); } 
{ 
obj_t BgL_nzf3zf3_987;obj_t BgL_labz00_988;obj_t BgL_pz00_989;
BgL_nzf3zf3_987 = BgL_nzf3zf3_1729; 
BgL_labz00_988 = BgL_labz00_1730; 
BgL_pz00_989 = BgL_pz00_1731; 
if(
CBOOL(BgL_nzf3zf3_987))
{ /* ./SawJvm/funcall.scm 76 */
return 
BGl_compilezd2forzd2funcalliz00zzsaw_jvm_funcallz00(BgL_mez00_1727, BgL_iz00_1728, BgL_labz00_988, BgL_pz00_989);}  else 
{ /* ./SawJvm/funcall.scm 76 */
return BFALSE;} } } } 
}



/* compile-for-funcalli */
obj_t BGl_compilezd2forzd2funcalliz00zzsaw_jvm_funcallz00(obj_t BgL_mez00_13, obj_t BgL_iz00_14, obj_t BgL_labz00_15, obj_t BgL_pz00_16)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 82 */
{ /* ./SawJvm/funcall.scm 83 */
obj_t BgL_arityz00_1011;
BgL_arityz00_1011 = 
BGl_globalzd2arityzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_16)); 
{ 
obj_t BgL_nz00_1029;
BGl_labelz00zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), BgL_labz00_15); 
{ /* ./SawJvm/funcall.scm 91 */
bool_t BgL_test3616z00_1013;
BgL_test3616z00_1013 = 
(BgL_arityz00_1011==BFALSE); 
if(BgL_test3616z00_1013)
{ /* ./SawJvm/funcall.scm 91 */
{ /* ./SawJvm/funcall.scm 92 */
bool_t BgL_test3617z00_1014;
{ /* ./SawJvm/funcall.scm 92 */
long BgL_auxz00_2019;
BgL_auxz00_2019 = 
(long)CINT(BgL_iz00_14); 
BgL_test3617z00_1014 = 
(BgL_auxz00_2019==((long)0)); } 
if(BgL_test3617z00_1014)
{ /* ./SawJvm/funcall.scm 92 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
CNST_TABLE_REF(((long)9))); 
{ /* ./SawJvm/funcall.scm 94 */
obj_t BgL_arg3620z00_1015;
{ /* ./SawJvm/funcall.scm 94 */
obj_t BgL_arg3623z00_1016;obj_t BgL_arg3624z00_1017;
BgL_arg3623z00_1016 = 
CNST_TABLE_REF(((long)10)); 
{ /* ./SawJvm/funcall.scm 94 */
obj_t BgL_arg3627z00_1018;
BgL_arg3627z00_1018 = 
BGl_declarezd2globalzd2zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
(BgL_globalz00_bglt)(BgL_pz00_16)); 
BgL_arg3624z00_1017 = 
MAKE_PAIR(BgL_arg3627z00_1018, BNIL); } 
BgL_arg3620z00_1015 = 
MAKE_PAIR(BgL_arg3623z00_1016, BgL_arg3624z00_1017); } 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), BgL_arg3620z00_1015); } }  else 
{ /* ./SawJvm/funcall.scm 95 */
obj_t BgL_arg3632z00_1020;
{ /* ./SawJvm/funcall.scm 95 */
obj_t BgL_arg3635z00_1021;obj_t BgL_arg3636z00_1022;
BgL_arg3635z00_1021 = 
CNST_TABLE_REF(((long)11)); 
{ /* ./SawJvm/funcall.scm 95 */
obj_t BgL_arg3639z00_1023;
BgL_arg3639z00_1023 = 
BGl_declarezd2globalzd2zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
(BgL_globalz00_bglt)(BgL_pz00_16)); 
BgL_arg3636z00_1022 = 
MAKE_PAIR(BgL_arg3639z00_1023, BNIL); } 
BgL_arg3632z00_1020 = 
MAKE_PAIR(BgL_arg3635z00_1021, BgL_arg3636z00_1022); } 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), BgL_arg3632z00_1020); } } }  else 
{ /* ./SawJvm/funcall.scm 96 */
bool_t BgL_test3644z00_1025;
{ /* ./SawJvm/funcall.scm 96 */
long BgL_auxz00_2042;
BgL_auxz00_2042 = 
(long)CINT(BgL_arityz00_1011); 
BgL_test3644z00_1025 = 
(BgL_auxz00_2042>=((long)0)); } 
if(BgL_test3644z00_1025)
{ /* ./SawJvm/funcall.scm 96 */
{ /* ./SawJvm/funcall.scm 96 */
BgL_globalz00_bglt BgL_arg3646z00_1026;
BgL_arg3646z00_1026 = 
BGl_globalzd2entryzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_16)); 
BGl_callzd2globalzd2zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), BgL_arg3646z00_1026); } }  else 
{ /* ./SawJvm/funcall.scm 96 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
CNST_TABLE_REF(((long)12))); 
{ /* ./SawJvm/funcall.scm 99 */
obj_t BgL_arg3651z00_1027;
BgL_arg3651z00_1027 = 
BGl_2zb2zb2zz__r4_numbers_6_5z00(BgL_iz00_14, 
BGl_2zb2zb2zz__r4_numbers_6_5z00(
BINT(((long)1)), BgL_arityz00_1011)); 
BgL_nz00_1029 = BgL_arg3651z00_1027; 
BgL_zc3anonymousza33660ze3z83_1030:
{ /* ./SawJvm/funcall.scm 85 */
bool_t BgL_test3661z00_1031;
BgL_test3661z00_1031 = 
BGl_2zd3zd3zz__r4_numbers_6_5z00(BgL_nz00_1029, 
BINT(((long)0))); 
if(BgL_test3661z00_1031)
{ /* ./SawJvm/funcall.scm 86 */
BgL_globalz00_bglt BgL_arg3663z00_1032;
BgL_arg3663z00_1032 = 
BGl_globalzd2entryzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_16)); 
BGl_callzd2globalzd2zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), BgL_arg3663z00_1032); }  else 
{ /* ./SawJvm/funcall.scm 85 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
CNST_TABLE_REF(((long)8))); 
{ /* ./SawJvm/funcall.scm 88 */
long BgL_arg3668z00_1033;
{ /* ./SawJvm/funcall.scm 88 */
long BgL_auxz00_2066;
BgL_auxz00_2066 = 
(long)CINT(BgL_nz00_1029); 
BgL_arg3668z00_1033 = 
(BgL_auxz00_2066-((long)1)); } 
{ 
obj_t BgL_nz00_2069;
BgL_nz00_2069 = 
BINT(BgL_arg3668z00_1033); 
BgL_nz00_1029 = BgL_nz00_2069; 
goto BgL_zc3anonymousza33660ze3z83_1030;} } } } } } } } 
return 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_13), 
CNST_TABLE_REF(((long)7)));} } } 
}



/* compile-apply */
obj_t BGl_compilezd2applyzd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt BgL_mez00_17, obj_t BgL_procsz00_18)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 105 */
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_needz00_1035;
{ /* ./SawJvm/funcall.scm 106 */
bool_t BgL_test3684z00_1039;
BgL_test3684z00_1039 = 
NULLP(BgL_procsz00_18); 
if(BgL_test3684z00_1039)
{ /* ./SawJvm/funcall.scm 106 */
BgL_needz00_1035 = BNIL; }  else 
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_head3394z00_1040;
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3706z00_1051;
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3710z00_1053;
BgL_arg3710z00_1053 = 
CAR(BgL_procsz00_18); 
BgL_arg3706z00_1051 = 
BGl_globalzd2arityzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_arg3710z00_1053)); } 
BgL_head3394z00_1040 = 
MAKE_PAIR(BgL_arg3706z00_1051, BNIL); } 
{ 
obj_t BgL_l3392z00_1041;obj_t BgL_tail3395z00_1042;
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3686z00_1044;
BgL_arg3686z00_1044 = 
CDR(BgL_procsz00_18); 
BgL_l3392z00_1041 = BgL_arg3686z00_1044; 
BgL_tail3395z00_1042 = BgL_head3394z00_1040; 
BgL_map3393z00_1043:
{ /* ./SawJvm/funcall.scm 106 */
bool_t BgL_test3689z00_1045;
BgL_test3689z00_1045 = 
NULLP(BgL_l3392z00_1041); 
if(BgL_test3689z00_1045)
{ /* ./SawJvm/funcall.scm 106 */
BgL_needz00_1035 = BgL_head3394z00_1040; }  else 
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_newtail3396z00_1046;
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3697z00_1048;
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3701z00_1050;
BgL_arg3701z00_1050 = 
CAR(BgL_l3392z00_1041); 
BgL_arg3697z00_1048 = 
BGl_globalzd2arityzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_arg3701z00_1050)); } 
BgL_newtail3396z00_1046 = 
MAKE_PAIR(BgL_arg3697z00_1048, BNIL); } 
SET_CDR(BgL_tail3395z00_1042, BgL_newtail3396z00_1046); 
{ /* ./SawJvm/funcall.scm 106 */
obj_t BgL_arg3692z00_1047;
BgL_arg3692z00_1047 = 
CDR(BgL_l3392z00_1041); 
{ 
obj_t BgL_tail3395z00_2090;obj_t BgL_l3392z00_2089;
BgL_l3392z00_2089 = BgL_arg3692z00_1047; 
BgL_tail3395z00_2090 = BgL_newtail3396z00_1046; 
BgL_tail3395z00_1042 = BgL_tail3395z00_2090; 
BgL_l3392z00_1041 = BgL_l3392z00_2089; 
goto BgL_map3393z00_1043;} } } } } } } } 
{ /* ./SawJvm/funcall.scm 107 */
bool_t BgL_test3673z00_1036;
{ /* ./SawJvm/funcall.scm 107 */
obj_t BgL_list3682z00_1037;
BgL_list3682z00_1037 = 
MAKE_PAIR(BgL_needz00_1035, BNIL); 
{ /* ./SawJvm/funcall.scm 107 */
obj_t BgL_auxz00_2092;
BgL_auxz00_2092 = 
BGl_everyz00zz__r4_pairs_and_lists_6_3z00(BGl_notzd2envzd2zz__r4_booleans_6_1z00, BgL_list3682z00_1037); 
BgL_test3673z00_1036 = 
CBOOL(BgL_auxz00_2092); } } 
if(BgL_test3673z00_1036)
{ /* ./SawJvm/funcall.scm 107 */
return BUNSPEC;}  else 
{ /* ./SawJvm/funcall.scm 107 */
BGl_openzd2libzd2methodz00zzsaw_jvm_outz00(BgL_mez00_17, 
CNST_TABLE_REF(((long)13))); 
BGl_declarezd2localszd2zzsaw_jvm_outz00(BgL_mez00_17, 
CNST_TABLE_REF(((long)14)), BNIL); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_17, 
CNST_TABLE_REF(((long)2))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_17, 
CNST_TABLE_REF(((long)2))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_17, 
CNST_TABLE_REF(((long)3))); 
BGl_compilezd2dispatchzd2zzsaw_jvm_funcallz00(BgL_mez00_17, BgL_needz00_1035, BgL_procsz00_18); 
return 
BGl_closezd2methodzd2zzsaw_jvm_outz00(BgL_mez00_17);} } } } 
}



/* compile-dispatch */
obj_t BGl_compilezd2dispatchzd2zzsaw_jvm_funcallz00(BgL_jvmz00_bglt BgL_mez00_19, obj_t BgL_needz00_20, obj_t BgL_procsz00_21)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 116 */
{ /* ./SawJvm/funcall.scm 123 */
obj_t BgL_labsz00_1056;
BgL_labsz00_1056 = 
BGl_getzd2labszd2zzsaw_jvm_funcallz00(((long)0), BgL_needz00_20, BgL_procsz00_21); 
{ /* ./SawJvm/funcall.scm 124 */
obj_t BgL_arg3715z00_1057;
{ /* ./SawJvm/funcall.scm 124 */
obj_t BgL_arg3718z00_1058;obj_t BgL_arg3719z00_1059;
BgL_arg3718z00_1058 = 
CNST_TABLE_REF(((long)4)); 
{ /* ./SawJvm/funcall.scm 124 */
obj_t BgL_arg3722z00_1060;obj_t BgL_arg3723z00_1061;
BgL_arg3722z00_1060 = 
CNST_TABLE_REF(((long)5)); 
{ /* ./SawJvm/funcall.scm 124 */
obj_t BgL_arg3728z00_1063;
BgL_arg3728z00_1063 = 
BGl_eappendzd22zd2zz__r4_pairs_and_lists_6_3z00(BgL_labsz00_1056, BNIL); 
{ /* ./SawJvm/funcall.scm 124 */
obj_t BgL_auxz00_2112;
BgL_auxz00_2112 = 
BINT(((long)0)); 
BgL_arg3723z00_1061 = 
MAKE_PAIR(BgL_auxz00_2112, BgL_arg3728z00_1063); } } 
BgL_arg3719z00_1059 = 
MAKE_PAIR(BgL_arg3722z00_1060, BgL_arg3723z00_1061); } 
BgL_arg3715z00_1057 = 
MAKE_PAIR(BgL_arg3718z00_1058, BgL_arg3719z00_1059); } 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_19, BgL_arg3715z00_1057); } 
BGl_labelz00zzsaw_jvm_outz00(BgL_mez00_19, 
CNST_TABLE_REF(((long)5))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_19, 
CNST_TABLE_REF(((long)15))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_19, 
CNST_TABLE_REF(((long)16))); 
BGl_codez12z12zzsaw_jvm_outz00(BgL_mez00_19, 
CNST_TABLE_REF(((long)7))); 
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_zc3anonymousza33746ze3z83_1732;
{ 
int BgL_auxz00_2128;int BgL_auxz00_2126;
BgL_auxz00_2128 = 
(int)(((long)1)); 
BgL_auxz00_2126 = 
(int)(((long)3)); 
BgL_zc3anonymousza33746ze3z83_1732 = 
make_fx_procedure(BGl_zc3anonymousza33746ze3z83zzsaw_jvm_funcallz00, BgL_auxz00_2126, BgL_auxz00_2128); } 
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_auxz00_2133;int BgL_auxz00_2131;
BgL_auxz00_2133 = 
(obj_t)(BgL_mez00_19); 
BgL_auxz00_2131 = 
(int)(((long)0)); 
PROCEDURE_SET(BgL_zc3anonymousza33746ze3z83_1732, BgL_auxz00_2131, BgL_auxz00_2133); } 
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_list3738z00_1065;
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_arg3740z00_1066;
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_arg3743z00_1067;
BgL_arg3743z00_1067 = 
MAKE_PAIR(BgL_procsz00_21, BNIL); 
BgL_arg3740z00_1066 = 
MAKE_PAIR(BgL_labsz00_1056, BgL_arg3743z00_1067); } 
BgL_list3738z00_1065 = 
MAKE_PAIR(BgL_needz00_20, BgL_arg3740z00_1066); } 
return 
BGl_forzd2eachzd2zz__r4_control_features_6_9z00(BgL_zc3anonymousza33746ze3z83_1732, BgL_list3738z00_1065);} } } } 
}



/* get-labs */
obj_t BGl_getzd2labszd2zzsaw_jvm_funcallz00(long BgL_iz00_1073, obj_t BgL_nsz00_1074, obj_t BgL_psz00_1075)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 122 */
{ 
long BgL_nz00_1084;
{ /* ./SawJvm/funcall.scm 119 */
bool_t BgL_test3750z00_1077;
BgL_test3750z00_1077 = 
NULLP(BgL_nsz00_1074); 
if(BgL_test3750z00_1077)
{ /* ./SawJvm/funcall.scm 119 */
return BNIL;}  else 
{ /* ./SawJvm/funcall.scm 121 */
obj_t BgL_arg3752z00_1078;obj_t BgL_arg3753z00_1079;
{ /* ./SawJvm/funcall.scm 121 */
bool_t BgL_test3755z00_1080;
{ /* ./SawJvm/funcall.scm 121 */
obj_t BgL_auxz00_2142;
BgL_auxz00_2142 = 
CAR(BgL_nsz00_1074); 
BgL_test3755z00_1080 = 
CBOOL(BgL_auxz00_2142); } 
if(BgL_test3755z00_1080)
{ /* ./SawJvm/funcall.scm 121 */
BgL_nz00_1084 = BgL_iz00_1073; 
{ /* ./SawJvm/funcall.scm 117 */
obj_t BgL_arg3769z00_1086;
{ /* ./SawJvm/funcall.scm 117 */
obj_t BgL_arg3774z00_1088;
BgL_arg3774z00_1088 = 
BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(BgL_nz00_1084, BNIL); 
BgL_arg3769z00_1086 = 
string_append(BGl_string4466z00zzsaw_jvm_funcallz00, BgL_arg3774z00_1088); } 
{ /* ./SawJvm/funcall.scm 117 */
char * BgL_auxz00_2148;
BgL_auxz00_2148 = 
BSTRING_TO_STRING(BgL_arg3769z00_1086); 
BgL_arg3752z00_1078 = 
string_to_symbol(BgL_auxz00_2148); } } }  else 
{ /* ./SawJvm/funcall.scm 121 */
BgL_arg3752z00_1078 = 
CNST_TABLE_REF(((long)5)); } } 
{ /* ./SawJvm/funcall.scm 122 */
long BgL_arg3759z00_1081;obj_t BgL_arg3760z00_1082;obj_t BgL_arg3761z00_1083;
BgL_arg3759z00_1081 = 
(BgL_iz00_1073+((long)1)); 
BgL_arg3760z00_1082 = 
CDR(BgL_nsz00_1074); 
BgL_arg3761z00_1083 = 
CDR(BgL_psz00_1075); 
BgL_arg3753z00_1079 = 
BGl_getzd2labszd2zzsaw_jvm_funcallz00(BgL_arg3759z00_1081, BgL_arg3760z00_1082, BgL_arg3761z00_1083); } 
return 
MAKE_PAIR(BgL_arg3752z00_1078, BgL_arg3753z00_1079);} } } } 
}



/* <anonymous:3746> */
obj_t BGl_zc3anonymousza33746ze3z83zzsaw_jvm_funcallz00(obj_t BgL_envz00_1733, obj_t BgL_nzf3zf3_1735, obj_t BgL_labz00_1736, obj_t BgL_pz00_1737)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 129 */
{ /* ./SawJvm/funcall.scm 129 */
obj_t BgL_mez00_1734;
{ /* ./SawJvm/funcall.scm 129 */
int BgL_auxz00_2157;
BgL_auxz00_2157 = 
(int)(((long)0)); 
BgL_mez00_1734 = 
PROCEDURE_REF(BgL_envz00_1733, BgL_auxz00_2157); } 
{ 
obj_t BgL_nzf3zf3_1068;obj_t BgL_labz00_1069;obj_t BgL_pz00_1070;
BgL_nzf3zf3_1068 = BgL_nzf3zf3_1735; 
BgL_labz00_1069 = BgL_labz00_1736; 
BgL_pz00_1070 = BgL_pz00_1737; 
if(
CBOOL(BgL_nzf3zf3_1068))
{ /* ./SawJvm/funcall.scm 129 */
return 
BGl_compilezd2forzd2applyz00zzsaw_jvm_funcallz00(BgL_mez00_1734, BgL_labz00_1069, BgL_pz00_1070);}  else 
{ /* ./SawJvm/funcall.scm 129 */
return BFALSE;} } } } 
}



/* compile-for-apply */
obj_t BGl_compilezd2forzd2applyz00zzsaw_jvm_funcallz00(obj_t BgL_mez00_22, obj_t BgL_labz00_23, obj_t BgL_pz00_24)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 134 */
{ 
obj_t BgL_mez00_1097;obj_t BgL_nz00_1098;bool_t BgL_fixedarityzf3zf3_1099;
{ /* ./SawJvm/funcall.scm 156 */
obj_t BgL_arityz00_1093;
BgL_arityz00_1093 = 
BGl_globalzd2arityzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_24)); 
BGl_labelz00zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_22), BgL_labz00_23); 
{ /* ./SawJvm/funcall.scm 158 */
bool_t BgL_test3779z00_1094;
BgL_test3779z00_1094 = 
BGl_2ze3zd3z30zz__r4_numbers_6_5z00(BgL_arityz00_1093, 
BINT(((long)0))); 
if(BgL_test3779z00_1094)
{ /* ./SawJvm/funcall.scm 158 */
BgL_mez00_1097 = BgL_mez00_22; 
BgL_nz00_1098 = BgL_arityz00_1093; 
BgL_fixedarityzf3zf3_1099 = ((bool_t)1); 
BgL_zc3anonymousza33792ze3z83_1100:
{ /* ./SawJvm/funcall.scm 137 */
bool_t BgL_test3793z00_1101;
{ /* ./SawJvm/funcall.scm 137 */
long BgL_auxz00_2170;
BgL_auxz00_2170 = 
(long)CINT(BgL_nz00_1098); 
BgL_test3793z00_1101 = 
(BgL_auxz00_2170==((long)0)); } 
if(BgL_test3793z00_1101)
{ /* ./SawJvm/funcall.scm 137 */
if(BgL_fixedarityzf3zf3_1099)
{ /* ./SawJvm/funcall.scm 138 */BFALSE; }  else 
{ /* ./SawJvm/funcall.scm 138 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)15))); } }  else 
{ /* ./SawJvm/funcall.scm 140 */
bool_t BgL_test3795z00_1102;
{ /* ./SawJvm/funcall.scm 140 */
long BgL_auxz00_2178;
BgL_auxz00_2178 = 
(long)CINT(BgL_nz00_1098); 
BgL_test3795z00_1102 = 
(BgL_auxz00_2178==((long)1)); } 
if(BgL_test3795z00_1102)
{ /* ./SawJvm/funcall.scm 140 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)15))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)17))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)18))); 
if(BgL_fixedarityzf3zf3_1099)
{ /* ./SawJvm/funcall.scm 144 */BUNSPEC; }  else 
{ /* ./SawJvm/funcall.scm 144 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)15))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)17))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)19))); } }  else 
{ /* ./SawJvm/funcall.scm 140 */
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)15))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)17))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)20))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)19))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)21))); 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_1097), 
CNST_TABLE_REF(((long)18))); 
{ /* ./SawJvm/funcall.scm 155 */
obj_t BgL_arg3809z00_1103;
BgL_arg3809z00_1103 = 
BGl_2zd2zd2zz__r4_numbers_6_5z00(BgL_nz00_1098, 
BINT(((long)1))); 
{ 
obj_t BgL_nz00_2221;
BgL_nz00_2221 = BgL_arg3809z00_1103; 
BgL_nz00_1098 = BgL_nz00_2221; 
goto BgL_zc3anonymousza33792ze3z83_1100;} } } } } }  else 
{ /* ./SawJvm/funcall.scm 160 */
obj_t BgL_arg3782z00_1095;
BgL_arg3782z00_1095 = 
BGl_2zd2zd2zz__r4_numbers_6_5z00(
BINT(((long)-1)), BgL_arityz00_1093); 
{ 
bool_t BgL_fixedarityzf3zf3_2226;obj_t BgL_nz00_2225;obj_t BgL_mez00_2224;
BgL_mez00_2224 = BgL_mez00_22; 
BgL_nz00_2225 = BgL_arg3782z00_1095; 
BgL_fixedarityzf3zf3_2226 = ((bool_t)0); 
BgL_fixedarityzf3zf3_1099 = BgL_fixedarityzf3zf3_2226; 
BgL_nz00_1098 = BgL_nz00_2225; 
BgL_mez00_1097 = BgL_mez00_2224; 
goto BgL_zc3anonymousza33792ze3z83_1100;} } } 
{ /* ./SawJvm/funcall.scm 161 */
BgL_globalz00_bglt BgL_arg3787z00_1096;
BgL_arg3787z00_1096 = 
BGl_globalzd2entryzd2zzbackend_cplibz00(
(BgL_globalz00_bglt)(BgL_pz00_24)); 
BGl_callzd2globalzd2zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_22), BgL_arg3787z00_1096); } 
return 
BGl_codez12z12zzsaw_jvm_outz00(
(BgL_jvmz00_bglt)(BgL_mez00_22), 
CNST_TABLE_REF(((long)7)));} } } 
}



/* object-init */
obj_t BGl_objectzd2initzd2zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 1 */
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_arg3815z00_1105;obj_t BgL_arg3816z00_1106;obj_t BgL_arg3820z00_1110;
BgL_arg3815z00_1105 = 
CNST_TABLE_REF(((long)22)); 
BgL_arg3816z00_1106 = BGl_globalz00zzast_varz00; 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_v3397z00_1111;
{ 
int BgL_auxz00_2235;
BgL_auxz00_2235 = 
(int)(((long)0)); 
BgL_v3397z00_1111 = 
create_vector(BgL_auxz00_2235); } 
BgL_arg3820z00_1110 = BgL_v3397z00_1111; } 
BGl_indexedz00zzsaw_jvm_funcallz00 = 
BGl_registerzd2classz12zc0zz__objectz00(BgL_arg3815z00_1105, BgL_arg3816z00_1106, BFALSE, BGl_allocatezd2indexedzd2envz00zzsaw_jvm_funcallz00, ((long)53374), BNIL, BFALSE, BgL_arg3820z00_1110); } 
return BUNSPEC;} 
}



/* indexed? */
BGL_EXPORTED_DEF bool_t BGl_indexedzf3zf3zzsaw_jvm_funcallz00(obj_t BgL_obj3329z00_25)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
return 
BGl_iszd2azf3z21zz__objectz00(BgL_obj3329z00_25, BGl_indexedz00zzsaw_jvm_funcallz00);} 
}



/* _indexed? */
obj_t BGl__indexedzf3zf3zzsaw_jvm_funcallz00(obj_t BgL_envz00_1739, obj_t BgL_obj3329z00_1740)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
bool_t BgL_auxz00_2240;
BgL_auxz00_2240 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj3329z00_1740, BGl_indexedz00zzsaw_jvm_funcallz00); 
return 
BBOOL(BgL_auxz00_2240);} } 
}



/* widening-indexed */
BGL_EXPORTED_DEF BgL_indexedz00_bglt BGl_wideningzd2indexedzd2zzsaw_jvm_funcallz00(int BgL_index3295z00_29)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3296z00_1664;
BgL_new3296z00_1664 = 
((BgL_indexedz00_bglt)BREF( GC_MALLOC (sizeof(struct BgL_indexedz00_bgl)))); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4291z00_1668;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3318z00_1665;
BgL_new3318z00_1665 = BgL_new3296z00_1664; 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3317z00_1667;
BgL_index3317z00_1667 = BgL_index3295z00_29; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_1665))->BgL_indexz00) = ((int)BgL_index3317z00_1667), BUNSPEC); 
BgL_res4291z00_1668 = BgL_new3318z00_1665; } } BgL_res4291z00_1668; } 
return BgL_new3296z00_1664;} } 
}



/* _widening-indexed */
obj_t BGl__wideningzd2indexedzd2zzsaw_jvm_funcallz00(obj_t BgL_envz00_1741, obj_t BgL_index3295z00_1742)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_auxz00_2245;
BgL_auxz00_2245 = 
BGl_wideningzd2indexedzd2zzsaw_jvm_funcallz00(
CINT(BgL_index3295z00_1742)); 
return 
(obj_t)(BgL_auxz00_2245);} } 
}



/* make-indexed */
BGL_EXPORTED_DEF BgL_indexedz00_bglt BGl_makezd2indexedzd2zzsaw_jvm_funcallz00(obj_t BgL_id3299z00_30, obj_t BgL_name3300z00_31, BgL_typez00_bglt BgL_type3301z00_32, BgL_valuez00_bglt BgL_value3302z00_33, obj_t BgL_access3303z00_34, obj_t BgL_fastzd2alpha3304zd2_35, obj_t BgL_removable3305z00_36, long BgL_occurrence3306z00_37, obj_t BgL_module3307z00_38, obj_t BgL_import3308z00_39, bool_t BgL_evaluablezf33309zf3_40, bool_t BgL_libraryzf33310zf3_41, bool_t BgL_userzf33311zf3_42, obj_t BgL_pragma3312z00_43, obj_t BgL_src3313z00_44, obj_t BgL_jvmzd2typezd2name3314z00_45, int BgL_index3298z00_46)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_globalz00_bglt BgL_aux3315z00_1669;
BgL_aux3315z00_1669 = 
BGl_makezd2globalzd2zzast_varz00(BgL_id3299z00_30, BgL_name3300z00_31, BgL_type3301z00_32, BgL_value3302z00_33, BgL_access3303z00_34, BgL_fastzd2alpha3304zd2_35, BgL_removable3305z00_36, BgL_occurrence3306z00_37, BgL_module3307z00_38, BgL_import3308z00_39, BgL_evaluablezf33309zf3_40, BgL_libraryzf33310zf3_41, BgL_userzf33311zf3_42, BgL_pragma3312z00_43, BgL_src3313z00_44, BgL_jvmzd2typezd2name3314z00_45); 
{ /* ./SawJvm/funcall.scm 12 */
long BgL_arg3826z00_1670;
BgL_arg3826z00_1670 = 
BGl_classzd2numzd2zz__objectz00(BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_objz00_1673;
BgL_objz00_1673 = 
(BgL_objectz00_bglt)(BgL_aux3315z00_1669); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_1673, BgL_arg3826z00_1670); } } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_arg3830z00_1671;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4293z00_1681;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3296z00_1676;
BgL_new3296z00_1676 = 
((BgL_indexedz00_bglt)BREF( GC_MALLOC (sizeof(struct BgL_indexedz00_bgl)))); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4292z00_1680;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3318z00_1677;
BgL_new3318z00_1677 = BgL_new3296z00_1676; 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3317z00_1679;
BgL_index3317z00_1679 = BgL_index3298z00_46; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_1677))->BgL_indexz00) = ((int)BgL_index3317z00_1679), BUNSPEC); 
BgL_res4292z00_1680 = BgL_new3318z00_1677; } } BgL_res4292z00_1680; } 
BgL_res4293z00_1681 = BgL_new3296z00_1676; } 
BgL_arg3830z00_1671 = BgL_res4293z00_1681; } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_auxz00_2257;BgL_objectz00_bglt BgL_auxz00_2255;
BgL_auxz00_2257 = 
(obj_t)(BgL_arg3830z00_1671); 
BgL_auxz00_2255 = 
(BgL_objectz00_bglt)(BgL_aux3315z00_1669); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_2255, BgL_auxz00_2257); } } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3316z00_1672;
{ 
BgL_indexedz00_bglt BgL_auxz00_2260;
BgL_auxz00_2260 = 
(BgL_indexedz00_bglt)(BgL_aux3315z00_1669); 
BgL_new3316z00_1672 = 
((BgL_indexedz00_bglt)BgL_auxz00_2260); } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_objz00_1682;
BgL_objz00_1682 = 
(obj_t)(BgL_new3316z00_1672); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_1682); BUNSPEC; } 
return BgL_new3316z00_1672;} } } 
}



/* _make-indexed */
obj_t BGl__makezd2indexedzd2zzsaw_jvm_funcallz00(obj_t BgL_envz00_1743, obj_t BgL_id3299z00_1744, obj_t BgL_name3300z00_1745, obj_t BgL_type3301z00_1746, obj_t BgL_value3302z00_1747, obj_t BgL_access3303z00_1748, obj_t BgL_fastzd2alpha3304zd2_1749, obj_t BgL_removable3305z00_1750, obj_t BgL_occurrence3306z00_1751, obj_t BgL_module3307z00_1752, obj_t BgL_import3308z00_1753, obj_t BgL_evaluablezf33309zf3_1754, obj_t BgL_libraryzf33310zf3_1755, obj_t BgL_userzf33311zf3_1756, obj_t BgL_pragma3312z00_1757, obj_t BgL_src3313z00_1758, obj_t BgL_jvmzd2typezd2name3314z00_1759, obj_t BgL_index3298z00_1760)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_auxz00_2265;
BgL_auxz00_2265 = 
BGl_makezd2indexedzd2zzsaw_jvm_funcallz00(BgL_id3299z00_1744, BgL_name3300z00_1745, 
(BgL_typez00_bglt)(BgL_type3301z00_1746), 
(BgL_valuez00_bglt)(BgL_value3302z00_1747), BgL_access3303z00_1748, BgL_fastzd2alpha3304zd2_1749, BgL_removable3305z00_1750, 
(long)CINT(BgL_occurrence3306z00_1751), BgL_module3307z00_1752, BgL_import3308z00_1753, 
CBOOL(BgL_evaluablezf33309zf3_1754), 
CBOOL(BgL_libraryzf33310zf3_1755), 
CBOOL(BgL_userzf33311zf3_1756), BgL_pragma3312z00_1757, BgL_src3313z00_1758, BgL_jvmzd2typezd2name3314z00_1759, 
CINT(BgL_index3298z00_1760)); 
return 
(obj_t)(BgL_auxz00_2265);} } 
}



/* fill-indexed! */
BGL_EXPORTED_DEF BgL_indexedz00_bglt BGl_fillzd2indexedz12zc0zzsaw_jvm_funcallz00(BgL_indexedz00_bglt BgL_new3318z00_47, int BgL_index3317z00_48)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3317z00_1789;
BgL_index3317z00_1789 = BgL_index3317z00_48; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_47))->BgL_indexz00) = ((int)BgL_index3317z00_1789), BUNSPEC); 
return BgL_new3318z00_47;} } 
}



/* _fill-indexed! */
obj_t BGl__fillzd2indexedz12zc0zzsaw_jvm_funcallz00(obj_t BgL_envz00_1761, obj_t BgL_new3318z00_1762, obj_t BgL_index3317z00_1763)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_auxz00_2276;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4486z00_1793;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3318z00_1790;int BgL_index3317z00_1791;
BgL_new3318z00_1790 = 
(BgL_indexedz00_bglt)(BgL_new3318z00_1762); 
BgL_index3317z00_1791 = 
CINT(BgL_index3317z00_1763); 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3317z00_1792;
BgL_index3317z00_1792 = BgL_index3317z00_1791; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_1790))->BgL_indexz00) = ((int)BgL_index3317z00_1792), BUNSPEC); 
BgL_res4486z00_1793 = BgL_new3318z00_1790; } } 
BgL_auxz00_2276 = BgL_res4486z00_1793; } 
return 
(obj_t)(BgL_auxz00_2276);} } 
}



/* allocate-indexed */
BGL_EXPORTED_DEF BgL_globalz00_bglt BGl_allocatezd2indexedzd2zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_globalz00_bglt BgL_new3321z00_1794;
BgL_new3321z00_1794 = 
((BgL_globalz00_bglt)BREF( GC_MALLOC ( sizeof(struct BgL_globalz00_bgl) ))); 
{ /* ./SawJvm/funcall.scm 12 */
long BgL_arg3836z00_1795;
BgL_arg3836z00_1795 = 
BGl_classzd2numzd2zz__objectz00(BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_objz00_1796;
BgL_objz00_1796 = 
(BgL_objectz00_bglt)(BgL_new3321z00_1794); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_1796, BgL_arg3836z00_1795); } } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_auxz00_2285;
BgL_auxz00_2285 = 
(BgL_objectz00_bglt)(BgL_new3321z00_1794); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_2285, BFALSE); } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_objz00_1797;
BgL_objz00_1797 = 
(obj_t)(BgL_new3321z00_1794); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_1797); BUNSPEC; } 
return BgL_new3321z00_1794;} } 
}



/* _allocate-indexed */
obj_t BGl__allocatezd2indexedzd2zzsaw_jvm_funcallz00(obj_t BgL_envz00_1738)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_globalz00_bglt BgL_auxz00_2290;
{ /* ./SawJvm/funcall.scm 12 */
BgL_globalz00_bglt BgL_res4487z00_1802;
{ /* ./SawJvm/funcall.scm 12 */
BgL_globalz00_bglt BgL_new3321z00_1798;
BgL_new3321z00_1798 = 
((BgL_globalz00_bglt)BREF( GC_MALLOC ( sizeof(struct BgL_globalz00_bgl) ))); 
{ /* ./SawJvm/funcall.scm 12 */
long BgL_arg3836z00_1799;
BgL_arg3836z00_1799 = 
BGl_classzd2numzd2zz__objectz00(BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_objz00_1800;
BgL_objz00_1800 = 
(BgL_objectz00_bglt)(BgL_new3321z00_1798); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_1800, BgL_arg3836z00_1799); } } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_auxz00_2295;
BgL_auxz00_2295 = 
(BgL_objectz00_bglt)(BgL_new3321z00_1798); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_2295, BFALSE); } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_objz00_1801;
BgL_objz00_1801 = 
(obj_t)(BgL_new3321z00_1798); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_1801); BUNSPEC; } 
BgL_res4487z00_1802 = BgL_new3321z00_1798; } 
BgL_auxz00_2290 = BgL_res4487z00_1802; } 
return 
(obj_t)(BgL_auxz00_2290);} } 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 1 */
BGl_addzd2methodz12zc0zz__objectz00(BGl_objectzd2ze3structzd2envze3zz__objectz00, BGl_indexedz00zzsaw_jvm_funcallz00, BGl_proc4467z00zzsaw_jvm_funcallz00); 
return 
BGl_addzd2methodz12zc0zz__objectz00(BGl_structzb2objectzd2ze3objectzd2envz51zz__objectz00, BGl_indexedz00zzsaw_jvm_funcallz00, BGl_proc4468z00zzsaw_jvm_funcallz00);} 
}



/* struct+object->object-indexed3403 */
obj_t BGl_structzb2objectzd2ze3objectzd2indexed3403z51zzsaw_jvm_funcallz00(obj_t BgL_envz00_1771, obj_t BgL_oz00_1772, obj_t BgL_sz00_1773)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ 
BgL_indexedz00_bglt BgL_oz00_1572;obj_t BgL_sz00_1573;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_auxz00_2303;
BgL_oz00_1572 = 
(BgL_indexedz00_bglt)(BgL_oz00_1772); 
BgL_sz00_1573 = BgL_sz00_1773; 
{ 

{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_old3326z00_1576;obj_t BgL_aux3327z00_1577;
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_nextzd2method3402zd2_1582;
BgL_nextzd2method3402zd2_1582 = 
BGl_findzd2superzd2classzd2methodzd2zz__objectz00(
(BgL_objectz00_bglt)(BgL_oz00_1572), BGl_structzb2objectzd2ze3objectzd2envz51zz__objectz00, BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
bool_t BgL_test4273z00_1583;
BgL_test4273z00_1583 = 
PROCEDUREP(BgL_nextzd2method3402zd2_1582); 
if(BgL_test4273z00_1583)
{ /* ./SawJvm/funcall.scm 12 */
BgL_old3326z00_1576 = 
PROCEDURE_ENTRY(BgL_nextzd2method3402zd2_1582)(BgL_nextzd2method3402zd2_1582, 
(obj_t)(BgL_oz00_1572), BgL_sz00_1573, BEOA); }  else 
{ /* ./SawJvm/funcall.scm 12 */
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_auxz00_2311;
BgL_auxz00_2311 = 
BGl_structzb2objectzd2ze3objectz83zz__objectz00(
(BgL_objectz00_bglt)(BgL_oz00_1572), BgL_sz00_1573); 
BgL_old3326z00_1576 = 
(obj_t)(BgL_auxz00_2311); } } } } 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_auxz00_2315;
BgL_auxz00_2315 = 
(int)(((long)0)); 
BgL_aux3327z00_1577 = 
STRUCT_REF(BgL_sz00_1573, BgL_auxz00_2315); } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3328z00_1578;
BgL_new3328z00_1578 = 
((BgL_indexedz00_bglt)(BgL_old3326z00_1576)); 
{ /* ./SawJvm/funcall.scm 12 */
long BgL_arg4260z00_1579;
BgL_arg4260z00_1579 = 
BGl_classzd2numzd2zz__objectz00(BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_objz00_1708;
BgL_objz00_1708 = 
(BgL_objectz00_bglt)(BgL_new3328z00_1578); 
BGL_OBJECT_CLASS_NUM_SET(BgL_objz00_1708, BgL_arg4260z00_1579); } } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_arg4264z00_1580;
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_arg4267z00_1581;
{ /* ./SawJvm/funcall.scm 12 */
int BgL_auxz00_2322;
BgL_auxz00_2322 = 
(int)(((long)0)); 
BgL_arg4267z00_1581 = 
STRUCT_REF(BgL_aux3327z00_1577, BgL_auxz00_2322); } 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4296z00_1718;
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3295z00_1712;
BgL_index3295z00_1712 = 
CINT(BgL_arg4267z00_1581); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3296z00_1713;
BgL_new3296z00_1713 = 
((BgL_indexedz00_bglt)BREF( GC_MALLOC (sizeof(struct BgL_indexedz00_bgl)))); 
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_res4295z00_1717;
{ /* ./SawJvm/funcall.scm 12 */
BgL_indexedz00_bglt BgL_new3318z00_1714;
BgL_new3318z00_1714 = BgL_new3296z00_1713; 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_index3317z00_1716;
BgL_index3317z00_1716 = BgL_index3295z00_1712; 
((((BgL_indexedz00_bglt)CREF(BgL_new3318z00_1714))->BgL_indexz00) = ((int)BgL_index3317z00_1716), BUNSPEC); 
BgL_res4295z00_1717 = BgL_new3318z00_1714; } } BgL_res4295z00_1717; } 
BgL_res4296z00_1718 = BgL_new3296z00_1713; } } 
BgL_arg4264z00_1580 = BgL_res4296z00_1718; } } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_auxz00_2330;BgL_objectz00_bglt BgL_auxz00_2328;
BgL_auxz00_2330 = 
(obj_t)(BgL_arg4264z00_1580); 
BgL_auxz00_2328 = 
(BgL_objectz00_bglt)(BgL_new3328z00_1578); 
BGL_OBJECT_WIDENING_SET(BgL_auxz00_2328, BgL_auxz00_2330); } } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_objz00_1719;
BgL_objz00_1719 = 
(obj_t)(BgL_new3328z00_1578); 
BGL_HEAP_DEBUG_MARK_OBJ(BgL_objz00_1719); BUNSPEC; } 
BgL_auxz00_2303 = BgL_new3328z00_1578; } } } 
return 
(obj_t)(BgL_auxz00_2303);} } } 
}



/* object->struct-indexed3400 */
obj_t BGl_objectzd2ze3structzd2indexed3400ze3zzsaw_jvm_funcallz00(obj_t BgL_envz00_1774, obj_t BgL_obj3323z00_1775)
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 12 */
{ 
BgL_indexedz00_bglt BgL_obj3323z00_1562;
BgL_obj3323z00_1562 = 
(BgL_indexedz00_bglt)(BgL_obj3323z00_1775); 
{ 

{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_res3324z00_1565;
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_nextzd2method3399zd2_1570;
BgL_nextzd2method3399zd2_1570 = 
BGl_findzd2superzd2classzd2methodzd2zz__objectz00(
(BgL_objectz00_bglt)(BgL_obj3323z00_1562), BGl_objectzd2ze3structzd2envze3zz__objectz00, BGl_indexedz00zzsaw_jvm_funcallz00); 
{ /* ./SawJvm/funcall.scm 12 */
bool_t BgL_test4253z00_1571;
BgL_test4253z00_1571 = 
PROCEDUREP(BgL_nextzd2method3399zd2_1570); 
if(BgL_test4253z00_1571)
{ /* ./SawJvm/funcall.scm 12 */
BgL_res3324z00_1565 = 
PROCEDURE_ENTRY(BgL_nextzd2method3399zd2_1570)(BgL_nextzd2method3399zd2_1570, 
(obj_t)(BgL_obj3323z00_1562), BEOA); }  else 
{ /* ./SawJvm/funcall.scm 12 */
BgL_res3324z00_1565 = 
BGl_objectzd2ze3structz31zz__objectz00(
(BgL_objectz00_bglt)(BgL_obj3323z00_1562)); } } } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_aux3325z00_1566;
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_keyz00_1689;int BgL_lenz00_1690;
BgL_keyz00_1689 = 
CNST_TABLE_REF(((long)22)); 
BgL_lenz00_1690 = 
(int)(((long)1)); 
BgL_aux3325z00_1566 = 
make_struct(BgL_keyz00_1689, BgL_lenz00_1690, BUNSPEC); } 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_arg4242z00_1568;
{ 
obj_t BgL_auxz00_2349;
{ /* ./SawJvm/funcall.scm 12 */
BgL_objectz00_bglt BgL_auxz00_2350;
BgL_auxz00_2350 = 
(BgL_objectz00_bglt)(BgL_obj3323z00_1562); 
BgL_auxz00_2349 = 
BGL_OBJECT_WIDENING(BgL_auxz00_2350); } 
BgL_arg4242z00_1568 = 
(((BgL_indexedz00_bglt)CREF(BgL_auxz00_2349))->BgL_indexz00); } 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_kz00_1694;obj_t BgL_oz00_1695;
BgL_kz00_1694 = 
(int)(((long)0)); 
BgL_oz00_1695 = 
BINT(BgL_arg4242z00_1568); 
STRUCT_SET(BgL_aux3325z00_1566, BgL_kz00_1694, BgL_oz00_1695); } } 
{ /* ./SawJvm/funcall.scm 12 */
int BgL_kz00_1697;
BgL_kz00_1697 = 
(int)(((long)0)); 
STRUCT_SET(BgL_res3324z00_1565, BgL_kz00_1697, BgL_aux3325z00_1566); } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_arg4247z00_1569;
BgL_arg4247z00_1569 = 
STRUCT_KEY(BgL_res3324z00_1565); 
STRUCT_KEY_SET(BgL_aux3325z00_1566, BgL_arg4247z00_1569); } 
{ /* ./SawJvm/funcall.scm 12 */
obj_t BgL_kz00_1704;
BgL_kz00_1704 = 
CNST_TABLE_REF(((long)22)); 
STRUCT_KEY_SET(BgL_res3324z00_1565, BgL_kz00_1704); } 
return BgL_res3324z00_1565;} } } } } 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzsaw_jvm_funcallz00()
{ AN_OBJECT;
{ /* ./SawJvm/funcall.scm 1 */
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzast_nodez00(((long)50868), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zztype_envz00(((long)25186), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzobject_classz00(((long)30791), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzobject_slotsz00(((long)44183), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzbackend_backendz00(((long)3428), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzbackend_libz00(((long)20030), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzbackend_cplibz00(((long)26792), "saw_jvm_funcall"); 
BGl_modulezd2initializa7ationz75zzsaw_proceduresz00(((long)20315), "saw_jvm_funcall"); 
return 
BGl_modulezd2initializa7ationz75zzsaw_jvm_outz00(((long)50136), "saw_jvm_funcall");} 
}

