/*===========================================================================*/
/*   (Ast/hrtype.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 Ast/hrtype.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_ccompz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_producerz00;
   obj_t BgL_consumerz00;
   obj_t BgL_finaliza7erza7;
} *BgL_ccompz00_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;


static bool_t BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(obj_t);
static obj_t BGl_methodzd2initzd2zzast_hrtypez00();
static obj_t BGl_hrtypezd2nodez12zd2boxzd2setz122768zd2zzast_hrtypez00(obj_t, obj_t);
BGL_IMPORT obj_t open_input_string(obj_t);
extern obj_t BGl_letzd2funzd2zzast_nodez00;
extern obj_t BGl_sfunz00zzast_varz00;
static obj_t BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(BgL_variablez00_bglt);
static obj_t BGl__hrtypezd2nodez12zc0zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2app2740z12zzast_hrtypez00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2sequence2737z12zzast_hrtypez00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_addzd2genericz12zc0zz__objectz00(obj_t, obj_t);
extern obj_t BGl_letzd2varzd2zzast_nodez00;
static obj_t BGl_hrtypezd2nodez12zd2atom2729z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_za2moduleza2z00zzmodule_modulez00;
extern obj_t BGl_kwotez00zzast_nodez00;
static obj_t BGl__hrtypezd2nodez12zd2default2726z12zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2boxzd2ref2770zc0zzast_hrtypez00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hrtypezd2nodez12zc0zzast_hrtypez00(BgL_nodez00_bglt);
extern obj_t BGl_globalz00zzast_varz00;
extern obj_t BGl_typez00zztype_typez00;
static obj_t BGl_hrtypezd2nodez12zd2extern2746z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_castz00zzast_nodez00;
extern obj_t BGl_boxzd2refzd2zzast_nodez00;
extern obj_t BGl_varz00zzast_nodez00;
static obj_t BGl_cnstzd2initzd2zzast_hrtypez00();
static obj_t BGl_hrtypezd2nodez12zd2letzd2fun2758zc0zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_atomz00zzast_nodez00;
extern obj_t BGl_failz00zzast_nodez00;
extern obj_t BGl_funcallz00zzast_nodez00;
static obj_t BGl_importedzd2moduleszd2initz00zzast_hrtypez00();
extern obj_t BGl_makezd2boxzd2zzast_nodez00;
static obj_t BGl_hrtypezd2nodez12zd2letzd2var2760zc0zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2fail2754z12zzast_hrtypez00(obj_t, obj_t);
BGL_IMPORT obj_t BGl_addzd2methodz12zc0zz__objectz00(obj_t, obj_t, obj_t);
extern obj_t BGl_variablez00zzast_varz00;
static obj_t BGl_hrtypezd2nodez12zd2jumpzd2exzd2it2764z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_selectz00zzast_nodez00;
static obj_t BGl_toplevelzd2initzd2zzast_hrtypez00();
extern obj_t BGl_appzd2lyzd2zzast_nodez00;
static obj_t BGl_hrtypezd2nodez12zd2kwote2731z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_boxzd2setz12zc0zzast_nodez00;
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzast_hrtypez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typeofz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_shapez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzmodule_modulez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_nodez00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
static obj_t BGl_hrtypezd2nodez12zd2makezd2box2766zc0zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_findzd2globalzd2zzast_envz00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2conditional2752z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_restorezd2globalz12zc0zzast_envz00(obj_t);
static obj_t BGl_hrtypezd2nodez12zd2var2733z12zzast_hrtypez00(obj_t, obj_t);
extern BgL_typez00_bglt BGl_findzd2typezd2zztype_envz00(obj_t);
extern obj_t BGl_setzd2exzd2itz00zzast_nodez00;
extern obj_t BGl_shapez00zztools_shapez00(obj_t);
static obj_t BGl_hrtypezd2nodez12zd2funcall2744z12zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2closure2735z12zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2select2756z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_cfunz00zzast_varz00;
extern obj_t BGl_jumpzd2exzd2itz00zzast_nodez00;
static obj_t BGl_hrtypezd2nodez12zd2cast2748z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_externz00zzast_nodez00;
extern obj_t BGl_conditionalz00zzast_nodez00;
extern obj_t BGl_sequencez00zzast_nodez00;
extern obj_t BGl_internalzd2errorzd2zztools_errorz00(obj_t, obj_t, obj_t);
extern obj_t BGl_appz00zzast_nodez00;
extern obj_t BGl_localz00zzast_varz00;
static obj_t BGl_hrtypezd2nodez12zd2appzd2ly2742zc0zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_closurez00zzast_nodez00;
extern obj_t BGl_alreadyzd2restoredzf3z21zzast_envz00(obj_t);
static obj_t BGl_hrtypezd2nodez12zd2setzd2exzd2it2762z12zzast_hrtypez00(obj_t, obj_t);
static obj_t BGl_hrtypezd2nodez12zd2default2726z12zzast_hrtypez00(BgL_nodez00_bglt);
static obj_t BGl_requirezd2initializa7ationz75zzast_hrtypez00 = BUNSPEC;
static obj_t BGl_libraryzd2moduleszd2initz00zzast_hrtypez00();
static obj_t BGl_hrtypezd2nodez12zd2setq2750z12zzast_hrtypez00(obj_t, obj_t);
extern obj_t BGl_setqz00zzast_nodez00;
static obj_t __cnst[ 3 ] ;


DEFINE_STATIC_PROCEDURE( BGl_hrtypezd2nodez12zd2default2726zd2envzc0zzast_hrtypez00, BgL_bgl__hrtypeza7d2nodeza712za7d2default2726za712za7za7ast_hrtypeza7004126za7, BGl__hrtypezd2nodez12zd2default2726z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4071z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2atom2729za712za7za7ast_hrtypeza7004127za7, BGl_hrtypezd2nodez12zd2atom2729z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4072z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2kwote2731za712za7za7ast_hrtypeza7004128za7, BGl_hrtypezd2nodez12zd2kwote2731z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4073z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2var2733za712za7za7ast_hrtypeza7004129za7, BGl_hrtypezd2nodez12zd2var2733z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4074z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2closure2735za712za7za7ast_hrtypeza7004130za7, BGl_hrtypezd2nodez12zd2closure2735z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4075z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2sequence2737za712za7za7ast_hrtypeza7004131za7, BGl_hrtypezd2nodez12zd2sequence2737z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4076z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2app2740za712za7za7ast_hrtypeza7004132za7, BGl_hrtypezd2nodez12zd2app2740z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4077z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2appza7d2ly2742za7c0za7za7ast_hrtypeza7004133z00, BGl_hrtypezd2nodez12zd2appzd2ly2742zc0zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4078z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2funcall2744za712za7za7ast_hrtypeza7004134za7, BGl_hrtypezd2nodez12zd2funcall2744z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4080z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2cast2748za712za7za7ast_hrtypeza7004135za7, BGl_hrtypezd2nodez12zd2cast2748z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4079z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2extern2746za712za7za7ast_hrtypeza7004136za7, BGl_hrtypezd2nodez12zd2extern2746z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4081z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2setq2750za712za7za7ast_hrtypeza7004137za7, BGl_hrtypezd2nodez12zd2setq2750z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4082z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2conditional2752za712za7za7ast_hrtypeza7004138za7, BGl_hrtypezd2nodez12zd2conditional2752z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4083z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2fail2754za712za7za7ast_hrtypeza7004139za7, BGl_hrtypezd2nodez12zd2fail2754z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4084z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2select2756za712za7za7ast_hrtypeza7004140za7, BGl_hrtypezd2nodez12zd2select2756z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4085z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2letza7d2fun2758za7c0za7za7ast_hrtypeza7004141z00, BGl_hrtypezd2nodez12zd2letzd2fun2758zc0zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4086z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2letza7d2var2760za7c0za7za7ast_hrtypeza7004142z00, BGl_hrtypezd2nodez12zd2letzd2var2760zc0zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4087z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2setza7d2exza7d2it2762za712za7za7ast_hrtypeza7004143za7, BGl_hrtypezd2nodez12zd2setzd2exzd2it2762z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4088z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2jumpza7d2exza7d2it2764za712za7za7ast_hrtypeza7004144za7, BGl_hrtypezd2nodez12zd2jumpzd2exzd2it2764z12zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4090z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2boxza7d2setza7122768za7d2za7za7ast_hrtypeza7004145za7, BGl_hrtypezd2nodez12zd2boxzd2setz122768zd2zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4089z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2makeza7d2box2766za7c0za7za7ast_hrtypeza7004146z00, BGl_hrtypezd2nodez12zd2makezd2box2766zc0zzast_hrtypez00, 0L, 1 );
DEFINE_STATIC_PROCEDURE( BGl_proc4091z00zzast_hrtypez00, BgL_bgl_hrtypeza7d2nodeza712za7d2boxza7d2ref2770za7c0za7za7ast_hrtypeza7004147z00, BGl_hrtypezd2nodez12zd2boxzd2ref2770zc0zzast_hrtypez00, 0L, 1 );
DEFINE_EXPORT_GENERIC( BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_bgl__hrtypeza7d2nodeza712za7c0za7za7ast_hrtypeza7004148z00, BGl__hrtypezd2nodez12zc0zzast_hrtypez00, 0L, 1 );
DEFINE_STRING( BGl_string4098z00zzast_hrtypez00, BgL_bgl_string4098za700za7za7ast_hrtypeza7004149z00, "hrtype-node!-default2726 static sifun ", 38 );
DEFINE_STRING( BGl_string4097z00zzast_hrtypez00, BgL_bgl_string4097za700za7za7ast_hrtypeza7004150z00, "No method for this object", 25 );
DEFINE_STRING( BGl_string4096z00zzast_hrtypez00, BgL_bgl_string4096za700za7za7ast_hrtypeza7004151z00, "Unexpected closure", 18 );
DEFINE_STRING( BGl_string4095z00zzast_hrtypez00, BgL_bgl_string4095za700za7za7ast_hrtypeza7004152z00, "Can't find library variable", 27 );
DEFINE_STRING( BGl_string4094z00zzast_hrtypez00, BgL_bgl_string4094za700za7za7ast_hrtypeza7004153z00, "heap", 4 );
DEFINE_STRING( BGl_string4093z00zzast_hrtypez00, BgL_bgl_string4093za700za7za7ast_hrtypeza7004154z00, "Illegal argument", 16 );
DEFINE_STRING( BGl_string4092z00zzast_hrtypez00, BgL_bgl_string4092za700za7za7ast_hrtypeza7004155z00, "hrtype-node!", 12 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzast_hrtypez00(long BgL_checksumz00_2236, char * BgL_fromz00_2237)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzast_hrtypez00))
{ 
BGl_requirezd2initializa7ationz75zzast_hrtypez00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzast_hrtypez00(); 
BGl_cnstzd2initzd2zzast_hrtypez00(); 
BGl_importedzd2moduleszd2initz00zzast_hrtypez00(); 
BGl_methodzd2initzd2zzast_hrtypez00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzast_hrtypez00()
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "ast_hrtype"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzast_hrtypez00()
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
{ /* ./Ast/hrtype.scm 17 */
obj_t BgL_cportz00_2225;
BgL_cportz00_2225 = 
open_input_string(BGl_string4098z00zzast_hrtypez00); 
{ 
long BgL_iz00_2226;
BgL_iz00_2226 = ((long)2); 
BgL_loopz00_2227:
{ /* ./Ast/hrtype.scm 17 */
bool_t BgL_test4100z00_2228;
BgL_test4100z00_2228 = 
(BgL_iz00_2226==((long)-1)); 
if(BgL_test4100z00_2228)
{ /* ./Ast/hrtype.scm 17 */
return BUNSPEC;}  else 
{ /* ./Ast/hrtype.scm 17 */
{ /* ./Ast/hrtype.scm 17 */
obj_t BgL_arg4102z00_2229;
{ /* ./Ast/hrtype.scm 17 */
obj_t BgL_list4105z00_2230;
BgL_list4105z00_2230 = 
MAKE_PAIR(BgL_cportz00_2225, BNIL); 
BgL_arg4102z00_2229 = 
BGl_readz00zz__readerz00(BgL_list4105z00_2230); } 
{ /* ./Ast/hrtype.scm 17 */
int BgL_auxz00_2252;
BgL_auxz00_2252 = 
(int)(BgL_iz00_2226); 
CNST_TABLE_SET(BgL_auxz00_2252, BgL_arg4102z00_2229); } } 
{ /* ./Ast/hrtype.scm 17 */
int BgL_auxz00_2231;
{ /* ./Ast/hrtype.scm 17 */
long BgL_auxz00_2255;
BgL_auxz00_2255 = 
(BgL_iz00_2226-((long)1)); 
BgL_auxz00_2231 = 
(int)(BgL_auxz00_2255); } 
{ 
long BgL_iz00_2258;
BgL_iz00_2258 = 
(long)(BgL_auxz00_2231); 
BgL_iz00_2226 = BgL_iz00_2258; 
goto BgL_loopz00_2227;} } } } } } } 
}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zzast_hrtypez00()
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
return BUNSPEC;} 
}



/* hrtype-node*! */
bool_t BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(obj_t BgL_nodeza2za2_24)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 256 */
{ 
obj_t BgL_l2724z00_693;
BgL_l2724z00_693 = BgL_nodeza2za2_24; 
BgL_forzd2each2725zd2_694:
{ /* ./Ast/hrtype.scm 257 */
bool_t BgL_test2772z00_695;
BgL_test2772z00_695 = 
PAIRP(BgL_l2724z00_693); 
if(BgL_test2772z00_695)
{ /* ./Ast/hrtype.scm 257 */
{ /* ./Ast/hrtype.scm 257 */
obj_t BgL_arg2774z00_696;
BgL_arg2774z00_696 = 
CAR(BgL_l2724z00_693); 
{ /* ./Ast/hrtype.scm 257 */
BgL_nodez00_bglt BgL_nodez00_1309;
BgL_nodez00_1309 = 
(BgL_nodez00_bglt)(BgL_arg2774z00_696); 
{ /* ./Ast/hrtype.scm 257 */
obj_t BgL_method2727z00_1310;
{ /* ./Ast/hrtype.scm 257 */
BgL_objectz00_bglt BgL_objz00_1311;
BgL_objz00_1311 = 
(BgL_objectz00_bglt)(BgL_nodez00_1309); 
{ /* ./Ast/hrtype.scm 257 */
long BgL_objzd2classzd2numz00_1312;
BgL_objzd2classzd2numz00_1312 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1311); 
{ /* ./Ast/hrtype.scm 257 */
obj_t BgL_arg2017z00_1313;
{ /* ./Ast/hrtype.scm 257 */
int BgL_auxz00_2266;
BgL_auxz00_2266 = 
(int)(((long)1)); 
BgL_arg2017z00_1313 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2266); } 
{ /* ./Ast/hrtype.scm 257 */
int BgL_offsetz00_1316;
BgL_offsetz00_1316 = 
(int)(BgL_objzd2classzd2numz00_1312); 
{ /* ./Ast/hrtype.scm 257 */
long BgL_offsetz00_1317;
{ /* ./Ast/hrtype.scm 257 */
long BgL_auxz00_2270;
BgL_auxz00_2270 = 
(long)(BgL_offsetz00_1316); 
BgL_offsetz00_1317 = 
(BgL_auxz00_2270-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 257 */
long BgL_modz00_1318;
{ /* ./Ast/hrtype.scm 257 */
int BgL_arg2028z00_1319;
BgL_arg2028z00_1319 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 257 */
long BgL_n2z00_1327;
BgL_n2z00_1327 = 
(long)(BgL_arg2028z00_1319); 
BgL_modz00_1318 = 
(BgL_offsetz00_1317/BgL_n2z00_1327); } } 
{ /* ./Ast/hrtype.scm 257 */
long BgL_restz00_1320;
{ /* ./Ast/hrtype.scm 257 */
int BgL_arg2024z00_1321;
BgL_arg2024z00_1321 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 257 */
long BgL_n2z00_1330;
BgL_n2z00_1330 = 
(long)(BgL_arg2024z00_1321); 
BgL_restz00_1320 = 
(BgL_offsetz00_1317%BgL_n2z00_1330); } } 
{ /* ./Ast/hrtype.scm 257 */

{ /* ./Ast/hrtype.scm 257 */
obj_t BgL_bucketz00_1322;
{ /* ./Ast/hrtype.scm 257 */
int BgL_kz00_1332;
BgL_kz00_1332 = 
(int)(BgL_modz00_1318); 
BgL_bucketz00_1322 = 
VECTOR_REF(BgL_arg2017z00_1313,BgL_kz00_1332); } 
{ /* ./Ast/hrtype.scm 257 */
int BgL_kz00_1334;
BgL_kz00_1334 = 
(int)(BgL_restz00_1320); 
BgL_method2727z00_1310 = 
VECTOR_REF(BgL_bucketz00_1322,BgL_kz00_1334); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1310)(BgL_method2727z00_1310, 
(obj_t)(BgL_nodez00_1309), BEOA); } } } 
{ /* ./Ast/hrtype.scm 257 */
obj_t BgL_arg2778z00_697;
BgL_arg2778z00_697 = 
CDR(BgL_l2724z00_693); 
{ 
obj_t BgL_l2724z00_2287;
BgL_l2724z00_2287 = BgL_arg2778z00_697; 
BgL_l2724z00_693 = BgL_l2724z00_2287; 
goto BgL_forzd2each2725zd2_694;} } }  else 
{ /* ./Ast/hrtype.scm 257 */
return ((bool_t)1);} } } } 
}



/* restore-variable-type! */
obj_t BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(BgL_variablez00_bglt BgL_variablez00_25)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 262 */
{ /* ./Ast/hrtype.scm 263 */
BgL_typez00_bglt BgL_typez00_698;
BgL_typez00_698 = 
(((BgL_variablez00_bglt)CREF(BgL_variablez00_25))->BgL_typez00); 
{ /* ./Ast/hrtype.scm 264 */
bool_t BgL_test2782z00_699;
{ /* ./Ast/hrtype.scm 264 */
obj_t BgL_obj1088z00_1337;
BgL_obj1088z00_1337 = 
(obj_t)(BgL_typez00_698); 
BgL_test2782z00_699 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1088z00_1337, BGl_typez00zztype_typez00); } 
if(BgL_test2782z00_699)
{ /* ./Ast/hrtype.scm 265 */
BgL_typez00_bglt BgL_arg2784z00_700;
{ /* ./Ast/hrtype.scm 265 */
obj_t BgL_arg2787z00_701;
BgL_arg2787z00_701 = 
(((BgL_typez00_bglt)CREF(BgL_typez00_698))->BgL_idz00); 
BgL_arg2784z00_700 = 
BGl_findzd2typezd2zztype_envz00(BgL_arg2787z00_701); } 
{ /* ./Ast/hrtype.scm 265 */
BgL_variablez00_bglt BgL_obj1119z00_1339;BgL_typez00_bglt BgL_val1118z00_1340;
BgL_obj1119z00_1339 = BgL_variablez00_25; 
BgL_val1118z00_1340 = BgL_arg2784z00_700; 
return 
((((BgL_variablez00_bglt)CREF(BgL_obj1119z00_1339))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1118z00_1340), BUNSPEC);} }  else 
{ /* ./Ast/hrtype.scm 264 */
return BFALSE;} } } } 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzast_hrtypez00()
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
BGl_addzd2genericz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_hrtypezd2nodez12zd2default2726zd2envzc0zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_atomz00zzast_nodez00, BGl_proc4071z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_kwotez00zzast_nodez00, BGl_proc4072z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_varz00zzast_nodez00, BGl_proc4073z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_closurez00zzast_nodez00, BGl_proc4074z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_sequencez00zzast_nodez00, BGl_proc4075z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_appz00zzast_nodez00, BGl_proc4076z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_appzd2lyzd2zzast_nodez00, BGl_proc4077z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_funcallz00zzast_nodez00, BGl_proc4078z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_externz00zzast_nodez00, BGl_proc4079z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_castz00zzast_nodez00, BGl_proc4080z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_setqz00zzast_nodez00, BGl_proc4081z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_conditionalz00zzast_nodez00, BGl_proc4082z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_failz00zzast_nodez00, BGl_proc4083z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_selectz00zzast_nodez00, BGl_proc4084z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_letzd2funzd2zzast_nodez00, BGl_proc4085z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_letzd2varzd2zzast_nodez00, BGl_proc4086z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_setzd2exzd2itz00zzast_nodez00, BGl_proc4087z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_jumpzd2exzd2itz00zzast_nodez00, BGl_proc4088z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_makezd2boxzd2zzast_nodez00, BGl_proc4089z00zzast_hrtypez00); 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_boxzd2setz12zc0zzast_nodez00, BGl_proc4090z00zzast_hrtypez00); 
return 
BGl_addzd2methodz12zc0zz__objectz00(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BGl_boxzd2refzd2zzast_nodez00, BGl_proc4091z00zzast_hrtypez00);} 
}



/* hrtype-node!-box-ref2770 */
obj_t BGl_hrtypezd2nodez12zd2boxzd2ref2770zc0zzast_hrtypez00(obj_t BgL_envz00_2181, obj_t BgL_nodez00_2182)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 249 */
{ 
BgL_boxzd2refzd2_bglt BgL_nodez00_1299;
BgL_nodez00_1299 = 
(BgL_boxzd2refzd2_bglt)(BgL_nodez00_2182); 
{ /* ./Ast/hrtype.scm 250 */
BgL_varz00_bglt BgL_arg3559z00_2102;
BgL_arg3559z00_2102 = 
(((BgL_boxzd2refzd2_bglt)CREF(BgL_nodez00_1299))->BgL_varz00); 
{ /* ./Ast/hrtype.scm 250 */
BgL_nodez00_bglt BgL_nodez00_2104;
BgL_nodez00_2104 = 
(BgL_nodez00_bglt)(BgL_arg3559z00_2102); 
{ /* ./Ast/hrtype.scm 250 */
obj_t BgL_method2727z00_2105;
{ /* ./Ast/hrtype.scm 250 */
BgL_objectz00_bglt BgL_objz00_2106;
BgL_objz00_2106 = 
(BgL_objectz00_bglt)(BgL_nodez00_2104); 
{ /* ./Ast/hrtype.scm 250 */
long BgL_objzd2classzd2numz00_2107;
BgL_objzd2classzd2numz00_2107 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_2106); 
{ /* ./Ast/hrtype.scm 250 */
obj_t BgL_arg2017z00_2108;
{ /* ./Ast/hrtype.scm 250 */
int BgL_auxz00_2321;
BgL_auxz00_2321 = 
(int)(((long)1)); 
BgL_arg2017z00_2108 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2321); } 
{ /* ./Ast/hrtype.scm 250 */
int BgL_offsetz00_2111;
BgL_offsetz00_2111 = 
(int)(BgL_objzd2classzd2numz00_2107); 
{ /* ./Ast/hrtype.scm 250 */
long BgL_offsetz00_2112;
{ /* ./Ast/hrtype.scm 250 */
long BgL_auxz00_2325;
BgL_auxz00_2325 = 
(long)(BgL_offsetz00_2111); 
BgL_offsetz00_2112 = 
(BgL_auxz00_2325-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 250 */
long BgL_modz00_2113;
{ /* ./Ast/hrtype.scm 250 */
int BgL_arg2028z00_2114;
BgL_arg2028z00_2114 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 250 */
long BgL_n2z00_2122;
BgL_n2z00_2122 = 
(long)(BgL_arg2028z00_2114); 
BgL_modz00_2113 = 
(BgL_offsetz00_2112/BgL_n2z00_2122); } } 
{ /* ./Ast/hrtype.scm 250 */
long BgL_restz00_2115;
{ /* ./Ast/hrtype.scm 250 */
int BgL_arg2024z00_2116;
BgL_arg2024z00_2116 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 250 */
long BgL_n2z00_2125;
BgL_n2z00_2125 = 
(long)(BgL_arg2024z00_2116); 
BgL_restz00_2115 = 
(BgL_offsetz00_2112%BgL_n2z00_2125); } } 
{ /* ./Ast/hrtype.scm 250 */

{ /* ./Ast/hrtype.scm 250 */
obj_t BgL_bucketz00_2117;
{ /* ./Ast/hrtype.scm 250 */
int BgL_kz00_2127;
BgL_kz00_2127 = 
(int)(BgL_modz00_2113); 
BgL_bucketz00_2117 = 
VECTOR_REF(BgL_arg2017z00_2108,BgL_kz00_2127); } 
{ /* ./Ast/hrtype.scm 250 */
int BgL_kz00_2129;
BgL_kz00_2129 = 
(int)(BgL_restz00_2115); 
BgL_method2727z00_2105 = 
VECTOR_REF(BgL_bucketz00_2117,BgL_kz00_2129); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_2105)(BgL_method2727z00_2105, 
(obj_t)(BgL_nodez00_2104), BEOA);} } } } } 
}



/* hrtype-node!-box-set!2768 */
obj_t BGl_hrtypezd2nodez12zd2boxzd2setz122768zd2zzast_hrtypez00(obj_t BgL_envz00_2183, obj_t BgL_nodez00_2184)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 241 */
{ 
BgL_boxzd2setz12zc0_bglt BgL_nodez00_1291;
BgL_nodez00_1291 = 
(BgL_boxzd2setz12zc0_bglt)(BgL_nodez00_2184); 
{ /* ./Ast/hrtype.scm 243 */
BgL_varz00_bglt BgL_arg3545z00_1295;
BgL_arg3545z00_1295 = 
(((BgL_boxzd2setz12zc0_bglt)CREF(BgL_nodez00_1291))->BgL_varz00); 
{ /* ./Ast/hrtype.scm 243 */
BgL_nodez00_bglt BgL_nodez00_2048;
BgL_nodez00_2048 = 
(BgL_nodez00_bglt)(BgL_arg3545z00_1295); 
{ /* ./Ast/hrtype.scm 243 */
obj_t BgL_method2727z00_2049;
{ /* ./Ast/hrtype.scm 243 */
BgL_objectz00_bglt BgL_objz00_2050;
BgL_objz00_2050 = 
(BgL_objectz00_bglt)(BgL_nodez00_2048); 
{ /* ./Ast/hrtype.scm 243 */
long BgL_objzd2classzd2numz00_2051;
BgL_objzd2classzd2numz00_2051 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_2050); 
{ /* ./Ast/hrtype.scm 243 */
obj_t BgL_arg2017z00_2052;
{ /* ./Ast/hrtype.scm 243 */
int BgL_auxz00_2346;
BgL_auxz00_2346 = 
(int)(((long)1)); 
BgL_arg2017z00_2052 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2346); } 
{ /* ./Ast/hrtype.scm 243 */
int BgL_offsetz00_2055;
BgL_offsetz00_2055 = 
(int)(BgL_objzd2classzd2numz00_2051); 
{ /* ./Ast/hrtype.scm 243 */
long BgL_offsetz00_2056;
{ /* ./Ast/hrtype.scm 243 */
long BgL_auxz00_2350;
BgL_auxz00_2350 = 
(long)(BgL_offsetz00_2055); 
BgL_offsetz00_2056 = 
(BgL_auxz00_2350-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 243 */
long BgL_modz00_2057;
{ /* ./Ast/hrtype.scm 243 */
int BgL_arg2028z00_2058;
BgL_arg2028z00_2058 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 243 */
long BgL_n2z00_2066;
BgL_n2z00_2066 = 
(long)(BgL_arg2028z00_2058); 
BgL_modz00_2057 = 
(BgL_offsetz00_2056/BgL_n2z00_2066); } } 
{ /* ./Ast/hrtype.scm 243 */
long BgL_restz00_2059;
{ /* ./Ast/hrtype.scm 243 */
int BgL_arg2024z00_2060;
BgL_arg2024z00_2060 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 243 */
long BgL_n2z00_2069;
BgL_n2z00_2069 = 
(long)(BgL_arg2024z00_2060); 
BgL_restz00_2059 = 
(BgL_offsetz00_2056%BgL_n2z00_2069); } } 
{ /* ./Ast/hrtype.scm 243 */

{ /* ./Ast/hrtype.scm 243 */
obj_t BgL_bucketz00_2061;
{ /* ./Ast/hrtype.scm 243 */
int BgL_kz00_2071;
BgL_kz00_2071 = 
(int)(BgL_modz00_2057); 
BgL_bucketz00_2061 = 
VECTOR_REF(BgL_arg2017z00_2052,BgL_kz00_2071); } 
{ /* ./Ast/hrtype.scm 243 */
int BgL_kz00_2073;
BgL_kz00_2073 = 
(int)(BgL_restz00_2059); 
BgL_method2727z00_2049 = 
VECTOR_REF(BgL_bucketz00_2061,BgL_kz00_2073); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_2049)(BgL_method2727z00_2049, 
(obj_t)(BgL_nodez00_2048), BEOA); } } } 
{ /* ./Ast/hrtype.scm 244 */
BgL_nodez00_bglt BgL_arg3549z00_1296;
BgL_arg3549z00_1296 = 
(((BgL_boxzd2setz12zc0_bglt)CREF(BgL_nodez00_1291))->BgL_valuez00); 
{ /* ./Ast/hrtype.scm 244 */
obj_t BgL_method2727z00_2076;
{ /* ./Ast/hrtype.scm 244 */
BgL_objectz00_bglt BgL_objz00_2077;
BgL_objz00_2077 = 
(BgL_objectz00_bglt)(BgL_arg3549z00_1296); 
{ /* ./Ast/hrtype.scm 244 */
long BgL_objzd2classzd2numz00_2078;
BgL_objzd2classzd2numz00_2078 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_2077); 
{ /* ./Ast/hrtype.scm 244 */
obj_t BgL_arg2017z00_2079;
{ /* ./Ast/hrtype.scm 244 */
int BgL_auxz00_2369;
BgL_auxz00_2369 = 
(int)(((long)1)); 
BgL_arg2017z00_2079 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2369); } 
{ /* ./Ast/hrtype.scm 244 */
int BgL_offsetz00_2082;
BgL_offsetz00_2082 = 
(int)(BgL_objzd2classzd2numz00_2078); 
{ /* ./Ast/hrtype.scm 244 */
long BgL_offsetz00_2083;
{ /* ./Ast/hrtype.scm 244 */
long BgL_auxz00_2373;
BgL_auxz00_2373 = 
(long)(BgL_offsetz00_2082); 
BgL_offsetz00_2083 = 
(BgL_auxz00_2373-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 244 */
long BgL_modz00_2084;
{ /* ./Ast/hrtype.scm 244 */
int BgL_arg2028z00_2085;
BgL_arg2028z00_2085 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 244 */
long BgL_n2z00_2093;
BgL_n2z00_2093 = 
(long)(BgL_arg2028z00_2085); 
BgL_modz00_2084 = 
(BgL_offsetz00_2083/BgL_n2z00_2093); } } 
{ /* ./Ast/hrtype.scm 244 */
long BgL_restz00_2086;
{ /* ./Ast/hrtype.scm 244 */
int BgL_arg2024z00_2087;
BgL_arg2024z00_2087 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 244 */
long BgL_n2z00_2096;
BgL_n2z00_2096 = 
(long)(BgL_arg2024z00_2087); 
BgL_restz00_2086 = 
(BgL_offsetz00_2083%BgL_n2z00_2096); } } 
{ /* ./Ast/hrtype.scm 244 */

{ /* ./Ast/hrtype.scm 244 */
obj_t BgL_bucketz00_2088;
{ /* ./Ast/hrtype.scm 244 */
int BgL_kz00_2098;
BgL_kz00_2098 = 
(int)(BgL_modz00_2084); 
BgL_bucketz00_2088 = 
VECTOR_REF(BgL_arg2017z00_2079,BgL_kz00_2098); } 
{ /* ./Ast/hrtype.scm 244 */
int BgL_kz00_2100;
BgL_kz00_2100 = 
(int)(BgL_restz00_2086); 
BgL_method2727z00_2076 = 
VECTOR_REF(BgL_bucketz00_2088,BgL_kz00_2100); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_2076)(BgL_method2727z00_2076, 
(obj_t)(BgL_arg3549z00_1296), BEOA);} } } } 
}



/* hrtype-node!-make-box2766 */
obj_t BGl_hrtypezd2nodez12zd2makezd2box2766zc0zzast_hrtypez00(obj_t BgL_envz00_2185, obj_t BgL_nodez00_2186)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 234 */
{ 
BgL_makezd2boxzd2_bglt BgL_nodez00_1284;
BgL_nodez00_1284 = 
(BgL_makezd2boxzd2_bglt)(BgL_nodez00_2186); 
{ /* ./Ast/hrtype.scm 235 */
BgL_nodez00_bglt BgL_arg3535z00_2019;
BgL_arg3535z00_2019 = 
(((BgL_makezd2boxzd2_bglt)CREF(BgL_nodez00_1284))->BgL_valuez00); 
{ /* ./Ast/hrtype.scm 235 */
obj_t BgL_method2727z00_2022;
{ /* ./Ast/hrtype.scm 235 */
BgL_objectz00_bglt BgL_objz00_2023;
BgL_objz00_2023 = 
(BgL_objectz00_bglt)(BgL_arg3535z00_2019); 
{ /* ./Ast/hrtype.scm 235 */
long BgL_objzd2classzd2numz00_2024;
BgL_objzd2classzd2numz00_2024 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_2023); 
{ /* ./Ast/hrtype.scm 235 */
obj_t BgL_arg2017z00_2025;
{ /* ./Ast/hrtype.scm 235 */
int BgL_auxz00_2393;
BgL_auxz00_2393 = 
(int)(((long)1)); 
BgL_arg2017z00_2025 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2393); } 
{ /* ./Ast/hrtype.scm 235 */
int BgL_offsetz00_2028;
BgL_offsetz00_2028 = 
(int)(BgL_objzd2classzd2numz00_2024); 
{ /* ./Ast/hrtype.scm 235 */
long BgL_offsetz00_2029;
{ /* ./Ast/hrtype.scm 235 */
long BgL_auxz00_2397;
BgL_auxz00_2397 = 
(long)(BgL_offsetz00_2028); 
BgL_offsetz00_2029 = 
(BgL_auxz00_2397-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 235 */
long BgL_modz00_2030;
{ /* ./Ast/hrtype.scm 235 */
int BgL_arg2028z00_2031;
BgL_arg2028z00_2031 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 235 */
long BgL_n2z00_2039;
BgL_n2z00_2039 = 
(long)(BgL_arg2028z00_2031); 
BgL_modz00_2030 = 
(BgL_offsetz00_2029/BgL_n2z00_2039); } } 
{ /* ./Ast/hrtype.scm 235 */
long BgL_restz00_2032;
{ /* ./Ast/hrtype.scm 235 */
int BgL_arg2024z00_2033;
BgL_arg2024z00_2033 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 235 */
long BgL_n2z00_2042;
BgL_n2z00_2042 = 
(long)(BgL_arg2024z00_2033); 
BgL_restz00_2032 = 
(BgL_offsetz00_2029%BgL_n2z00_2042); } } 
{ /* ./Ast/hrtype.scm 235 */

{ /* ./Ast/hrtype.scm 235 */
obj_t BgL_bucketz00_2034;
{ /* ./Ast/hrtype.scm 235 */
int BgL_kz00_2044;
BgL_kz00_2044 = 
(int)(BgL_modz00_2030); 
BgL_bucketz00_2034 = 
VECTOR_REF(BgL_arg2017z00_2025,BgL_kz00_2044); } 
{ /* ./Ast/hrtype.scm 235 */
int BgL_kz00_2046;
BgL_kz00_2046 = 
(int)(BgL_restz00_2032); 
BgL_method2727z00_2022 = 
VECTOR_REF(BgL_bucketz00_2034,BgL_kz00_2046); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_2022)(BgL_method2727z00_2022, 
(obj_t)(BgL_arg3535z00_2019), BEOA);} } } } 
}



/* hrtype-node!-jump-ex-it2764 */
obj_t BGl_hrtypezd2nodez12zd2jumpzd2exzd2it2764z12zzast_hrtypez00(obj_t BgL_envz00_2187, obj_t BgL_nodez00_2188)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 226 */
{ 
BgL_jumpzd2exzd2itz00_bglt BgL_nodez00_1276;
BgL_nodez00_1276 = 
(BgL_jumpzd2exzd2itz00_bglt)(BgL_nodez00_2188); 
{ /* ./Ast/hrtype.scm 228 */
BgL_nodez00_bglt BgL_arg3521z00_1280;
BgL_arg3521z00_1280 = 
(((BgL_jumpzd2exzd2itz00_bglt)CREF(BgL_nodez00_1276))->BgL_exitz00); 
{ /* ./Ast/hrtype.scm 228 */
obj_t BgL_method2727z00_1966;
{ /* ./Ast/hrtype.scm 228 */
BgL_objectz00_bglt BgL_objz00_1967;
BgL_objz00_1967 = 
(BgL_objectz00_bglt)(BgL_arg3521z00_1280); 
{ /* ./Ast/hrtype.scm 228 */
long BgL_objzd2classzd2numz00_1968;
BgL_objzd2classzd2numz00_1968 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1967); 
{ /* ./Ast/hrtype.scm 228 */
obj_t BgL_arg2017z00_1969;
{ /* ./Ast/hrtype.scm 228 */
int BgL_auxz00_2417;
BgL_auxz00_2417 = 
(int)(((long)1)); 
BgL_arg2017z00_1969 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2417); } 
{ /* ./Ast/hrtype.scm 228 */
int BgL_offsetz00_1972;
BgL_offsetz00_1972 = 
(int)(BgL_objzd2classzd2numz00_1968); 
{ /* ./Ast/hrtype.scm 228 */
long BgL_offsetz00_1973;
{ /* ./Ast/hrtype.scm 228 */
long BgL_auxz00_2421;
BgL_auxz00_2421 = 
(long)(BgL_offsetz00_1972); 
BgL_offsetz00_1973 = 
(BgL_auxz00_2421-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 228 */
long BgL_modz00_1974;
{ /* ./Ast/hrtype.scm 228 */
int BgL_arg2028z00_1975;
BgL_arg2028z00_1975 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 228 */
long BgL_n2z00_1983;
BgL_n2z00_1983 = 
(long)(BgL_arg2028z00_1975); 
BgL_modz00_1974 = 
(BgL_offsetz00_1973/BgL_n2z00_1983); } } 
{ /* ./Ast/hrtype.scm 228 */
long BgL_restz00_1976;
{ /* ./Ast/hrtype.scm 228 */
int BgL_arg2024z00_1977;
BgL_arg2024z00_1977 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 228 */
long BgL_n2z00_1986;
BgL_n2z00_1986 = 
(long)(BgL_arg2024z00_1977); 
BgL_restz00_1976 = 
(BgL_offsetz00_1973%BgL_n2z00_1986); } } 
{ /* ./Ast/hrtype.scm 228 */

{ /* ./Ast/hrtype.scm 228 */
obj_t BgL_bucketz00_1978;
{ /* ./Ast/hrtype.scm 228 */
int BgL_kz00_1988;
BgL_kz00_1988 = 
(int)(BgL_modz00_1974); 
BgL_bucketz00_1978 = 
VECTOR_REF(BgL_arg2017z00_1969,BgL_kz00_1988); } 
{ /* ./Ast/hrtype.scm 228 */
int BgL_kz00_1990;
BgL_kz00_1990 = 
(int)(BgL_restz00_1976); 
BgL_method2727z00_1966 = 
VECTOR_REF(BgL_bucketz00_1978,BgL_kz00_1990); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1966)(BgL_method2727z00_1966, 
(obj_t)(BgL_arg3521z00_1280), BEOA); } } 
{ /* ./Ast/hrtype.scm 229 */
BgL_nodez00_bglt BgL_arg3525z00_1281;
BgL_arg3525z00_1281 = 
(((BgL_jumpzd2exzd2itz00_bglt)CREF(BgL_nodez00_1276))->BgL_valuez00); 
{ /* ./Ast/hrtype.scm 229 */
obj_t BgL_method2727z00_1993;
{ /* ./Ast/hrtype.scm 229 */
BgL_objectz00_bglt BgL_objz00_1994;
BgL_objz00_1994 = 
(BgL_objectz00_bglt)(BgL_arg3525z00_1281); 
{ /* ./Ast/hrtype.scm 229 */
long BgL_objzd2classzd2numz00_1995;
BgL_objzd2classzd2numz00_1995 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1994); 
{ /* ./Ast/hrtype.scm 229 */
obj_t BgL_arg2017z00_1996;
{ /* ./Ast/hrtype.scm 229 */
int BgL_auxz00_2440;
BgL_auxz00_2440 = 
(int)(((long)1)); 
BgL_arg2017z00_1996 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2440); } 
{ /* ./Ast/hrtype.scm 229 */
int BgL_offsetz00_1999;
BgL_offsetz00_1999 = 
(int)(BgL_objzd2classzd2numz00_1995); 
{ /* ./Ast/hrtype.scm 229 */
long BgL_offsetz00_2000;
{ /* ./Ast/hrtype.scm 229 */
long BgL_auxz00_2444;
BgL_auxz00_2444 = 
(long)(BgL_offsetz00_1999); 
BgL_offsetz00_2000 = 
(BgL_auxz00_2444-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 229 */
long BgL_modz00_2001;
{ /* ./Ast/hrtype.scm 229 */
int BgL_arg2028z00_2002;
BgL_arg2028z00_2002 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 229 */
long BgL_n2z00_2010;
BgL_n2z00_2010 = 
(long)(BgL_arg2028z00_2002); 
BgL_modz00_2001 = 
(BgL_offsetz00_2000/BgL_n2z00_2010); } } 
{ /* ./Ast/hrtype.scm 229 */
long BgL_restz00_2003;
{ /* ./Ast/hrtype.scm 229 */
int BgL_arg2024z00_2004;
BgL_arg2024z00_2004 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 229 */
long BgL_n2z00_2013;
BgL_n2z00_2013 = 
(long)(BgL_arg2024z00_2004); 
BgL_restz00_2003 = 
(BgL_offsetz00_2000%BgL_n2z00_2013); } } 
{ /* ./Ast/hrtype.scm 229 */

{ /* ./Ast/hrtype.scm 229 */
obj_t BgL_bucketz00_2005;
{ /* ./Ast/hrtype.scm 229 */
int BgL_kz00_2015;
BgL_kz00_2015 = 
(int)(BgL_modz00_2001); 
BgL_bucketz00_2005 = 
VECTOR_REF(BgL_arg2017z00_1996,BgL_kz00_2015); } 
{ /* ./Ast/hrtype.scm 229 */
int BgL_kz00_2017;
BgL_kz00_2017 = 
(int)(BgL_restz00_2003); 
BgL_method2727z00_1993 = 
VECTOR_REF(BgL_bucketz00_2005,BgL_kz00_2017); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1993)(BgL_method2727z00_1993, 
(obj_t)(BgL_arg3525z00_1281), BEOA);} } } } 
}



/* hrtype-node!-set-ex-it2762 */
obj_t BGl_hrtypezd2nodez12zd2setzd2exzd2it2762z12zzast_hrtypez00(obj_t BgL_envz00_2189, obj_t BgL_nodez00_2190)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 217 */
{ 
BgL_setzd2exzd2itz00_bglt BgL_nodez00_1266;
BgL_nodez00_1266 = 
(BgL_setzd2exzd2itz00_bglt)(BgL_nodez00_2190); 
{ /* ./Ast/hrtype.scm 219 */
BgL_variablez00_bglt BgL_arg3500z00_1270;
{ /* ./Ast/hrtype.scm 219 */
BgL_varz00_bglt BgL_arg3503z00_1271;
BgL_arg3503z00_1271 = 
(((BgL_setzd2exzd2itz00_bglt)CREF(BgL_nodez00_1266))->BgL_varz00); 
BgL_arg3500z00_1270 = 
(((BgL_varz00_bglt)CREF(BgL_arg3503z00_1271))->BgL_variablez00); } 
BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(BgL_arg3500z00_1270); } 
{ /* ./Ast/hrtype.scm 220 */
BgL_nodez00_bglt BgL_arg3507z00_1272;
BgL_arg3507z00_1272 = 
(((BgL_setzd2exzd2itz00_bglt)CREF(BgL_nodez00_1266))->BgL_bodyz00); 
{ /* ./Ast/hrtype.scm 220 */
obj_t BgL_method2727z00_1912;
{ /* ./Ast/hrtype.scm 220 */
BgL_objectz00_bglt BgL_objz00_1913;
BgL_objz00_1913 = 
(BgL_objectz00_bglt)(BgL_arg3507z00_1272); 
{ /* ./Ast/hrtype.scm 220 */
long BgL_objzd2classzd2numz00_1914;
BgL_objzd2classzd2numz00_1914 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1913); 
{ /* ./Ast/hrtype.scm 220 */
obj_t BgL_arg2017z00_1915;
{ /* ./Ast/hrtype.scm 220 */
int BgL_auxz00_2467;
BgL_auxz00_2467 = 
(int)(((long)1)); 
BgL_arg2017z00_1915 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2467); } 
{ /* ./Ast/hrtype.scm 220 */
int BgL_offsetz00_1918;
BgL_offsetz00_1918 = 
(int)(BgL_objzd2classzd2numz00_1914); 
{ /* ./Ast/hrtype.scm 220 */
long BgL_offsetz00_1919;
{ /* ./Ast/hrtype.scm 220 */
long BgL_auxz00_2471;
BgL_auxz00_2471 = 
(long)(BgL_offsetz00_1918); 
BgL_offsetz00_1919 = 
(BgL_auxz00_2471-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 220 */
long BgL_modz00_1920;
{ /* ./Ast/hrtype.scm 220 */
int BgL_arg2028z00_1921;
BgL_arg2028z00_1921 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 220 */
long BgL_n2z00_1929;
BgL_n2z00_1929 = 
(long)(BgL_arg2028z00_1921); 
BgL_modz00_1920 = 
(BgL_offsetz00_1919/BgL_n2z00_1929); } } 
{ /* ./Ast/hrtype.scm 220 */
long BgL_restz00_1922;
{ /* ./Ast/hrtype.scm 220 */
int BgL_arg2024z00_1923;
BgL_arg2024z00_1923 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 220 */
long BgL_n2z00_1932;
BgL_n2z00_1932 = 
(long)(BgL_arg2024z00_1923); 
BgL_restz00_1922 = 
(BgL_offsetz00_1919%BgL_n2z00_1932); } } 
{ /* ./Ast/hrtype.scm 220 */

{ /* ./Ast/hrtype.scm 220 */
obj_t BgL_bucketz00_1924;
{ /* ./Ast/hrtype.scm 220 */
int BgL_kz00_1934;
BgL_kz00_1934 = 
(int)(BgL_modz00_1920); 
BgL_bucketz00_1924 = 
VECTOR_REF(BgL_arg2017z00_1915,BgL_kz00_1934); } 
{ /* ./Ast/hrtype.scm 220 */
int BgL_kz00_1936;
BgL_kz00_1936 = 
(int)(BgL_restz00_1922); 
BgL_method2727z00_1912 = 
VECTOR_REF(BgL_bucketz00_1924,BgL_kz00_1936); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1912)(BgL_method2727z00_1912, 
(obj_t)(BgL_arg3507z00_1272), BEOA); } } 
{ /* ./Ast/hrtype.scm 221 */
BgL_varz00_bglt BgL_arg3511z00_1273;
BgL_arg3511z00_1273 = 
(((BgL_setzd2exzd2itz00_bglt)CREF(BgL_nodez00_1266))->BgL_varz00); 
{ /* ./Ast/hrtype.scm 221 */
BgL_nodez00_bglt BgL_nodez00_1938;
BgL_nodez00_1938 = 
(BgL_nodez00_bglt)(BgL_arg3511z00_1273); 
{ /* ./Ast/hrtype.scm 221 */
obj_t BgL_method2727z00_1939;
{ /* ./Ast/hrtype.scm 221 */
BgL_objectz00_bglt BgL_objz00_1940;
BgL_objz00_1940 = 
(BgL_objectz00_bglt)(BgL_nodez00_1938); 
{ /* ./Ast/hrtype.scm 221 */
long BgL_objzd2classzd2numz00_1941;
BgL_objzd2classzd2numz00_1941 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1940); 
{ /* ./Ast/hrtype.scm 221 */
obj_t BgL_arg2017z00_1942;
{ /* ./Ast/hrtype.scm 221 */
int BgL_auxz00_2491;
BgL_auxz00_2491 = 
(int)(((long)1)); 
BgL_arg2017z00_1942 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2491); } 
{ /* ./Ast/hrtype.scm 221 */
int BgL_offsetz00_1945;
BgL_offsetz00_1945 = 
(int)(BgL_objzd2classzd2numz00_1941); 
{ /* ./Ast/hrtype.scm 221 */
long BgL_offsetz00_1946;
{ /* ./Ast/hrtype.scm 221 */
long BgL_auxz00_2495;
BgL_auxz00_2495 = 
(long)(BgL_offsetz00_1945); 
BgL_offsetz00_1946 = 
(BgL_auxz00_2495-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 221 */
long BgL_modz00_1947;
{ /* ./Ast/hrtype.scm 221 */
int BgL_arg2028z00_1948;
BgL_arg2028z00_1948 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 221 */
long BgL_n2z00_1956;
BgL_n2z00_1956 = 
(long)(BgL_arg2028z00_1948); 
BgL_modz00_1947 = 
(BgL_offsetz00_1946/BgL_n2z00_1956); } } 
{ /* ./Ast/hrtype.scm 221 */
long BgL_restz00_1949;
{ /* ./Ast/hrtype.scm 221 */
int BgL_arg2024z00_1950;
BgL_arg2024z00_1950 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 221 */
long BgL_n2z00_1959;
BgL_n2z00_1959 = 
(long)(BgL_arg2024z00_1950); 
BgL_restz00_1949 = 
(BgL_offsetz00_1946%BgL_n2z00_1959); } } 
{ /* ./Ast/hrtype.scm 221 */

{ /* ./Ast/hrtype.scm 221 */
obj_t BgL_bucketz00_1951;
{ /* ./Ast/hrtype.scm 221 */
int BgL_kz00_1961;
BgL_kz00_1961 = 
(int)(BgL_modz00_1947); 
BgL_bucketz00_1951 = 
VECTOR_REF(BgL_arg2017z00_1942,BgL_kz00_1961); } 
{ /* ./Ast/hrtype.scm 221 */
int BgL_kz00_1963;
BgL_kz00_1963 = 
(int)(BgL_restz00_1949); 
BgL_method2727z00_1939 = 
VECTOR_REF(BgL_bucketz00_1951,BgL_kz00_1963); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1939)(BgL_method2727z00_1939, 
(obj_t)(BgL_nodez00_1938), BEOA);} } } } } 
}



/* hrtype-node!-let-var2760 */
obj_t BGl_hrtypezd2nodez12zd2letzd2var2760zc0zzast_hrtypez00(obj_t BgL_envz00_2191, obj_t BgL_nodez00_2192)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 204 */
{ 
BgL_letzd2varzd2_bglt BgL_nodez00_1251;
BgL_nodez00_1251 = 
(BgL_letzd2varzd2_bglt)(BgL_nodez00_2192); 
{ 
obj_t BgL_l2712z00_1255;
{ /* ./Ast/hrtype.scm 206 */
obj_t BgL_arg3475z00_1257;
BgL_arg3475z00_1257 = 
(((BgL_letzd2varzd2_bglt)CREF(BgL_nodez00_1251))->BgL_bindingsz00); 
BgL_l2712z00_1255 = BgL_arg3475z00_1257; 
BgL_forzd2each2713zd2_1256:
{ /* ./Ast/hrtype.scm 206 */
bool_t BgL_test3478z00_1258;
BgL_test3478z00_1258 = 
PAIRP(BgL_l2712z00_1255); 
if(BgL_test3478z00_1258)
{ /* ./Ast/hrtype.scm 206 */
{ /* ./Ast/hrtype.scm 207 */
obj_t BgL_bindingz00_1259;
BgL_bindingz00_1259 = 
CAR(BgL_l2712z00_1255); 
{ /* ./Ast/hrtype.scm 207 */
obj_t BgL_varz00_1260;obj_t BgL_valz00_1261;
BgL_varz00_1260 = 
CAR(BgL_bindingz00_1259); 
BgL_valz00_1261 = 
CDR(BgL_bindingz00_1259); 
{ /* ./Ast/hrtype.scm 209 */
BgL_nodez00_bglt BgL_nodez00_1854;
BgL_nodez00_1854 = 
(BgL_nodez00_bglt)(BgL_valz00_1261); 
{ /* ./Ast/hrtype.scm 209 */
obj_t BgL_method2727z00_1855;
{ /* ./Ast/hrtype.scm 209 */
BgL_objectz00_bglt BgL_objz00_1856;
BgL_objz00_1856 = 
(BgL_objectz00_bglt)(BgL_nodez00_1854); 
{ /* ./Ast/hrtype.scm 209 */
long BgL_objzd2classzd2numz00_1857;
BgL_objzd2classzd2numz00_1857 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1856); 
{ /* ./Ast/hrtype.scm 209 */
obj_t BgL_arg2017z00_1858;
{ /* ./Ast/hrtype.scm 209 */
int BgL_auxz00_2521;
BgL_auxz00_2521 = 
(int)(((long)1)); 
BgL_arg2017z00_1858 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2521); } 
{ /* ./Ast/hrtype.scm 209 */
int BgL_offsetz00_1861;
BgL_offsetz00_1861 = 
(int)(BgL_objzd2classzd2numz00_1857); 
{ /* ./Ast/hrtype.scm 209 */
long BgL_offsetz00_1862;
{ /* ./Ast/hrtype.scm 209 */
long BgL_auxz00_2525;
BgL_auxz00_2525 = 
(long)(BgL_offsetz00_1861); 
BgL_offsetz00_1862 = 
(BgL_auxz00_2525-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 209 */
long BgL_modz00_1863;
{ /* ./Ast/hrtype.scm 209 */
int BgL_arg2028z00_1864;
BgL_arg2028z00_1864 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 209 */
long BgL_n2z00_1872;
BgL_n2z00_1872 = 
(long)(BgL_arg2028z00_1864); 
BgL_modz00_1863 = 
(BgL_offsetz00_1862/BgL_n2z00_1872); } } 
{ /* ./Ast/hrtype.scm 209 */
long BgL_restz00_1865;
{ /* ./Ast/hrtype.scm 209 */
int BgL_arg2024z00_1866;
BgL_arg2024z00_1866 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 209 */
long BgL_n2z00_1875;
BgL_n2z00_1875 = 
(long)(BgL_arg2024z00_1866); 
BgL_restz00_1865 = 
(BgL_offsetz00_1862%BgL_n2z00_1875); } } 
{ /* ./Ast/hrtype.scm 209 */

{ /* ./Ast/hrtype.scm 209 */
obj_t BgL_bucketz00_1867;
{ /* ./Ast/hrtype.scm 209 */
int BgL_kz00_1877;
BgL_kz00_1877 = 
(int)(BgL_modz00_1863); 
BgL_bucketz00_1867 = 
VECTOR_REF(BgL_arg2017z00_1858,BgL_kz00_1877); } 
{ /* ./Ast/hrtype.scm 209 */
int BgL_kz00_1879;
BgL_kz00_1879 = 
(int)(BgL_restz00_1865); 
BgL_method2727z00_1855 = 
VECTOR_REF(BgL_bucketz00_1867,BgL_kz00_1879); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1855)(BgL_method2727z00_1855, 
(obj_t)(BgL_nodez00_1854), BEOA); } } 
BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(
(BgL_variablez00_bglt)(BgL_varz00_1260)); } } 
{ /* ./Ast/hrtype.scm 206 */
obj_t BgL_arg3485z00_1262;
BgL_arg3485z00_1262 = 
CDR(BgL_l2712z00_1255); 
{ 
obj_t BgL_l2712z00_2544;
BgL_l2712z00_2544 = BgL_arg3485z00_1262; 
BgL_l2712z00_1255 = BgL_l2712z00_2544; 
goto BgL_forzd2each2713zd2_1256;} } }  else 
{ /* ./Ast/hrtype.scm 206 */((bool_t)1); } } } } 
{ /* ./Ast/hrtype.scm 212 */
BgL_nodez00_bglt BgL_arg3490z00_1263;
BgL_arg3490z00_1263 = 
(((BgL_letzd2varzd2_bglt)CREF(BgL_nodez00_1251))->BgL_bodyz00); 
{ /* ./Ast/hrtype.scm 212 */
obj_t BgL_method2727z00_1883;
{ /* ./Ast/hrtype.scm 212 */
BgL_objectz00_bglt BgL_objz00_1884;
BgL_objz00_1884 = 
(BgL_objectz00_bglt)(BgL_arg3490z00_1263); 
{ /* ./Ast/hrtype.scm 212 */
long BgL_objzd2classzd2numz00_1885;
BgL_objzd2classzd2numz00_1885 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1884); 
{ /* ./Ast/hrtype.scm 212 */
obj_t BgL_arg2017z00_1886;
{ /* ./Ast/hrtype.scm 212 */
int BgL_auxz00_2548;
BgL_auxz00_2548 = 
(int)(((long)1)); 
BgL_arg2017z00_1886 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2548); } 
{ /* ./Ast/hrtype.scm 212 */
int BgL_offsetz00_1889;
BgL_offsetz00_1889 = 
(int)(BgL_objzd2classzd2numz00_1885); 
{ /* ./Ast/hrtype.scm 212 */
long BgL_offsetz00_1890;
{ /* ./Ast/hrtype.scm 212 */
long BgL_auxz00_2552;
BgL_auxz00_2552 = 
(long)(BgL_offsetz00_1889); 
BgL_offsetz00_1890 = 
(BgL_auxz00_2552-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 212 */
long BgL_modz00_1891;
{ /* ./Ast/hrtype.scm 212 */
int BgL_arg2028z00_1892;
BgL_arg2028z00_1892 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 212 */
long BgL_n2z00_1900;
BgL_n2z00_1900 = 
(long)(BgL_arg2028z00_1892); 
BgL_modz00_1891 = 
(BgL_offsetz00_1890/BgL_n2z00_1900); } } 
{ /* ./Ast/hrtype.scm 212 */
long BgL_restz00_1893;
{ /* ./Ast/hrtype.scm 212 */
int BgL_arg2024z00_1894;
BgL_arg2024z00_1894 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 212 */
long BgL_n2z00_1903;
BgL_n2z00_1903 = 
(long)(BgL_arg2024z00_1894); 
BgL_restz00_1893 = 
(BgL_offsetz00_1890%BgL_n2z00_1903); } } 
{ /* ./Ast/hrtype.scm 212 */

{ /* ./Ast/hrtype.scm 212 */
obj_t BgL_bucketz00_1895;
{ /* ./Ast/hrtype.scm 212 */
int BgL_kz00_1905;
BgL_kz00_1905 = 
(int)(BgL_modz00_1891); 
BgL_bucketz00_1895 = 
VECTOR_REF(BgL_arg2017z00_1886,BgL_kz00_1905); } 
{ /* ./Ast/hrtype.scm 212 */
int BgL_kz00_1907;
BgL_kz00_1907 = 
(int)(BgL_restz00_1893); 
BgL_method2727z00_1883 = 
VECTOR_REF(BgL_bucketz00_1895,BgL_kz00_1907); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1883)(BgL_method2727z00_1883, 
(obj_t)(BgL_arg3490z00_1263), BEOA);} } } } 
}



/* hrtype-node!-let-fun2758 */
obj_t BGl_hrtypezd2nodez12zd2letzd2fun2758zc0zzast_hrtypez00(obj_t BgL_envz00_2193, obj_t BgL_nodez00_2194)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 179 */
{ 
BgL_letzd2funzd2_bglt BgL_nodez00_1223;
BgL_nodez00_1223 = 
(BgL_letzd2funzd2_bglt)(BgL_nodez00_2194); 
{ 
obj_t BgL_l2708z00_1227;
{ /* ./Ast/hrtype.scm 181 */
obj_t BgL_arg3416z00_1229;
BgL_arg3416z00_1229 = 
(((BgL_letzd2funzd2_bglt)CREF(BgL_nodez00_1223))->BgL_localsz00); 
BgL_l2708z00_1227 = BgL_arg3416z00_1229; 
BgL_forzd2each2709zd2_1228:
{ /* ./Ast/hrtype.scm 181 */
bool_t BgL_test3419z00_1230;
BgL_test3419z00_1230 = 
PAIRP(BgL_l2708z00_1227); 
if(BgL_test3419z00_1230)
{ /* ./Ast/hrtype.scm 181 */
{ /* ./Ast/hrtype.scm 182 */
obj_t BgL_localz00_1231;
BgL_localz00_1231 = 
CAR(BgL_l2708z00_1227); 
{ /* ./Ast/hrtype.scm 182 */
BgL_valuez00_bglt BgL_sfunz00_1232;
{ /* ./Ast/hrtype.scm 182 */
BgL_variablez00_bglt BgL_obj1120z00_1781;
BgL_obj1120z00_1781 = 
(BgL_variablez00_bglt)(BgL_localz00_1231); 
BgL_sfunz00_1232 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1120z00_1781))->BgL_valuez00); } 
{ 
obj_t BgL_argsz00_1233;
{ /* ./Ast/hrtype.scm 183 */
obj_t BgL_arg3422z00_1235;
{ /* ./Ast/hrtype.scm 183 */
BgL_sfunz00_bglt BgL_obj1389z00_1782;
BgL_obj1389z00_1782 = 
(BgL_sfunz00_bglt)(BgL_sfunz00_1232); 
BgL_arg3422z00_1235 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1389z00_1782))->BgL_argsz00); } 
BgL_argsz00_1233 = BgL_arg3422z00_1235; 
BgL_loopz00_1234:
{ /* ./Ast/hrtype.scm 184 */
bool_t BgL_test3425z00_1236;
BgL_test3425z00_1236 = 
PAIRP(BgL_argsz00_1233); 
if(BgL_test3425z00_1236)
{ /* ./Ast/hrtype.scm 185 */
obj_t BgL_argz00_1237;
BgL_argz00_1237 = 
CAR(BgL_argsz00_1233); 
{ /* ./Ast/hrtype.scm 187 */
bool_t BgL_test3426z00_1238;
BgL_test3426z00_1238 = 
BGl_iszd2azf3z21zz__objectz00(BgL_argz00_1237, BGl_typez00zztype_typez00); 
if(BgL_test3426z00_1238)
{ /* ./Ast/hrtype.scm 187 */
{ /* ./Ast/hrtype.scm 188 */
BgL_typez00_bglt BgL_arg3428z00_1239;
{ /* ./Ast/hrtype.scm 188 */
obj_t BgL_arg3431z00_1240;
{ /* ./Ast/hrtype.scm 188 */
BgL_typez00_bglt BgL_obj1003z00_1786;
BgL_obj1003z00_1786 = 
(BgL_typez00_bglt)(BgL_argz00_1237); 
BgL_arg3431z00_1240 = 
(((BgL_typez00_bglt)CREF(BgL_obj1003z00_1786))->BgL_idz00); } 
BgL_arg3428z00_1239 = 
BGl_findzd2typezd2zztype_envz00(BgL_arg3431z00_1240); } 
{ /* ./Ast/hrtype.scm 188 */
obj_t BgL_objz00_1788;
BgL_objz00_1788 = 
(obj_t)(BgL_arg3428z00_1239); 
SET_CAR(BgL_argsz00_1233, BgL_objz00_1788); } } }  else 
{ /* ./Ast/hrtype.scm 189 */
bool_t BgL_test3434z00_1241;
BgL_test3434z00_1241 = 
BGl_iszd2azf3z21zz__objectz00(BgL_argz00_1237, BGl_localz00zzast_varz00); 
if(BgL_test3434z00_1241)
{ /* ./Ast/hrtype.scm 189 */
BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(
(BgL_variablez00_bglt)(BgL_argz00_1237)); }  else 
{ /* ./Ast/hrtype.scm 189 */
{ /* ./Ast/hrtype.scm 192 */
obj_t BgL_arg3439z00_1244;
BgL_arg3439z00_1244 = 
BGl_shapez00zztools_shapez00(BgL_argz00_1237); 
FAILURE(BGl_string4092z00zzast_hrtypez00,BGl_string4093z00zzast_hrtypez00,BgL_arg3439z00_1244);} } } } 
{ /* ./Ast/hrtype.scm 195 */
obj_t BgL_arg3446z00_1245;
BgL_arg3446z00_1245 = 
CDR(BgL_argsz00_1233); 
{ 
obj_t BgL_argsz00_2594;
BgL_argsz00_2594 = BgL_arg3446z00_1245; 
BgL_argsz00_1233 = BgL_argsz00_2594; 
goto BgL_loopz00_1234;} } }  else 
{ /* ./Ast/hrtype.scm 184 */((bool_t)0); } } } } 
BGl_restorezd2variablezd2typez12z12zzast_hrtypez00(
(BgL_variablez00_bglt)(BgL_localz00_1231)); 
{ /* ./Ast/hrtype.scm 197 */
obj_t BgL_arg3453z00_1246;
{ /* ./Ast/hrtype.scm 197 */
BgL_sfunz00_bglt BgL_obj1392z00_1794;
BgL_obj1392z00_1794 = 
(BgL_sfunz00_bglt)(BgL_sfunz00_1232); 
BgL_arg3453z00_1246 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1392z00_1794))->BgL_bodyz00); } 
{ /* ./Ast/hrtype.scm 197 */
BgL_nodez00_bglt BgL_nodez00_1795;
BgL_nodez00_1795 = 
(BgL_nodez00_bglt)(BgL_arg3453z00_1246); 
{ /* ./Ast/hrtype.scm 197 */
obj_t BgL_method2727z00_1796;
{ /* ./Ast/hrtype.scm 197 */
BgL_objectz00_bglt BgL_objz00_1797;
BgL_objz00_1797 = 
(BgL_objectz00_bglt)(BgL_nodez00_1795); 
{ /* ./Ast/hrtype.scm 197 */
long BgL_objzd2classzd2numz00_1798;
BgL_objzd2classzd2numz00_1798 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1797); 
{ /* ./Ast/hrtype.scm 197 */
obj_t BgL_arg2017z00_1799;
{ /* ./Ast/hrtype.scm 197 */
int BgL_auxz00_2602;
BgL_auxz00_2602 = 
(int)(((long)1)); 
BgL_arg2017z00_1799 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2602); } 
{ /* ./Ast/hrtype.scm 197 */
int BgL_offsetz00_1802;
BgL_offsetz00_1802 = 
(int)(BgL_objzd2classzd2numz00_1798); 
{ /* ./Ast/hrtype.scm 197 */
long BgL_offsetz00_1803;
{ /* ./Ast/hrtype.scm 197 */
long BgL_auxz00_2606;
BgL_auxz00_2606 = 
(long)(BgL_offsetz00_1802); 
BgL_offsetz00_1803 = 
(BgL_auxz00_2606-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 197 */
long BgL_modz00_1804;
{ /* ./Ast/hrtype.scm 197 */
int BgL_arg2028z00_1805;
BgL_arg2028z00_1805 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 197 */
long BgL_n2z00_1813;
BgL_n2z00_1813 = 
(long)(BgL_arg2028z00_1805); 
BgL_modz00_1804 = 
(BgL_offsetz00_1803/BgL_n2z00_1813); } } 
{ /* ./Ast/hrtype.scm 197 */
long BgL_restz00_1806;
{ /* ./Ast/hrtype.scm 197 */
int BgL_arg2024z00_1807;
BgL_arg2024z00_1807 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 197 */
long BgL_n2z00_1816;
BgL_n2z00_1816 = 
(long)(BgL_arg2024z00_1807); 
BgL_restz00_1806 = 
(BgL_offsetz00_1803%BgL_n2z00_1816); } } 
{ /* ./Ast/hrtype.scm 197 */

{ /* ./Ast/hrtype.scm 197 */
obj_t BgL_bucketz00_1808;
{ /* ./Ast/hrtype.scm 197 */
int BgL_kz00_1818;
BgL_kz00_1818 = 
(int)(BgL_modz00_1804); 
BgL_bucketz00_1808 = 
VECTOR_REF(BgL_arg2017z00_1799,BgL_kz00_1818); } 
{ /* ./Ast/hrtype.scm 197 */
int BgL_kz00_1820;
BgL_kz00_1820 = 
(int)(BgL_restz00_1806); 
BgL_method2727z00_1796 = 
VECTOR_REF(BgL_bucketz00_1808,BgL_kz00_1820); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1796)(BgL_method2727z00_1796, 
(obj_t)(BgL_nodez00_1795), BEOA); } } } } } 
{ /* ./Ast/hrtype.scm 181 */
obj_t BgL_arg3459z00_1247;
BgL_arg3459z00_1247 = 
CDR(BgL_l2708z00_1227); 
{ 
obj_t BgL_l2708z00_2623;
BgL_l2708z00_2623 = BgL_arg3459z00_1247; 
BgL_l2708z00_1227 = BgL_l2708z00_2623; 
goto BgL_forzd2each2709zd2_1228;} } }  else 
{ /* ./Ast/hrtype.scm 181 */((bool_t)1); } } } } 
{ /* ./Ast/hrtype.scm 199 */
BgL_nodez00_bglt BgL_arg3465z00_1248;
BgL_arg3465z00_1248 = 
(((BgL_letzd2funzd2_bglt)CREF(BgL_nodez00_1223))->BgL_bodyz00); 
{ /* ./Ast/hrtype.scm 199 */
obj_t BgL_method2727z00_1824;
{ /* ./Ast/hrtype.scm 199 */
BgL_objectz00_bglt BgL_objz00_1825;
BgL_objz00_1825 = 
(BgL_objectz00_bglt)(BgL_arg3465z00_1248); 
{ /* ./Ast/hrtype.scm 199 */
long BgL_objzd2classzd2numz00_1826;
BgL_objzd2classzd2numz00_1826 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1825); 
{ /* ./Ast/hrtype.scm 199 */
obj_t BgL_arg2017z00_1827;
{ /* ./Ast/hrtype.scm 199 */
int BgL_auxz00_2627;
BgL_auxz00_2627 = 
(int)(((long)1)); 
BgL_arg2017z00_1827 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2627); } 
{ /* ./Ast/hrtype.scm 199 */
int BgL_offsetz00_1830;
BgL_offsetz00_1830 = 
(int)(BgL_objzd2classzd2numz00_1826); 
{ /* ./Ast/hrtype.scm 199 */
long BgL_offsetz00_1831;
{ /* ./Ast/hrtype.scm 199 */
long BgL_auxz00_2631;
BgL_auxz00_2631 = 
(long)(BgL_offsetz00_1830); 
BgL_offsetz00_1831 = 
(BgL_auxz00_2631-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 199 */
long BgL_modz00_1832;
{ /* ./Ast/hrtype.scm 199 */
int BgL_arg2028z00_1833;
BgL_arg2028z00_1833 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 199 */
long BgL_n2z00_1841;
BgL_n2z00_1841 = 
(long)(BgL_arg2028z00_1833); 
BgL_modz00_1832 = 
(BgL_offsetz00_1831/BgL_n2z00_1841); } } 
{ /* ./Ast/hrtype.scm 199 */
long BgL_restz00_1834;
{ /* ./Ast/hrtype.scm 199 */
int BgL_arg2024z00_1835;
BgL_arg2024z00_1835 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 199 */
long BgL_n2z00_1844;
BgL_n2z00_1844 = 
(long)(BgL_arg2024z00_1835); 
BgL_restz00_1834 = 
(BgL_offsetz00_1831%BgL_n2z00_1844); } } 
{ /* ./Ast/hrtype.scm 199 */

{ /* ./Ast/hrtype.scm 199 */
obj_t BgL_bucketz00_1836;
{ /* ./Ast/hrtype.scm 199 */
int BgL_kz00_1846;
BgL_kz00_1846 = 
(int)(BgL_modz00_1832); 
BgL_bucketz00_1836 = 
VECTOR_REF(BgL_arg2017z00_1827,BgL_kz00_1846); } 
{ /* ./Ast/hrtype.scm 199 */
int BgL_kz00_1848;
BgL_kz00_1848 = 
(int)(BgL_restz00_1834); 
BgL_method2727z00_1824 = 
VECTOR_REF(BgL_bucketz00_1836,BgL_kz00_1848); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1824)(BgL_method2727z00_1824, 
(obj_t)(BgL_arg3465z00_1248), BEOA);} } } } 
}



/* hrtype-node!-select2756 */
obj_t BGl_hrtypezd2nodez12zd2select2756z12zzast_hrtypez00(obj_t BgL_envz00_2195, obj_t BgL_nodez00_2196)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 169 */
{ 
BgL_selectz00_bglt BgL_nodez00_1209;
{ /* ./Ast/hrtype.scm 170 */
bool_t BgL_auxz00_2648;
BgL_nodez00_1209 = 
(BgL_selectz00_bglt)(BgL_nodez00_2196); 
{ /* ./Ast/hrtype.scm 171 */
BgL_nodez00_bglt BgL_arg3391z00_1213;
BgL_arg3391z00_1213 = 
(((BgL_selectz00_bglt)CREF(BgL_nodez00_1209))->BgL_testz00); 
{ /* ./Ast/hrtype.scm 171 */
obj_t BgL_method2727z00_1722;
{ /* ./Ast/hrtype.scm 171 */
BgL_objectz00_bglt BgL_objz00_1723;
BgL_objz00_1723 = 
(BgL_objectz00_bglt)(BgL_arg3391z00_1213); 
{ /* ./Ast/hrtype.scm 171 */
long BgL_objzd2classzd2numz00_1724;
BgL_objzd2classzd2numz00_1724 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1723); 
{ /* ./Ast/hrtype.scm 171 */
obj_t BgL_arg2017z00_1725;
{ /* ./Ast/hrtype.scm 171 */
int BgL_auxz00_2652;
BgL_auxz00_2652 = 
(int)(((long)1)); 
BgL_arg2017z00_1725 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2652); } 
{ /* ./Ast/hrtype.scm 171 */
int BgL_offsetz00_1728;
BgL_offsetz00_1728 = 
(int)(BgL_objzd2classzd2numz00_1724); 
{ /* ./Ast/hrtype.scm 171 */
long BgL_offsetz00_1729;
{ /* ./Ast/hrtype.scm 171 */
long BgL_auxz00_2656;
BgL_auxz00_2656 = 
(long)(BgL_offsetz00_1728); 
BgL_offsetz00_1729 = 
(BgL_auxz00_2656-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 171 */
long BgL_modz00_1730;
{ /* ./Ast/hrtype.scm 171 */
int BgL_arg2028z00_1731;
BgL_arg2028z00_1731 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 171 */
long BgL_n2z00_1739;
BgL_n2z00_1739 = 
(long)(BgL_arg2028z00_1731); 
BgL_modz00_1730 = 
(BgL_offsetz00_1729/BgL_n2z00_1739); } } 
{ /* ./Ast/hrtype.scm 171 */
long BgL_restz00_1732;
{ /* ./Ast/hrtype.scm 171 */
int BgL_arg2024z00_1733;
BgL_arg2024z00_1733 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 171 */
long BgL_n2z00_1742;
BgL_n2z00_1742 = 
(long)(BgL_arg2024z00_1733); 
BgL_restz00_1732 = 
(BgL_offsetz00_1729%BgL_n2z00_1742); } } 
{ /* ./Ast/hrtype.scm 171 */

{ /* ./Ast/hrtype.scm 171 */
obj_t BgL_bucketz00_1734;
{ /* ./Ast/hrtype.scm 171 */
int BgL_kz00_1744;
BgL_kz00_1744 = 
(int)(BgL_modz00_1730); 
BgL_bucketz00_1734 = 
VECTOR_REF(BgL_arg2017z00_1725,BgL_kz00_1744); } 
{ /* ./Ast/hrtype.scm 171 */
int BgL_kz00_1746;
BgL_kz00_1746 = 
(int)(BgL_restz00_1732); 
BgL_method2727z00_1722 = 
VECTOR_REF(BgL_bucketz00_1734,BgL_kz00_1746); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1722)(BgL_method2727z00_1722, 
(obj_t)(BgL_arg3391z00_1213), BEOA); } } 
{ 
obj_t BgL_l2704z00_1214;
{ /* ./Ast/hrtype.scm 172 */
obj_t BgL_arg3395z00_1216;
BgL_arg3395z00_1216 = 
(((BgL_selectz00_bglt)CREF(BgL_nodez00_1209))->BgL_clausesz00); 
BgL_l2704z00_1214 = BgL_arg3395z00_1216; 
BgL_forzd2each2705zd2_1215:
{ /* ./Ast/hrtype.scm 172 */
bool_t BgL_test3398z00_1217;
BgL_test3398z00_1217 = 
PAIRP(BgL_l2704z00_1214); 
if(BgL_test3398z00_1217)
{ /* ./Ast/hrtype.scm 172 */
{ /* ./Ast/hrtype.scm 173 */
obj_t BgL_clausez00_1218;
BgL_clausez00_1218 = 
CAR(BgL_l2704z00_1214); 
{ /* ./Ast/hrtype.scm 173 */
obj_t BgL_arg3400z00_1219;
BgL_arg3400z00_1219 = 
CDR(BgL_clausez00_1218); 
{ /* ./Ast/hrtype.scm 173 */
BgL_nodez00_bglt BgL_nodez00_1751;
BgL_nodez00_1751 = 
(BgL_nodez00_bglt)(BgL_arg3400z00_1219); 
{ /* ./Ast/hrtype.scm 173 */
obj_t BgL_method2727z00_1752;
{ /* ./Ast/hrtype.scm 173 */
BgL_objectz00_bglt BgL_objz00_1753;
BgL_objz00_1753 = 
(BgL_objectz00_bglt)(BgL_nodez00_1751); 
{ /* ./Ast/hrtype.scm 173 */
long BgL_objzd2classzd2numz00_1754;
BgL_objzd2classzd2numz00_1754 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1753); 
{ /* ./Ast/hrtype.scm 173 */
obj_t BgL_arg2017z00_1755;
{ /* ./Ast/hrtype.scm 173 */
int BgL_auxz00_2680;
BgL_auxz00_2680 = 
(int)(((long)1)); 
BgL_arg2017z00_1755 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2680); } 
{ /* ./Ast/hrtype.scm 173 */
int BgL_offsetz00_1758;
BgL_offsetz00_1758 = 
(int)(BgL_objzd2classzd2numz00_1754); 
{ /* ./Ast/hrtype.scm 173 */
long BgL_offsetz00_1759;
{ /* ./Ast/hrtype.scm 173 */
long BgL_auxz00_2684;
BgL_auxz00_2684 = 
(long)(BgL_offsetz00_1758); 
BgL_offsetz00_1759 = 
(BgL_auxz00_2684-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 173 */
long BgL_modz00_1760;
{ /* ./Ast/hrtype.scm 173 */
int BgL_arg2028z00_1761;
BgL_arg2028z00_1761 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 173 */
long BgL_n2z00_1769;
BgL_n2z00_1769 = 
(long)(BgL_arg2028z00_1761); 
BgL_modz00_1760 = 
(BgL_offsetz00_1759/BgL_n2z00_1769); } } 
{ /* ./Ast/hrtype.scm 173 */
long BgL_restz00_1762;
{ /* ./Ast/hrtype.scm 173 */
int BgL_arg2024z00_1763;
BgL_arg2024z00_1763 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 173 */
long BgL_n2z00_1772;
BgL_n2z00_1772 = 
(long)(BgL_arg2024z00_1763); 
BgL_restz00_1762 = 
(BgL_offsetz00_1759%BgL_n2z00_1772); } } 
{ /* ./Ast/hrtype.scm 173 */

{ /* ./Ast/hrtype.scm 173 */
obj_t BgL_bucketz00_1764;
{ /* ./Ast/hrtype.scm 173 */
int BgL_kz00_1774;
BgL_kz00_1774 = 
(int)(BgL_modz00_1760); 
BgL_bucketz00_1764 = 
VECTOR_REF(BgL_arg2017z00_1755,BgL_kz00_1774); } 
{ /* ./Ast/hrtype.scm 173 */
int BgL_kz00_1776;
BgL_kz00_1776 = 
(int)(BgL_restz00_1762); 
BgL_method2727z00_1752 = 
VECTOR_REF(BgL_bucketz00_1764,BgL_kz00_1776); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1752)(BgL_method2727z00_1752, 
(obj_t)(BgL_nodez00_1751), BEOA); } } } } 
{ /* ./Ast/hrtype.scm 172 */
obj_t BgL_arg3405z00_1220;
BgL_arg3405z00_1220 = 
CDR(BgL_l2704z00_1214); 
{ 
obj_t BgL_l2704z00_2701;
BgL_l2704z00_2701 = BgL_arg3405z00_1220; 
BgL_l2704z00_1214 = BgL_l2704z00_2701; 
goto BgL_forzd2each2705zd2_1215;} } }  else 
{ /* ./Ast/hrtype.scm 172 */
BgL_auxz00_2648 = ((bool_t)1); } } } } 
return 
BBOOL(BgL_auxz00_2648);} } } 
}



/* hrtype-node!-fail2754 */
obj_t BGl_hrtypezd2nodez12zd2fail2754z12zzast_hrtypez00(obj_t BgL_envz00_2197, obj_t BgL_nodez00_2198)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 160 */
{ 
BgL_failz00_bglt BgL_nodez00_1200;
BgL_nodez00_1200 = 
(BgL_failz00_bglt)(BgL_nodez00_2198); 
{ /* ./Ast/hrtype.scm 162 */
BgL_nodez00_bglt BgL_arg3373z00_1204;
BgL_arg3373z00_1204 = 
(((BgL_failz00_bglt)CREF(BgL_nodez00_1200))->BgL_procz00); 
{ /* ./Ast/hrtype.scm 162 */
obj_t BgL_method2727z00_1641;
{ /* ./Ast/hrtype.scm 162 */
BgL_objectz00_bglt BgL_objz00_1642;
BgL_objz00_1642 = 
(BgL_objectz00_bglt)(BgL_arg3373z00_1204); 
{ /* ./Ast/hrtype.scm 162 */
long BgL_objzd2classzd2numz00_1643;
BgL_objzd2classzd2numz00_1643 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1642); 
{ /* ./Ast/hrtype.scm 162 */
obj_t BgL_arg2017z00_1644;
{ /* ./Ast/hrtype.scm 162 */
int BgL_auxz00_2707;
BgL_auxz00_2707 = 
(int)(((long)1)); 
BgL_arg2017z00_1644 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2707); } 
{ /* ./Ast/hrtype.scm 162 */
int BgL_offsetz00_1647;
BgL_offsetz00_1647 = 
(int)(BgL_objzd2classzd2numz00_1643); 
{ /* ./Ast/hrtype.scm 162 */
long BgL_offsetz00_1648;
{ /* ./Ast/hrtype.scm 162 */
long BgL_auxz00_2711;
BgL_auxz00_2711 = 
(long)(BgL_offsetz00_1647); 
BgL_offsetz00_1648 = 
(BgL_auxz00_2711-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 162 */
long BgL_modz00_1649;
{ /* ./Ast/hrtype.scm 162 */
int BgL_arg2028z00_1650;
BgL_arg2028z00_1650 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 162 */
long BgL_n2z00_1658;
BgL_n2z00_1658 = 
(long)(BgL_arg2028z00_1650); 
BgL_modz00_1649 = 
(BgL_offsetz00_1648/BgL_n2z00_1658); } } 
{ /* ./Ast/hrtype.scm 162 */
long BgL_restz00_1651;
{ /* ./Ast/hrtype.scm 162 */
int BgL_arg2024z00_1652;
BgL_arg2024z00_1652 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 162 */
long BgL_n2z00_1661;
BgL_n2z00_1661 = 
(long)(BgL_arg2024z00_1652); 
BgL_restz00_1651 = 
(BgL_offsetz00_1648%BgL_n2z00_1661); } } 
{ /* ./Ast/hrtype.scm 162 */

{ /* ./Ast/hrtype.scm 162 */
obj_t BgL_bucketz00_1653;
{ /* ./Ast/hrtype.scm 162 */
int BgL_kz00_1663;
BgL_kz00_1663 = 
(int)(BgL_modz00_1649); 
BgL_bucketz00_1653 = 
VECTOR_REF(BgL_arg2017z00_1644,BgL_kz00_1663); } 
{ /* ./Ast/hrtype.scm 162 */
int BgL_kz00_1665;
BgL_kz00_1665 = 
(int)(BgL_restz00_1651); 
BgL_method2727z00_1641 = 
VECTOR_REF(BgL_bucketz00_1653,BgL_kz00_1665); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1641)(BgL_method2727z00_1641, 
(obj_t)(BgL_arg3373z00_1204), BEOA); } } 
{ /* ./Ast/hrtype.scm 163 */
BgL_nodez00_bglt BgL_arg3377z00_1205;
BgL_arg3377z00_1205 = 
(((BgL_failz00_bglt)CREF(BgL_nodez00_1200))->BgL_msgz00); 
{ /* ./Ast/hrtype.scm 163 */
obj_t BgL_method2727z00_1668;
{ /* ./Ast/hrtype.scm 163 */
BgL_objectz00_bglt BgL_objz00_1669;
BgL_objz00_1669 = 
(BgL_objectz00_bglt)(BgL_arg3377z00_1205); 
{ /* ./Ast/hrtype.scm 163 */
long BgL_objzd2classzd2numz00_1670;
BgL_objzd2classzd2numz00_1670 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1669); 
{ /* ./Ast/hrtype.scm 163 */
obj_t BgL_arg2017z00_1671;
{ /* ./Ast/hrtype.scm 163 */
int BgL_auxz00_2730;
BgL_auxz00_2730 = 
(int)(((long)1)); 
BgL_arg2017z00_1671 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2730); } 
{ /* ./Ast/hrtype.scm 163 */
int BgL_offsetz00_1674;
BgL_offsetz00_1674 = 
(int)(BgL_objzd2classzd2numz00_1670); 
{ /* ./Ast/hrtype.scm 163 */
long BgL_offsetz00_1675;
{ /* ./Ast/hrtype.scm 163 */
long BgL_auxz00_2734;
BgL_auxz00_2734 = 
(long)(BgL_offsetz00_1674); 
BgL_offsetz00_1675 = 
(BgL_auxz00_2734-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 163 */
long BgL_modz00_1676;
{ /* ./Ast/hrtype.scm 163 */
int BgL_arg2028z00_1677;
BgL_arg2028z00_1677 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 163 */
long BgL_n2z00_1685;
BgL_n2z00_1685 = 
(long)(BgL_arg2028z00_1677); 
BgL_modz00_1676 = 
(BgL_offsetz00_1675/BgL_n2z00_1685); } } 
{ /* ./Ast/hrtype.scm 163 */
long BgL_restz00_1678;
{ /* ./Ast/hrtype.scm 163 */
int BgL_arg2024z00_1679;
BgL_arg2024z00_1679 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 163 */
long BgL_n2z00_1688;
BgL_n2z00_1688 = 
(long)(BgL_arg2024z00_1679); 
BgL_restz00_1678 = 
(BgL_offsetz00_1675%BgL_n2z00_1688); } } 
{ /* ./Ast/hrtype.scm 163 */

{ /* ./Ast/hrtype.scm 163 */
obj_t BgL_bucketz00_1680;
{ /* ./Ast/hrtype.scm 163 */
int BgL_kz00_1690;
BgL_kz00_1690 = 
(int)(BgL_modz00_1676); 
BgL_bucketz00_1680 = 
VECTOR_REF(BgL_arg2017z00_1671,BgL_kz00_1690); } 
{ /* ./Ast/hrtype.scm 163 */
int BgL_kz00_1692;
BgL_kz00_1692 = 
(int)(BgL_restz00_1678); 
BgL_method2727z00_1668 = 
VECTOR_REF(BgL_bucketz00_1680,BgL_kz00_1692); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1668)(BgL_method2727z00_1668, 
(obj_t)(BgL_arg3377z00_1205), BEOA); } } 
{ /* ./Ast/hrtype.scm 164 */
BgL_nodez00_bglt BgL_arg3381z00_1206;
BgL_arg3381z00_1206 = 
(((BgL_failz00_bglt)CREF(BgL_nodez00_1200))->BgL_objz00); 
{ /* ./Ast/hrtype.scm 164 */
obj_t BgL_method2727z00_1695;
{ /* ./Ast/hrtype.scm 164 */
BgL_objectz00_bglt BgL_objz00_1696;
BgL_objz00_1696 = 
(BgL_objectz00_bglt)(BgL_arg3381z00_1206); 
{ /* ./Ast/hrtype.scm 164 */
long BgL_objzd2classzd2numz00_1697;
BgL_objzd2classzd2numz00_1697 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1696); 
{ /* ./Ast/hrtype.scm 164 */
obj_t BgL_arg2017z00_1698;
{ /* ./Ast/hrtype.scm 164 */
int BgL_auxz00_2753;
BgL_auxz00_2753 = 
(int)(((long)1)); 
BgL_arg2017z00_1698 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2753); } 
{ /* ./Ast/hrtype.scm 164 */
int BgL_offsetz00_1701;
BgL_offsetz00_1701 = 
(int)(BgL_objzd2classzd2numz00_1697); 
{ /* ./Ast/hrtype.scm 164 */
long BgL_offsetz00_1702;
{ /* ./Ast/hrtype.scm 164 */
long BgL_auxz00_2757;
BgL_auxz00_2757 = 
(long)(BgL_offsetz00_1701); 
BgL_offsetz00_1702 = 
(BgL_auxz00_2757-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 164 */
long BgL_modz00_1703;
{ /* ./Ast/hrtype.scm 164 */
int BgL_arg2028z00_1704;
BgL_arg2028z00_1704 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 164 */
long BgL_n2z00_1712;
BgL_n2z00_1712 = 
(long)(BgL_arg2028z00_1704); 
BgL_modz00_1703 = 
(BgL_offsetz00_1702/BgL_n2z00_1712); } } 
{ /* ./Ast/hrtype.scm 164 */
long BgL_restz00_1705;
{ /* ./Ast/hrtype.scm 164 */
int BgL_arg2024z00_1706;
BgL_arg2024z00_1706 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 164 */
long BgL_n2z00_1715;
BgL_n2z00_1715 = 
(long)(BgL_arg2024z00_1706); 
BgL_restz00_1705 = 
(BgL_offsetz00_1702%BgL_n2z00_1715); } } 
{ /* ./Ast/hrtype.scm 164 */

{ /* ./Ast/hrtype.scm 164 */
obj_t BgL_bucketz00_1707;
{ /* ./Ast/hrtype.scm 164 */
int BgL_kz00_1717;
BgL_kz00_1717 = 
(int)(BgL_modz00_1703); 
BgL_bucketz00_1707 = 
VECTOR_REF(BgL_arg2017z00_1698,BgL_kz00_1717); } 
{ /* ./Ast/hrtype.scm 164 */
int BgL_kz00_1719;
BgL_kz00_1719 = 
(int)(BgL_restz00_1705); 
BgL_method2727z00_1695 = 
VECTOR_REF(BgL_bucketz00_1707,BgL_kz00_1719); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1695)(BgL_method2727z00_1695, 
(obj_t)(BgL_arg3381z00_1206), BEOA);} } } } 
}



/* hrtype-node!-conditional2752 */
obj_t BGl_hrtypezd2nodez12zd2conditional2752z12zzast_hrtypez00(obj_t BgL_envz00_2199, obj_t BgL_nodez00_2200)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 151 */
{ 
BgL_conditionalz00_bglt BgL_nodez00_1191;
BgL_nodez00_1191 = 
(BgL_conditionalz00_bglt)(BgL_nodez00_2200); 
{ /* ./Ast/hrtype.scm 153 */
BgL_nodez00_bglt BgL_arg3355z00_1195;
BgL_arg3355z00_1195 = 
(((BgL_conditionalz00_bglt)CREF(BgL_nodez00_1191))->BgL_testz00); 
{ /* ./Ast/hrtype.scm 153 */
obj_t BgL_method2727z00_1560;
{ /* ./Ast/hrtype.scm 153 */
BgL_objectz00_bglt BgL_objz00_1561;
BgL_objz00_1561 = 
(BgL_objectz00_bglt)(BgL_arg3355z00_1195); 
{ /* ./Ast/hrtype.scm 153 */
long BgL_objzd2classzd2numz00_1562;
BgL_objzd2classzd2numz00_1562 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1561); 
{ /* ./Ast/hrtype.scm 153 */
obj_t BgL_arg2017z00_1563;
{ /* ./Ast/hrtype.scm 153 */
int BgL_auxz00_2777;
BgL_auxz00_2777 = 
(int)(((long)1)); 
BgL_arg2017z00_1563 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2777); } 
{ /* ./Ast/hrtype.scm 153 */
int BgL_offsetz00_1566;
BgL_offsetz00_1566 = 
(int)(BgL_objzd2classzd2numz00_1562); 
{ /* ./Ast/hrtype.scm 153 */
long BgL_offsetz00_1567;
{ /* ./Ast/hrtype.scm 153 */
long BgL_auxz00_2781;
BgL_auxz00_2781 = 
(long)(BgL_offsetz00_1566); 
BgL_offsetz00_1567 = 
(BgL_auxz00_2781-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 153 */
long BgL_modz00_1568;
{ /* ./Ast/hrtype.scm 153 */
int BgL_arg2028z00_1569;
BgL_arg2028z00_1569 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 153 */
long BgL_n2z00_1577;
BgL_n2z00_1577 = 
(long)(BgL_arg2028z00_1569); 
BgL_modz00_1568 = 
(BgL_offsetz00_1567/BgL_n2z00_1577); } } 
{ /* ./Ast/hrtype.scm 153 */
long BgL_restz00_1570;
{ /* ./Ast/hrtype.scm 153 */
int BgL_arg2024z00_1571;
BgL_arg2024z00_1571 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 153 */
long BgL_n2z00_1580;
BgL_n2z00_1580 = 
(long)(BgL_arg2024z00_1571); 
BgL_restz00_1570 = 
(BgL_offsetz00_1567%BgL_n2z00_1580); } } 
{ /* ./Ast/hrtype.scm 153 */

{ /* ./Ast/hrtype.scm 153 */
obj_t BgL_bucketz00_1572;
{ /* ./Ast/hrtype.scm 153 */
int BgL_kz00_1582;
BgL_kz00_1582 = 
(int)(BgL_modz00_1568); 
BgL_bucketz00_1572 = 
VECTOR_REF(BgL_arg2017z00_1563,BgL_kz00_1582); } 
{ /* ./Ast/hrtype.scm 153 */
int BgL_kz00_1584;
BgL_kz00_1584 = 
(int)(BgL_restz00_1570); 
BgL_method2727z00_1560 = 
VECTOR_REF(BgL_bucketz00_1572,BgL_kz00_1584); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1560)(BgL_method2727z00_1560, 
(obj_t)(BgL_arg3355z00_1195), BEOA); } } 
{ /* ./Ast/hrtype.scm 154 */
BgL_nodez00_bglt BgL_arg3359z00_1196;
BgL_arg3359z00_1196 = 
(((BgL_conditionalz00_bglt)CREF(BgL_nodez00_1191))->BgL_truez00); 
{ /* ./Ast/hrtype.scm 154 */
obj_t BgL_method2727z00_1587;
{ /* ./Ast/hrtype.scm 154 */
BgL_objectz00_bglt BgL_objz00_1588;
BgL_objz00_1588 = 
(BgL_objectz00_bglt)(BgL_arg3359z00_1196); 
{ /* ./Ast/hrtype.scm 154 */
long BgL_objzd2classzd2numz00_1589;
BgL_objzd2classzd2numz00_1589 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1588); 
{ /* ./Ast/hrtype.scm 154 */
obj_t BgL_arg2017z00_1590;
{ /* ./Ast/hrtype.scm 154 */
int BgL_auxz00_2800;
BgL_auxz00_2800 = 
(int)(((long)1)); 
BgL_arg2017z00_1590 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2800); } 
{ /* ./Ast/hrtype.scm 154 */
int BgL_offsetz00_1593;
BgL_offsetz00_1593 = 
(int)(BgL_objzd2classzd2numz00_1589); 
{ /* ./Ast/hrtype.scm 154 */
long BgL_offsetz00_1594;
{ /* ./Ast/hrtype.scm 154 */
long BgL_auxz00_2804;
BgL_auxz00_2804 = 
(long)(BgL_offsetz00_1593); 
BgL_offsetz00_1594 = 
(BgL_auxz00_2804-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 154 */
long BgL_modz00_1595;
{ /* ./Ast/hrtype.scm 154 */
int BgL_arg2028z00_1596;
BgL_arg2028z00_1596 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 154 */
long BgL_n2z00_1604;
BgL_n2z00_1604 = 
(long)(BgL_arg2028z00_1596); 
BgL_modz00_1595 = 
(BgL_offsetz00_1594/BgL_n2z00_1604); } } 
{ /* ./Ast/hrtype.scm 154 */
long BgL_restz00_1597;
{ /* ./Ast/hrtype.scm 154 */
int BgL_arg2024z00_1598;
BgL_arg2024z00_1598 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 154 */
long BgL_n2z00_1607;
BgL_n2z00_1607 = 
(long)(BgL_arg2024z00_1598); 
BgL_restz00_1597 = 
(BgL_offsetz00_1594%BgL_n2z00_1607); } } 
{ /* ./Ast/hrtype.scm 154 */

{ /* ./Ast/hrtype.scm 154 */
obj_t BgL_bucketz00_1599;
{ /* ./Ast/hrtype.scm 154 */
int BgL_kz00_1609;
BgL_kz00_1609 = 
(int)(BgL_modz00_1595); 
BgL_bucketz00_1599 = 
VECTOR_REF(BgL_arg2017z00_1590,BgL_kz00_1609); } 
{ /* ./Ast/hrtype.scm 154 */
int BgL_kz00_1611;
BgL_kz00_1611 = 
(int)(BgL_restz00_1597); 
BgL_method2727z00_1587 = 
VECTOR_REF(BgL_bucketz00_1599,BgL_kz00_1611); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1587)(BgL_method2727z00_1587, 
(obj_t)(BgL_arg3359z00_1196), BEOA); } } 
{ /* ./Ast/hrtype.scm 155 */
BgL_nodez00_bglt BgL_arg3363z00_1197;
BgL_arg3363z00_1197 = 
(((BgL_conditionalz00_bglt)CREF(BgL_nodez00_1191))->BgL_falsez00); 
{ /* ./Ast/hrtype.scm 155 */
obj_t BgL_method2727z00_1614;
{ /* ./Ast/hrtype.scm 155 */
BgL_objectz00_bglt BgL_objz00_1615;
BgL_objz00_1615 = 
(BgL_objectz00_bglt)(BgL_arg3363z00_1197); 
{ /* ./Ast/hrtype.scm 155 */
long BgL_objzd2classzd2numz00_1616;
BgL_objzd2classzd2numz00_1616 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1615); 
{ /* ./Ast/hrtype.scm 155 */
obj_t BgL_arg2017z00_1617;
{ /* ./Ast/hrtype.scm 155 */
int BgL_auxz00_2823;
BgL_auxz00_2823 = 
(int)(((long)1)); 
BgL_arg2017z00_1617 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2823); } 
{ /* ./Ast/hrtype.scm 155 */
int BgL_offsetz00_1620;
BgL_offsetz00_1620 = 
(int)(BgL_objzd2classzd2numz00_1616); 
{ /* ./Ast/hrtype.scm 155 */
long BgL_offsetz00_1621;
{ /* ./Ast/hrtype.scm 155 */
long BgL_auxz00_2827;
BgL_auxz00_2827 = 
(long)(BgL_offsetz00_1620); 
BgL_offsetz00_1621 = 
(BgL_auxz00_2827-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 155 */
long BgL_modz00_1622;
{ /* ./Ast/hrtype.scm 155 */
int BgL_arg2028z00_1623;
BgL_arg2028z00_1623 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 155 */
long BgL_n2z00_1631;
BgL_n2z00_1631 = 
(long)(BgL_arg2028z00_1623); 
BgL_modz00_1622 = 
(BgL_offsetz00_1621/BgL_n2z00_1631); } } 
{ /* ./Ast/hrtype.scm 155 */
long BgL_restz00_1624;
{ /* ./Ast/hrtype.scm 155 */
int BgL_arg2024z00_1625;
BgL_arg2024z00_1625 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 155 */
long BgL_n2z00_1634;
BgL_n2z00_1634 = 
(long)(BgL_arg2024z00_1625); 
BgL_restz00_1624 = 
(BgL_offsetz00_1621%BgL_n2z00_1634); } } 
{ /* ./Ast/hrtype.scm 155 */

{ /* ./Ast/hrtype.scm 155 */
obj_t BgL_bucketz00_1626;
{ /* ./Ast/hrtype.scm 155 */
int BgL_kz00_1636;
BgL_kz00_1636 = 
(int)(BgL_modz00_1622); 
BgL_bucketz00_1626 = 
VECTOR_REF(BgL_arg2017z00_1617,BgL_kz00_1636); } 
{ /* ./Ast/hrtype.scm 155 */
int BgL_kz00_1638;
BgL_kz00_1638 = 
(int)(BgL_restz00_1624); 
BgL_method2727z00_1614 = 
VECTOR_REF(BgL_bucketz00_1626,BgL_kz00_1638); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1614)(BgL_method2727z00_1614, 
(obj_t)(BgL_arg3363z00_1197), BEOA);} } } } 
}



/* hrtype-node!-setq2750 */
obj_t BGl_hrtypezd2nodez12zd2setq2750z12zzast_hrtypez00(obj_t BgL_envz00_2201, obj_t BgL_nodez00_2202)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 143 */
{ 
BgL_setqz00_bglt BgL_nodez00_1183;
BgL_nodez00_1183 = 
(BgL_setqz00_bglt)(BgL_nodez00_2202); 
{ /* ./Ast/hrtype.scm 145 */
BgL_nodez00_bglt BgL_arg3341z00_1187;
BgL_arg3341z00_1187 = 
(((BgL_setqz00_bglt)CREF(BgL_nodez00_1183))->BgL_valuez00); 
{ /* ./Ast/hrtype.scm 145 */
obj_t BgL_method2727z00_1506;
{ /* ./Ast/hrtype.scm 145 */
BgL_objectz00_bglt BgL_objz00_1507;
BgL_objz00_1507 = 
(BgL_objectz00_bglt)(BgL_arg3341z00_1187); 
{ /* ./Ast/hrtype.scm 145 */
long BgL_objzd2classzd2numz00_1508;
BgL_objzd2classzd2numz00_1508 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1507); 
{ /* ./Ast/hrtype.scm 145 */
obj_t BgL_arg2017z00_1509;
{ /* ./Ast/hrtype.scm 145 */
int BgL_auxz00_2847;
BgL_auxz00_2847 = 
(int)(((long)1)); 
BgL_arg2017z00_1509 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2847); } 
{ /* ./Ast/hrtype.scm 145 */
int BgL_offsetz00_1512;
BgL_offsetz00_1512 = 
(int)(BgL_objzd2classzd2numz00_1508); 
{ /* ./Ast/hrtype.scm 145 */
long BgL_offsetz00_1513;
{ /* ./Ast/hrtype.scm 145 */
long BgL_auxz00_2851;
BgL_auxz00_2851 = 
(long)(BgL_offsetz00_1512); 
BgL_offsetz00_1513 = 
(BgL_auxz00_2851-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 145 */
long BgL_modz00_1514;
{ /* ./Ast/hrtype.scm 145 */
int BgL_arg2028z00_1515;
BgL_arg2028z00_1515 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 145 */
long BgL_n2z00_1523;
BgL_n2z00_1523 = 
(long)(BgL_arg2028z00_1515); 
BgL_modz00_1514 = 
(BgL_offsetz00_1513/BgL_n2z00_1523); } } 
{ /* ./Ast/hrtype.scm 145 */
long BgL_restz00_1516;
{ /* ./Ast/hrtype.scm 145 */
int BgL_arg2024z00_1517;
BgL_arg2024z00_1517 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 145 */
long BgL_n2z00_1526;
BgL_n2z00_1526 = 
(long)(BgL_arg2024z00_1517); 
BgL_restz00_1516 = 
(BgL_offsetz00_1513%BgL_n2z00_1526); } } 
{ /* ./Ast/hrtype.scm 145 */

{ /* ./Ast/hrtype.scm 145 */
obj_t BgL_bucketz00_1518;
{ /* ./Ast/hrtype.scm 145 */
int BgL_kz00_1528;
BgL_kz00_1528 = 
(int)(BgL_modz00_1514); 
BgL_bucketz00_1518 = 
VECTOR_REF(BgL_arg2017z00_1509,BgL_kz00_1528); } 
{ /* ./Ast/hrtype.scm 145 */
int BgL_kz00_1530;
BgL_kz00_1530 = 
(int)(BgL_restz00_1516); 
BgL_method2727z00_1506 = 
VECTOR_REF(BgL_bucketz00_1518,BgL_kz00_1530); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1506)(BgL_method2727z00_1506, 
(obj_t)(BgL_arg3341z00_1187), BEOA); } } 
{ /* ./Ast/hrtype.scm 146 */
BgL_varz00_bglt BgL_arg3345z00_1188;
BgL_arg3345z00_1188 = 
(((BgL_setqz00_bglt)CREF(BgL_nodez00_1183))->BgL_varz00); 
{ /* ./Ast/hrtype.scm 146 */
BgL_nodez00_bglt BgL_nodez00_1532;
BgL_nodez00_1532 = 
(BgL_nodez00_bglt)(BgL_arg3345z00_1188); 
{ /* ./Ast/hrtype.scm 146 */
obj_t BgL_method2727z00_1533;
{ /* ./Ast/hrtype.scm 146 */
BgL_objectz00_bglt BgL_objz00_1534;
BgL_objz00_1534 = 
(BgL_objectz00_bglt)(BgL_nodez00_1532); 
{ /* ./Ast/hrtype.scm 146 */
long BgL_objzd2classzd2numz00_1535;
BgL_objzd2classzd2numz00_1535 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1534); 
{ /* ./Ast/hrtype.scm 146 */
obj_t BgL_arg2017z00_1536;
{ /* ./Ast/hrtype.scm 146 */
int BgL_auxz00_2871;
BgL_auxz00_2871 = 
(int)(((long)1)); 
BgL_arg2017z00_1536 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2871); } 
{ /* ./Ast/hrtype.scm 146 */
int BgL_offsetz00_1539;
BgL_offsetz00_1539 = 
(int)(BgL_objzd2classzd2numz00_1535); 
{ /* ./Ast/hrtype.scm 146 */
long BgL_offsetz00_1540;
{ /* ./Ast/hrtype.scm 146 */
long BgL_auxz00_2875;
BgL_auxz00_2875 = 
(long)(BgL_offsetz00_1539); 
BgL_offsetz00_1540 = 
(BgL_auxz00_2875-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 146 */
long BgL_modz00_1541;
{ /* ./Ast/hrtype.scm 146 */
int BgL_arg2028z00_1542;
BgL_arg2028z00_1542 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 146 */
long BgL_n2z00_1550;
BgL_n2z00_1550 = 
(long)(BgL_arg2028z00_1542); 
BgL_modz00_1541 = 
(BgL_offsetz00_1540/BgL_n2z00_1550); } } 
{ /* ./Ast/hrtype.scm 146 */
long BgL_restz00_1543;
{ /* ./Ast/hrtype.scm 146 */
int BgL_arg2024z00_1544;
BgL_arg2024z00_1544 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 146 */
long BgL_n2z00_1553;
BgL_n2z00_1553 = 
(long)(BgL_arg2024z00_1544); 
BgL_restz00_1543 = 
(BgL_offsetz00_1540%BgL_n2z00_1553); } } 
{ /* ./Ast/hrtype.scm 146 */

{ /* ./Ast/hrtype.scm 146 */
obj_t BgL_bucketz00_1545;
{ /* ./Ast/hrtype.scm 146 */
int BgL_kz00_1555;
BgL_kz00_1555 = 
(int)(BgL_modz00_1541); 
BgL_bucketz00_1545 = 
VECTOR_REF(BgL_arg2017z00_1536,BgL_kz00_1555); } 
{ /* ./Ast/hrtype.scm 146 */
int BgL_kz00_1557;
BgL_kz00_1557 = 
(int)(BgL_restz00_1543); 
BgL_method2727z00_1533 = 
VECTOR_REF(BgL_bucketz00_1545,BgL_kz00_1557); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1533)(BgL_method2727z00_1533, 
(obj_t)(BgL_nodez00_1532), BEOA);} } } } } 
}



/* hrtype-node!-cast2748 */
obj_t BGl_hrtypezd2nodez12zd2cast2748z12zzast_hrtypez00(obj_t BgL_envz00_2203, obj_t BgL_nodez00_2204)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 136 */
{ 
BgL_castz00_bglt BgL_nodez00_1176;
BgL_nodez00_1176 = 
(BgL_castz00_bglt)(BgL_nodez00_2204); 
{ /* ./Ast/hrtype.scm 137 */
BgL_nodez00_bglt BgL_arg3331z00_1476;
BgL_arg3331z00_1476 = 
(((BgL_castz00_bglt)CREF(BgL_nodez00_1176))->BgL_argz00); 
{ /* ./Ast/hrtype.scm 137 */
obj_t BgL_method2727z00_1479;
{ /* ./Ast/hrtype.scm 137 */
BgL_objectz00_bglt BgL_objz00_1480;
BgL_objz00_1480 = 
(BgL_objectz00_bglt)(BgL_arg3331z00_1476); 
{ /* ./Ast/hrtype.scm 137 */
long BgL_objzd2classzd2numz00_1481;
BgL_objzd2classzd2numz00_1481 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1480); 
{ /* ./Ast/hrtype.scm 137 */
obj_t BgL_arg2017z00_1482;
{ /* ./Ast/hrtype.scm 137 */
int BgL_auxz00_2895;
BgL_auxz00_2895 = 
(int)(((long)1)); 
BgL_arg2017z00_1482 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2895); } 
{ /* ./Ast/hrtype.scm 137 */
int BgL_offsetz00_1485;
BgL_offsetz00_1485 = 
(int)(BgL_objzd2classzd2numz00_1481); 
{ /* ./Ast/hrtype.scm 137 */
long BgL_offsetz00_1486;
{ /* ./Ast/hrtype.scm 137 */
long BgL_auxz00_2899;
BgL_auxz00_2899 = 
(long)(BgL_offsetz00_1485); 
BgL_offsetz00_1486 = 
(BgL_auxz00_2899-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 137 */
long BgL_modz00_1487;
{ /* ./Ast/hrtype.scm 137 */
int BgL_arg2028z00_1488;
BgL_arg2028z00_1488 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 137 */
long BgL_n2z00_1496;
BgL_n2z00_1496 = 
(long)(BgL_arg2028z00_1488); 
BgL_modz00_1487 = 
(BgL_offsetz00_1486/BgL_n2z00_1496); } } 
{ /* ./Ast/hrtype.scm 137 */
long BgL_restz00_1489;
{ /* ./Ast/hrtype.scm 137 */
int BgL_arg2024z00_1490;
BgL_arg2024z00_1490 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 137 */
long BgL_n2z00_1499;
BgL_n2z00_1499 = 
(long)(BgL_arg2024z00_1490); 
BgL_restz00_1489 = 
(BgL_offsetz00_1486%BgL_n2z00_1499); } } 
{ /* ./Ast/hrtype.scm 137 */

{ /* ./Ast/hrtype.scm 137 */
obj_t BgL_bucketz00_1491;
{ /* ./Ast/hrtype.scm 137 */
int BgL_kz00_1501;
BgL_kz00_1501 = 
(int)(BgL_modz00_1487); 
BgL_bucketz00_1491 = 
VECTOR_REF(BgL_arg2017z00_1482,BgL_kz00_1501); } 
{ /* ./Ast/hrtype.scm 137 */
int BgL_kz00_1503;
BgL_kz00_1503 = 
(int)(BgL_restz00_1489); 
BgL_method2727z00_1479 = 
VECTOR_REF(BgL_bucketz00_1491,BgL_kz00_1503); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1479)(BgL_method2727z00_1479, 
(obj_t)(BgL_arg3331z00_1476), BEOA);} } } } 
}



/* hrtype-node!-extern2746 */
obj_t BGl_hrtypezd2nodez12zd2extern2746z12zzast_hrtypez00(obj_t BgL_envz00_2205, obj_t BgL_nodez00_2206)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 127 */
{ 
BgL_externz00_bglt BgL_nodez00_1164;
{ /* ./Ast/hrtype.scm 128 */
bool_t BgL_auxz00_2916;
BgL_nodez00_1164 = 
(BgL_externz00_bglt)(BgL_nodez00_2206); 
{ /* ./Ast/hrtype.scm 129 */
bool_t BgL_test3305z00_1168;
{ /* ./Ast/hrtype.scm 129 */
BgL_typez00_bglt BgL_arg3317z00_1172;
{ /* ./Ast/hrtype.scm 129 */
BgL_nodez00_bglt BgL_obj1583z00_1468;
BgL_obj1583z00_1468 = 
(BgL_nodez00_bglt)(BgL_nodez00_1164); 
BgL_arg3317z00_1172 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1468))->BgL_typez00); } 
{ /* ./Ast/hrtype.scm 129 */
obj_t BgL_obj1088z00_1469;
BgL_obj1088z00_1469 = 
(obj_t)(BgL_arg3317z00_1172); 
BgL_test3305z00_1168 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1088z00_1469, BGl_typez00zztype_typez00); } } 
if(BgL_test3305z00_1168)
{ /* ./Ast/hrtype.scm 130 */
BgL_typez00_bglt BgL_arg3307z00_1169;
{ /* ./Ast/hrtype.scm 130 */
obj_t BgL_arg3310z00_1170;
{ /* ./Ast/hrtype.scm 130 */
BgL_typez00_bglt BgL_arg3313z00_1171;
{ /* ./Ast/hrtype.scm 130 */
BgL_nodez00_bglt BgL_obj1583z00_1470;
BgL_obj1583z00_1470 = 
(BgL_nodez00_bglt)(BgL_nodez00_1164); 
BgL_arg3313z00_1171 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1470))->BgL_typez00); } 
BgL_arg3310z00_1170 = 
(((BgL_typez00_bglt)CREF(BgL_arg3313z00_1171))->BgL_idz00); } 
BgL_arg3307z00_1169 = 
BGl_findzd2typezd2zztype_envz00(BgL_arg3310z00_1170); } 
{ /* ./Ast/hrtype.scm 130 */
BgL_nodez00_bglt BgL_obj1585z00_1472;BgL_typez00_bglt BgL_val1584z00_1473;
BgL_obj1585z00_1472 = 
(BgL_nodez00_bglt)(BgL_nodez00_1164); 
BgL_val1584z00_1473 = BgL_arg3307z00_1169; 
((((BgL_nodez00_bglt)CREF(BgL_obj1585z00_1472))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1584z00_1473), BUNSPEC); } }  else 
{ /* ./Ast/hrtype.scm 129 */BFALSE; } } 
{ /* ./Ast/hrtype.scm 131 */
obj_t BgL_arg3321z00_1173;
BgL_arg3321z00_1173 = 
(((BgL_externz00_bglt)CREF(BgL_nodez00_1164))->BgL_exprza2za2); 
BgL_auxz00_2916 = 
BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(BgL_arg3321z00_1173); } 
return 
BBOOL(BgL_auxz00_2916);} } } 
}



/* hrtype-node!-funcall2744 */
obj_t BGl_hrtypezd2nodez12zd2funcall2744z12zzast_hrtypez00(obj_t BgL_envz00_2207, obj_t BgL_nodez00_2208)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 119 */
{ 
BgL_funcallz00_bglt BgL_nodez00_1156;
{ /* ./Ast/hrtype.scm 120 */
bool_t BgL_auxz00_2932;
BgL_nodez00_1156 = 
(BgL_funcallz00_bglt)(BgL_nodez00_2208); 
{ /* ./Ast/hrtype.scm 121 */
BgL_nodez00_bglt BgL_arg3292z00_1160;
BgL_arg3292z00_1160 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1156))->BgL_funz00); 
{ /* ./Ast/hrtype.scm 121 */
obj_t BgL_method2727z00_1442;
{ /* ./Ast/hrtype.scm 121 */
BgL_objectz00_bglt BgL_objz00_1443;
BgL_objz00_1443 = 
(BgL_objectz00_bglt)(BgL_arg3292z00_1160); 
{ /* ./Ast/hrtype.scm 121 */
long BgL_objzd2classzd2numz00_1444;
BgL_objzd2classzd2numz00_1444 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1443); 
{ /* ./Ast/hrtype.scm 121 */
obj_t BgL_arg2017z00_1445;
{ /* ./Ast/hrtype.scm 121 */
int BgL_auxz00_2936;
BgL_auxz00_2936 = 
(int)(((long)1)); 
BgL_arg2017z00_1445 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2936); } 
{ /* ./Ast/hrtype.scm 121 */
int BgL_offsetz00_1448;
BgL_offsetz00_1448 = 
(int)(BgL_objzd2classzd2numz00_1444); 
{ /* ./Ast/hrtype.scm 121 */
long BgL_offsetz00_1449;
{ /* ./Ast/hrtype.scm 121 */
long BgL_auxz00_2940;
BgL_auxz00_2940 = 
(long)(BgL_offsetz00_1448); 
BgL_offsetz00_1449 = 
(BgL_auxz00_2940-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 121 */
long BgL_modz00_1450;
{ /* ./Ast/hrtype.scm 121 */
int BgL_arg2028z00_1451;
BgL_arg2028z00_1451 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 121 */
long BgL_n2z00_1459;
BgL_n2z00_1459 = 
(long)(BgL_arg2028z00_1451); 
BgL_modz00_1450 = 
(BgL_offsetz00_1449/BgL_n2z00_1459); } } 
{ /* ./Ast/hrtype.scm 121 */
long BgL_restz00_1452;
{ /* ./Ast/hrtype.scm 121 */
int BgL_arg2024z00_1453;
BgL_arg2024z00_1453 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 121 */
long BgL_n2z00_1462;
BgL_n2z00_1462 = 
(long)(BgL_arg2024z00_1453); 
BgL_restz00_1452 = 
(BgL_offsetz00_1449%BgL_n2z00_1462); } } 
{ /* ./Ast/hrtype.scm 121 */

{ /* ./Ast/hrtype.scm 121 */
obj_t BgL_bucketz00_1454;
{ /* ./Ast/hrtype.scm 121 */
int BgL_kz00_1464;
BgL_kz00_1464 = 
(int)(BgL_modz00_1450); 
BgL_bucketz00_1454 = 
VECTOR_REF(BgL_arg2017z00_1445,BgL_kz00_1464); } 
{ /* ./Ast/hrtype.scm 121 */
int BgL_kz00_1466;
BgL_kz00_1466 = 
(int)(BgL_restz00_1452); 
BgL_method2727z00_1442 = 
VECTOR_REF(BgL_bucketz00_1454,BgL_kz00_1466); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1442)(BgL_method2727z00_1442, 
(obj_t)(BgL_arg3292z00_1160), BEOA); } } 
{ /* ./Ast/hrtype.scm 122 */
obj_t BgL_arg3296z00_1161;
BgL_arg3296z00_1161 = 
(((BgL_funcallz00_bglt)CREF(BgL_nodez00_1156))->BgL_argsz00); 
BgL_auxz00_2932 = 
BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(BgL_arg3296z00_1161); } 
return 
BBOOL(BgL_auxz00_2932);} } } 
}



/* hrtype-node!-app-ly2742 */
obj_t BGl_hrtypezd2nodez12zd2appzd2ly2742zc0zzast_hrtypez00(obj_t BgL_envz00_2209, obj_t BgL_nodez00_2210)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 111 */
{ 
BgL_appzd2lyzd2_bglt BgL_nodez00_1148;
BgL_nodez00_1148 = 
(BgL_appzd2lyzd2_bglt)(BgL_nodez00_2210); 
{ /* ./Ast/hrtype.scm 113 */
BgL_nodez00_bglt BgL_arg3278z00_1152;
BgL_arg3278z00_1152 = 
(((BgL_appzd2lyzd2_bglt)CREF(BgL_nodez00_1148))->BgL_funz00); 
{ /* ./Ast/hrtype.scm 113 */
obj_t BgL_method2727z00_1388;
{ /* ./Ast/hrtype.scm 113 */
BgL_objectz00_bglt BgL_objz00_1389;
BgL_objz00_1389 = 
(BgL_objectz00_bglt)(BgL_arg3278z00_1152); 
{ /* ./Ast/hrtype.scm 113 */
long BgL_objzd2classzd2numz00_1390;
BgL_objzd2classzd2numz00_1390 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1389); 
{ /* ./Ast/hrtype.scm 113 */
obj_t BgL_arg2017z00_1391;
{ /* ./Ast/hrtype.scm 113 */
int BgL_auxz00_2963;
BgL_auxz00_2963 = 
(int)(((long)1)); 
BgL_arg2017z00_1391 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2963); } 
{ /* ./Ast/hrtype.scm 113 */
int BgL_offsetz00_1394;
BgL_offsetz00_1394 = 
(int)(BgL_objzd2classzd2numz00_1390); 
{ /* ./Ast/hrtype.scm 113 */
long BgL_offsetz00_1395;
{ /* ./Ast/hrtype.scm 113 */
long BgL_auxz00_2967;
BgL_auxz00_2967 = 
(long)(BgL_offsetz00_1394); 
BgL_offsetz00_1395 = 
(BgL_auxz00_2967-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 113 */
long BgL_modz00_1396;
{ /* ./Ast/hrtype.scm 113 */
int BgL_arg2028z00_1397;
BgL_arg2028z00_1397 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 113 */
long BgL_n2z00_1405;
BgL_n2z00_1405 = 
(long)(BgL_arg2028z00_1397); 
BgL_modz00_1396 = 
(BgL_offsetz00_1395/BgL_n2z00_1405); } } 
{ /* ./Ast/hrtype.scm 113 */
long BgL_restz00_1398;
{ /* ./Ast/hrtype.scm 113 */
int BgL_arg2024z00_1399;
BgL_arg2024z00_1399 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 113 */
long BgL_n2z00_1408;
BgL_n2z00_1408 = 
(long)(BgL_arg2024z00_1399); 
BgL_restz00_1398 = 
(BgL_offsetz00_1395%BgL_n2z00_1408); } } 
{ /* ./Ast/hrtype.scm 113 */

{ /* ./Ast/hrtype.scm 113 */
obj_t BgL_bucketz00_1400;
{ /* ./Ast/hrtype.scm 113 */
int BgL_kz00_1410;
BgL_kz00_1410 = 
(int)(BgL_modz00_1396); 
BgL_bucketz00_1400 = 
VECTOR_REF(BgL_arg2017z00_1391,BgL_kz00_1410); } 
{ /* ./Ast/hrtype.scm 113 */
int BgL_kz00_1412;
BgL_kz00_1412 = 
(int)(BgL_restz00_1398); 
BgL_method2727z00_1388 = 
VECTOR_REF(BgL_bucketz00_1400,BgL_kz00_1412); } } } } } } } } } } 
PROCEDURE_ENTRY(BgL_method2727z00_1388)(BgL_method2727z00_1388, 
(obj_t)(BgL_arg3278z00_1152), BEOA); } } 
{ /* ./Ast/hrtype.scm 114 */
BgL_nodez00_bglt BgL_arg3282z00_1153;
BgL_arg3282z00_1153 = 
(((BgL_appzd2lyzd2_bglt)CREF(BgL_nodez00_1148))->BgL_argz00); 
{ /* ./Ast/hrtype.scm 114 */
obj_t BgL_method2727z00_1415;
{ /* ./Ast/hrtype.scm 114 */
BgL_objectz00_bglt BgL_objz00_1416;
BgL_objz00_1416 = 
(BgL_objectz00_bglt)(BgL_arg3282z00_1153); 
{ /* ./Ast/hrtype.scm 114 */
long BgL_objzd2classzd2numz00_1417;
BgL_objzd2classzd2numz00_1417 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_1416); 
{ /* ./Ast/hrtype.scm 114 */
obj_t BgL_arg2017z00_1418;
{ /* ./Ast/hrtype.scm 114 */
int BgL_auxz00_2986;
BgL_auxz00_2986 = 
(int)(((long)1)); 
BgL_arg2017z00_1418 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_2986); } 
{ /* ./Ast/hrtype.scm 114 */
int BgL_offsetz00_1421;
BgL_offsetz00_1421 = 
(int)(BgL_objzd2classzd2numz00_1417); 
{ /* ./Ast/hrtype.scm 114 */
long BgL_offsetz00_1422;
{ /* ./Ast/hrtype.scm 114 */
long BgL_auxz00_2990;
BgL_auxz00_2990 = 
(long)(BgL_offsetz00_1421); 
BgL_offsetz00_1422 = 
(BgL_auxz00_2990-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 114 */
long BgL_modz00_1423;
{ /* ./Ast/hrtype.scm 114 */
int BgL_arg2028z00_1424;
BgL_arg2028z00_1424 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 114 */
long BgL_n2z00_1432;
BgL_n2z00_1432 = 
(long)(BgL_arg2028z00_1424); 
BgL_modz00_1423 = 
(BgL_offsetz00_1422/BgL_n2z00_1432); } } 
{ /* ./Ast/hrtype.scm 114 */
long BgL_restz00_1425;
{ /* ./Ast/hrtype.scm 114 */
int BgL_arg2024z00_1426;
BgL_arg2024z00_1426 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 114 */
long BgL_n2z00_1435;
BgL_n2z00_1435 = 
(long)(BgL_arg2024z00_1426); 
BgL_restz00_1425 = 
(BgL_offsetz00_1422%BgL_n2z00_1435); } } 
{ /* ./Ast/hrtype.scm 114 */

{ /* ./Ast/hrtype.scm 114 */
obj_t BgL_bucketz00_1427;
{ /* ./Ast/hrtype.scm 114 */
int BgL_kz00_1437;
BgL_kz00_1437 = 
(int)(BgL_modz00_1423); 
BgL_bucketz00_1427 = 
VECTOR_REF(BgL_arg2017z00_1418,BgL_kz00_1437); } 
{ /* ./Ast/hrtype.scm 114 */
int BgL_kz00_1439;
BgL_kz00_1439 = 
(int)(BgL_restz00_1425); 
BgL_method2727z00_1415 = 
VECTOR_REF(BgL_bucketz00_1427,BgL_kz00_1439); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_1415)(BgL_method2727z00_1415, 
(obj_t)(BgL_arg3282z00_1153), BEOA);} } } } 
}



/* hrtype-node!-app2740 */
obj_t BGl_hrtypezd2nodez12zd2app2740z12zzast_hrtypez00(obj_t BgL_envz00_2211, obj_t BgL_nodez00_2212)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 71 */
{ 
BgL_appz00_bglt BgL_nodez00_1102;
{ /* ./Ast/hrtype.scm 72 */
bool_t BgL_auxz00_3007;
BgL_nodez00_1102 = 
(BgL_appz00_bglt)(BgL_nodez00_2212); 
{ /* ./Ast/hrtype.scm 73 */
bool_t BgL_test3172z00_1106;
{ /* ./Ast/hrtype.scm 73 */
BgL_typez00_bglt BgL_arg3184z00_1110;
{ /* ./Ast/hrtype.scm 73 */
BgL_nodez00_bglt BgL_obj1583z00_1350;
BgL_obj1583z00_1350 = 
(BgL_nodez00_bglt)(BgL_nodez00_1102); 
BgL_arg3184z00_1110 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1350))->BgL_typez00); } 
{ /* ./Ast/hrtype.scm 73 */
obj_t BgL_obj1088z00_1351;
BgL_obj1088z00_1351 = 
(obj_t)(BgL_arg3184z00_1110); 
BgL_test3172z00_1106 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1088z00_1351, BGl_typez00zztype_typez00); } } 
if(BgL_test3172z00_1106)
{ /* ./Ast/hrtype.scm 74 */
BgL_typez00_bglt BgL_arg3174z00_1107;
{ /* ./Ast/hrtype.scm 74 */
obj_t BgL_arg3177z00_1108;
{ /* ./Ast/hrtype.scm 74 */
BgL_typez00_bglt BgL_arg3180z00_1109;
{ /* ./Ast/hrtype.scm 74 */
BgL_nodez00_bglt BgL_obj1583z00_1352;
BgL_obj1583z00_1352 = 
(BgL_nodez00_bglt)(BgL_nodez00_1102); 
BgL_arg3180z00_1109 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1352))->BgL_typez00); } 
BgL_arg3177z00_1108 = 
(((BgL_typez00_bglt)CREF(BgL_arg3180z00_1109))->BgL_idz00); } 
BgL_arg3174z00_1107 = 
BGl_findzd2typezd2zztype_envz00(BgL_arg3177z00_1108); } 
{ /* ./Ast/hrtype.scm 74 */
BgL_nodez00_bglt BgL_obj1585z00_1354;BgL_typez00_bglt BgL_val1584z00_1355;
BgL_obj1585z00_1354 = 
(BgL_nodez00_bglt)(BgL_nodez00_1102); 
BgL_val1584z00_1355 = BgL_arg3174z00_1107; 
((((BgL_nodez00_bglt)CREF(BgL_obj1585z00_1354))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1584z00_1355), BUNSPEC); } }  else 
{ /* ./Ast/hrtype.scm 73 */BFALSE; } } 
{ /* ./Ast/hrtype.scm 75 */
BgL_varz00_bglt BgL_instance2686z00_1111;
BgL_instance2686z00_1111 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_1102))->BgL_funz00); 
{ /* ./Ast/hrtype.scm 76 */
bool_t BgL_test3187z00_1112;
{ /* ./Ast/hrtype.scm 76 */
BgL_variablez00_bglt BgL_arg3263z00_1144;
BgL_arg3263z00_1144 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
{ /* ./Ast/hrtype.scm 76 */
obj_t BgL_obj1261z00_1358;
BgL_obj1261z00_1358 = 
(obj_t)(BgL_arg3263z00_1144); 
BgL_test3187z00_1112 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1261z00_1358, BGl_globalz00zzast_varz00); } } 
if(BgL_test3187z00_1112)
{ /* ./Ast/hrtype.scm 77 */
BgL_valuez00_bglt BgL_valuez00_1113;
{ /* ./Ast/hrtype.scm 77 */
BgL_variablez00_bglt BgL_arg3259z00_1143;
BgL_arg3259z00_1143 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BgL_valuez00_1113 = 
(((BgL_variablez00_bglt)CREF(BgL_arg3259z00_1143))->BgL_valuez00); } 
{ /* ./Ast/hrtype.scm 79 */
bool_t BgL_test3188z00_1114;
{ /* ./Ast/hrtype.scm 79 */
obj_t BgL_obj1511z00_1361;
BgL_obj1511z00_1361 = 
(obj_t)(BgL_valuez00_1113); 
BgL_test3188z00_1114 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1511z00_1361, BGl_cfunz00zzast_varz00); } 
if(BgL_test3188z00_1114)
{ /* ./Ast/hrtype.scm 79 */
{ /* ./Ast/hrtype.scm 80 */
BgL_variablez00_bglt BgL_arg3190z00_1115;
BgL_arg3190z00_1115 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BGl_restorezd2globalz12zc0zzast_envz00(
(obj_t)(BgL_arg3190z00_1115)); } }  else 
{ /* ./Ast/hrtype.scm 81 */
bool_t BgL_test3193z00_1116;
{ /* ./Ast/hrtype.scm 81 */
obj_t BgL_obj1446z00_1363;
BgL_obj1446z00_1363 = 
(obj_t)(BgL_valuez00_1113); 
BgL_test3193z00_1116 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1446z00_1363, BGl_sfunz00zzast_varz00); } 
if(BgL_test3193z00_1116)
{ /* ./Ast/hrtype.scm 81 */
{ /* ./Ast/hrtype.scm 82 */
bool_t BgL_test3194z00_1117;
{ /* ./Ast/hrtype.scm 82 */
bool_t BgL_test3244z00_1138;
{ /* ./Ast/hrtype.scm 82 */
obj_t BgL_auxz00_3038;obj_t BgL_auxz00_3035;
BgL_auxz00_3038 = 
CNST_TABLE_REF(((long)0)); 
{ /* ./Ast/hrtype.scm 82 */
BgL_sfunz00_bglt BgL_obj1395z00_1364;
BgL_obj1395z00_1364 = 
(BgL_sfunz00_bglt)(BgL_valuez00_1113); 
BgL_auxz00_3035 = 
(((BgL_sfunz00_bglt)CREF(BgL_obj1395z00_1364))->BgL_classz00); } 
BgL_test3244z00_1138 = 
(BgL_auxz00_3035==BgL_auxz00_3038); } 
if(BgL_test3244z00_1138)
{ /* ./Ast/hrtype.scm 84 */
bool_t BgL_test3245z00_1139;
{ /* ./Ast/hrtype.scm 84 */
BgL_variablez00_bglt BgL_arg3247z00_1140;
BgL_arg3247z00_1140 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
{ /* ./Ast/hrtype.scm 84 */
obj_t BgL_auxz00_3043;
BgL_auxz00_3043 = 
BGl_alreadyzd2restoredzf3z21zzast_envz00(
(obj_t)(BgL_arg3247z00_1140)); 
BgL_test3245z00_1139 = 
CBOOL(BgL_auxz00_3043); } } 
if(BgL_test3245z00_1139)
{ /* ./Ast/hrtype.scm 84 */
BgL_test3194z00_1117 = ((bool_t)0); }  else 
{ /* ./Ast/hrtype.scm 84 */
BgL_test3194z00_1117 = ((bool_t)1); } }  else 
{ /* ./Ast/hrtype.scm 82 */
BgL_test3194z00_1117 = ((bool_t)0); } } 
if(BgL_test3194z00_1117)
{ /* ./Ast/hrtype.scm 88 */
BgL_variablez00_bglt BgL_arg3196z00_1118;
BgL_arg3196z00_1118 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BGl_restorezd2globalz12zc0zzast_envz00(
(obj_t)(BgL_arg3196z00_1118)); }  else 
{ /* ./Ast/hrtype.scm 94 */
obj_t BgL_gz00_1119;
{ /* ./Ast/hrtype.scm 94 */
obj_t BgL_arg3231z00_1133;obj_t BgL_arg3232z00_1134;
{ /* ./Ast/hrtype.scm 94 */
BgL_variablez00_bglt BgL_arg3237z00_1136;
BgL_arg3237z00_1136 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BgL_arg3231z00_1133 = 
(((BgL_variablez00_bglt)CREF(BgL_arg3237z00_1136))->BgL_idz00); } 
{ /* ./Ast/hrtype.scm 95 */
BgL_globalz00_bglt BgL_obj1186z00_1370;
{ /* ./Ast/hrtype.scm 95 */
BgL_variablez00_bglt BgL_auxz00_3054;
BgL_auxz00_3054 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BgL_obj1186z00_1370 = 
(BgL_globalz00_bglt)(BgL_auxz00_3054); } 
BgL_arg3232z00_1134 = 
(((BgL_globalz00_bglt)CREF(BgL_obj1186z00_1370))->BgL_modulez00); } 
{ /* ./Ast/hrtype.scm 94 */
obj_t BgL_list3234z00_1135;
BgL_list3234z00_1135 = 
MAKE_PAIR(BgL_arg3232z00_1134, BNIL); 
BgL_gz00_1119 = 
BGl_findzd2globalzd2zzast_envz00(BgL_arg3231z00_1133, BgL_list3234z00_1135); } } 
{ /* ./Ast/hrtype.scm 96 */
bool_t BgL_test3199z00_1120;
BgL_test3199z00_1120 = 
BGl_iszd2azf3z21zz__objectz00(BgL_gz00_1119, BGl_variablez00zzast_varz00); 
if(BgL_test3199z00_1120)
{ /* ./Ast/hrtype.scm 105 */
BgL_varz00_bglt BgL_obj1648z00_1372;BgL_variablez00_bglt BgL_val1647z00_1373;
BgL_obj1648z00_1372 = BgL_instance2686z00_1111; 
BgL_val1647z00_1373 = 
(BgL_variablez00_bglt)(BgL_gz00_1119); 
((((BgL_varz00_bglt)CREF(BgL_obj1648z00_1372))->BgL_variablez00) = ((BgL_variablez00_bglt)BgL_val1647z00_1373), BUNSPEC); }  else 
{ /* ./Ast/hrtype.scm 97 */
obj_t BgL_newzd2gzd2_1121;
{ /* ./Ast/hrtype.scm 97 */
obj_t BgL_arg3221z00_1130;
{ /* ./Ast/hrtype.scm 97 */
BgL_variablez00_bglt BgL_arg3226z00_1132;
BgL_arg3226z00_1132 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BgL_arg3221z00_1130 = 
(((BgL_variablez00_bglt)CREF(BgL_arg3226z00_1132))->BgL_idz00); } 
{ /* ./Ast/hrtype.scm 97 */
obj_t BgL_list3223z00_1131;
BgL_list3223z00_1131 = 
MAKE_PAIR(BGl_za2moduleza2z00zzmodule_modulez00, BNIL); 
BgL_newzd2gzd2_1121 = 
BGl_findzd2globalzd2zzast_envz00(BgL_arg3221z00_1130, BgL_list3223z00_1131); } } 
{ /* ./Ast/hrtype.scm 99 */
bool_t BgL_test3201z00_1122;
{ /* ./Ast/hrtype.scm 99 */
bool_t BgL_test3213z00_1127;
BgL_test3213z00_1127 = 
BGl_iszd2azf3z21zz__objectz00(BgL_newzd2gzd2_1121, BGl_globalz00zzast_varz00); 
if(BgL_test3213z00_1127)
{ /* ./Ast/hrtype.scm 100 */
obj_t BgL_auxz00_3073;obj_t BgL_auxz00_3070;
BgL_auxz00_3073 = 
CNST_TABLE_REF(((long)1)); 
{ /* ./Ast/hrtype.scm 100 */
BgL_globalz00_bglt BgL_obj1189z00_1377;
BgL_obj1189z00_1377 = 
(BgL_globalz00_bglt)(BgL_newzd2gzd2_1121); 
BgL_auxz00_3070 = 
(((BgL_globalz00_bglt)CREF(BgL_obj1189z00_1377))->BgL_importz00); } 
BgL_test3201z00_1122 = 
(BgL_auxz00_3070==BgL_auxz00_3073); }  else 
{ /* ./Ast/hrtype.scm 99 */
BgL_test3201z00_1122 = ((bool_t)0); } } 
if(BgL_test3201z00_1122)
{ /* ./Ast/hrtype.scm 104 */
BgL_varz00_bglt BgL_obj1648z00_1378;BgL_variablez00_bglt BgL_val1647z00_1379;
BgL_obj1648z00_1378 = BgL_instance2686z00_1111; 
BgL_val1647z00_1379 = 
(BgL_variablez00_bglt)(BgL_newzd2gzd2_1121); 
((((BgL_varz00_bglt)CREF(BgL_obj1648z00_1378))->BgL_variablez00) = ((BgL_variablez00_bglt)BgL_val1647z00_1379), BUNSPEC); }  else 
{ /* ./Ast/hrtype.scm 101 */
obj_t BgL_arg3206z00_1125;
{ /* ./Ast/hrtype.scm 103 */
BgL_variablez00_bglt BgL_arg3210z00_1126;
BgL_arg3210z00_1126 = 
(((BgL_varz00_bglt)CREF(BgL_instance2686z00_1111))->BgL_variablez00); 
BgL_arg3206z00_1125 = 
(((BgL_variablez00_bglt)CREF(BgL_arg3210z00_1126))->BgL_idz00); } 
FAILURE(BGl_string4094z00zzast_hrtypez00,BGl_string4095z00zzast_hrtypez00,BgL_arg3206z00_1125);} } } } } } }  else 
{ /* ./Ast/hrtype.scm 81 */BFALSE; } } } }  else 
{ /* ./Ast/hrtype.scm 76 */BFALSE; } } } 
{ /* ./Ast/hrtype.scm 106 */
obj_t BgL_arg3268z00_1145;
BgL_arg3268z00_1145 = 
(((BgL_appz00_bglt)CREF(BgL_nodez00_1102))->BgL_argsz00); 
BgL_auxz00_3007 = 
BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(BgL_arg3268z00_1145); } 
return 
BBOOL(BgL_auxz00_3007);} } } 
}



/* hrtype-node!-sequence2737 */
obj_t BGl_hrtypezd2nodez12zd2sequence2737z12zzast_hrtypez00(obj_t BgL_envz00_2213, obj_t BgL_nodez00_2214)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 64 */
{ 
BgL_sequencez00_bglt BgL_nodez00_1095;
{ /* ./Ast/hrtype.scm 65 */
bool_t BgL_auxz00_3086;
BgL_nodez00_1095 = 
(BgL_sequencez00_bglt)(BgL_nodez00_2214); 
{ /* ./Ast/hrtype.scm 65 */
obj_t BgL_arg3163z00_1348;
BgL_arg3163z00_1348 = 
(((BgL_sequencez00_bglt)CREF(BgL_nodez00_1095))->BgL_nodesz00); 
BgL_auxz00_3086 = 
BGl_hrtypezd2nodeza2z12z62zzast_hrtypez00(BgL_arg3163z00_1348); } 
return 
BBOOL(BgL_auxz00_3086);} } } 
}



/* hrtype-node!-closure2735 */
obj_t BGl_hrtypezd2nodez12zd2closure2735z12zzast_hrtypez00(obj_t BgL_envz00_2215, obj_t BgL_nodez00_2216)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 58 */
{ 
BgL_closurez00_bglt BgL_nodez00_1087;
BgL_nodez00_1087 = 
(BgL_closurez00_bglt)(BgL_nodez00_2216); 
{ /* ./Ast/hrtype.scm 59 */
obj_t BgL_arg3153z00_1092;
BgL_arg3153z00_1092 = 
BGl_shapez00zztools_shapez00(
(obj_t)(BgL_nodez00_1087)); 
return 
BGl_internalzd2errorzd2zztools_errorz00(BGl_string4092z00zzast_hrtypez00, BGl_string4096z00zzast_hrtypez00, BgL_arg3153z00_1092);} } } 
}



/* hrtype-node!-var2733 */
obj_t BGl_hrtypezd2nodez12zd2var2733z12zzast_hrtypez00(obj_t BgL_envz00_2217, obj_t BgL_nodez00_2218)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 49 */
{ 
BgL_varz00_bglt BgL_nodez00_1076;
BgL_nodez00_1076 = 
(BgL_varz00_bglt)(BgL_nodez00_2218); 
{ /* ./Ast/hrtype.scm 51 */
bool_t BgL_test3129z00_1080;
{ /* ./Ast/hrtype.scm 51 */
BgL_typez00_bglt BgL_arg3141z00_1084;
{ /* ./Ast/hrtype.scm 51 */
BgL_nodez00_bglt BgL_obj1583z00_1341;
BgL_obj1583z00_1341 = 
(BgL_nodez00_bglt)(BgL_nodez00_1076); 
BgL_arg3141z00_1084 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1341))->BgL_typez00); } 
{ /* ./Ast/hrtype.scm 51 */
obj_t BgL_obj1088z00_1342;
BgL_obj1088z00_1342 = 
(obj_t)(BgL_arg3141z00_1084); 
BgL_test3129z00_1080 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1088z00_1342, BGl_typez00zztype_typez00); } } 
if(BgL_test3129z00_1080)
{ /* ./Ast/hrtype.scm 52 */
BgL_typez00_bglt BgL_arg3131z00_1081;
{ /* ./Ast/hrtype.scm 52 */
obj_t BgL_arg3134z00_1082;
{ /* ./Ast/hrtype.scm 52 */
BgL_typez00_bglt BgL_arg3137z00_1083;
{ /* ./Ast/hrtype.scm 52 */
BgL_nodez00_bglt BgL_obj1583z00_1343;
BgL_obj1583z00_1343 = 
(BgL_nodez00_bglt)(BgL_nodez00_1076); 
BgL_arg3137z00_1083 = 
(((BgL_nodez00_bglt)CREF(BgL_obj1583z00_1343))->BgL_typez00); } 
BgL_arg3134z00_1082 = 
(((BgL_typez00_bglt)CREF(BgL_arg3137z00_1083))->BgL_idz00); } 
BgL_arg3131z00_1081 = 
BGl_findzd2typezd2zztype_envz00(BgL_arg3134z00_1082); } 
{ /* ./Ast/hrtype.scm 52 */
BgL_nodez00_bglt BgL_obj1585z00_1345;BgL_typez00_bglt BgL_val1584z00_1346;
BgL_obj1585z00_1345 = 
(BgL_nodez00_bglt)(BgL_nodez00_1076); 
BgL_val1584z00_1346 = BgL_arg3131z00_1081; 
((((BgL_nodez00_bglt)CREF(BgL_obj1585z00_1345))->BgL_typez00) = ((BgL_typez00_bglt)BgL_val1584z00_1346), BUNSPEC); } }  else 
{ /* ./Ast/hrtype.scm 51 */BFALSE; } } 
return BUNSPEC;} } 
}



/* hrtype-node!-kwote2731 */
obj_t BGl_hrtypezd2nodez12zd2kwote2731z12zzast_hrtypez00(obj_t BgL_envz00_2219, obj_t BgL_nodez00_2220)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 43 */
return BUNSPEC;} 
}



/* hrtype-node!-atom2729 */
obj_t BGl_hrtypezd2nodez12zd2atom2729z12zzast_hrtypez00(obj_t BgL_envz00_2221, obj_t BgL_nodez00_2222)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 37 */
return BUNSPEC;} 
}



/* hrtype-node! */
BGL_EXPORTED_DEF obj_t BGl_hrtypezd2nodez12zc0zzast_hrtypez00(BgL_nodez00_bglt BgL_nodez00_1)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 32 */
{ /* ./Ast/hrtype.scm 32 */
obj_t BgL_method2727z00_2130;
{ /* ./Ast/hrtype.scm 32 */
BgL_objectz00_bglt BgL_objz00_2131;
BgL_objz00_2131 = 
(BgL_objectz00_bglt)(BgL_nodez00_1); 
{ /* ./Ast/hrtype.scm 32 */
long BgL_objzd2classzd2numz00_2132;
BgL_objzd2classzd2numz00_2132 = 
BGL_OBJECT_CLASS_NUM(BgL_objz00_2131); 
{ /* ./Ast/hrtype.scm 32 */
obj_t BgL_arg2017z00_2133;
{ /* ./Ast/hrtype.scm 32 */
int BgL_auxz00_3109;
BgL_auxz00_3109 = 
(int)(((long)1)); 
BgL_arg2017z00_2133 = 
PROCEDURE_REF(BGl_hrtypezd2nodez12zd2envz12zzast_hrtypez00, BgL_auxz00_3109); } 
{ /* ./Ast/hrtype.scm 32 */
int BgL_offsetz00_2136;
BgL_offsetz00_2136 = 
(int)(BgL_objzd2classzd2numz00_2132); 
{ /* ./Ast/hrtype.scm 32 */
long BgL_offsetz00_2137;
{ /* ./Ast/hrtype.scm 32 */
long BgL_auxz00_3113;
BgL_auxz00_3113 = 
(long)(BgL_offsetz00_2136); 
BgL_offsetz00_2137 = 
(BgL_auxz00_3113-OBJECT_TYPE); } 
{ /* ./Ast/hrtype.scm 32 */
long BgL_modz00_2138;
{ /* ./Ast/hrtype.scm 32 */
int BgL_arg2028z00_2139;
BgL_arg2028z00_2139 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 32 */
long BgL_n2z00_2147;
BgL_n2z00_2147 = 
(long)(BgL_arg2028z00_2139); 
BgL_modz00_2138 = 
(BgL_offsetz00_2137/BgL_n2z00_2147); } } 
{ /* ./Ast/hrtype.scm 32 */
long BgL_restz00_2140;
{ /* ./Ast/hrtype.scm 32 */
int BgL_arg2024z00_2141;
BgL_arg2024z00_2141 = 
(int)(((long)8)); 
{ /* ./Ast/hrtype.scm 32 */
long BgL_n2z00_2150;
BgL_n2z00_2150 = 
(long)(BgL_arg2024z00_2141); 
BgL_restz00_2140 = 
(BgL_offsetz00_2137%BgL_n2z00_2150); } } 
{ /* ./Ast/hrtype.scm 32 */

{ /* ./Ast/hrtype.scm 32 */
obj_t BgL_bucketz00_2142;
{ /* ./Ast/hrtype.scm 32 */
int BgL_kz00_2152;
BgL_kz00_2152 = 
(int)(BgL_modz00_2138); 
BgL_bucketz00_2142 = 
VECTOR_REF(BgL_arg2017z00_2133,BgL_kz00_2152); } 
{ /* ./Ast/hrtype.scm 32 */
int BgL_kz00_2154;
BgL_kz00_2154 = 
(int)(BgL_restz00_2140); 
BgL_method2727z00_2130 = 
VECTOR_REF(BgL_bucketz00_2142,BgL_kz00_2154); } } } } } } } } } } 
return 
PROCEDURE_ENTRY(BgL_method2727z00_2130)(BgL_method2727z00_2130, 
(obj_t)(BgL_nodez00_1), BEOA);} } 
}



/* _hrtype-node! */
obj_t BGl__hrtypezd2nodez12zc0zzast_hrtypez00(obj_t BgL_envz00_2158, obj_t BgL_nodez00_2159)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 32 */
return 
BGl_hrtypezd2nodez12zc0zzast_hrtypez00(
(BgL_nodez00_bglt)(BgL_nodez00_2159));} 
}



/* hrtype-node!-default2726 */
obj_t BGl_hrtypezd2nodez12zd2default2726z12zzast_hrtypez00(BgL_nodez00_bglt BgL_nodez00_2)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
{ /* ./Ast/hrtype.scm 17 */
obj_t BgL_procz00_2155;obj_t BgL_objectz00_2157;
BgL_procz00_2155 = 
CNST_TABLE_REF(((long)2)); 
BgL_objectz00_2157 = 
(obj_t)(BgL_nodez00_2); 
FAILURE(BgL_procz00_2155,BGl_string4097z00zzast_hrtypez00,BgL_objectz00_2157);} } 
}



/* _hrtype-node!-default2726 */
obj_t BGl__hrtypezd2nodez12zd2default2726z12zzast_hrtypez00(obj_t BgL_envz00_2223, obj_t BgL_nodez00_2224)
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
return 
BGl_hrtypezd2nodez12zd2default2726z12zzast_hrtypez00(
(BgL_nodez00_bglt)(BgL_nodez00_2224));} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzast_hrtypez00()
{ AN_OBJECT;
{ /* ./Ast/hrtype.scm 17 */
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zztype_envz00(((long)25186), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zztype_typeofz00(((long)852), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zztools_shapez00(((long)30833), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zzmodule_modulez00(((long)8699), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "ast_hrtype"); 
BGl_modulezd2initializa7ationz75zzast_envz00(((long)62031), "ast_hrtype"); 
return 
BGl_modulezd2initializa7ationz75zzast_nodez00(((long)50868), "ast_hrtype");} 
}

