/*===========================================================================*/
/*   (Llib/hash.scm)                                                         */
/*   Bigloo (4.5b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Fri Dec 22 05:17:06 PM CET 2023     */
/*===========================================================================*/
/* COMPILATION: (/home/serrano/prgm/project/bigloo/bigloo/bin/bigloo -ldopt -L/home/serrano/prgm/project/bigloo/bigloo/libbacktrace/home/serrano/prgm/project/bigloo/bigloo/lib/bigloo/4.5b  -srfi enable-gmp -srfi bigloo-safe -O3 -fcfa-arithmetic -q -lib-dir /home/serrano/prgm/project/bigloo/bigloo/lib/bigloo/4.5b -rm -copt -w -lib-dir /home/serrano/prgm/project/bigloo/bigloo/lib/bigloo/4.5b -O3 -mklib -cc gcc -fsharing -q -unsafev -eval (set! *indent* 4) -stdc -c Llib/hash.scm -indent -o objs/obj_s/Llib/hash.c) */
/* GC selection */
#define THE_GC BOEHM_GC

/* traces mode */
#define BIGLOO_TRACE 0

/* standard Bigloo include */
#include <bigloo.h>

#ifdef __cplusplus
extern "C" {
#endif
#ifndef BGL_MODULE_TYPE_DEFINITIONS
#define BGL_MODULE_TYPE_DEFINITIONS
#ifndef BGL___HASH_TYPE_DEFINITIONS
#define BGL___HASH_TYPE_DEFINITIONS

/* object type definitions */

#endif // BGL___HASH_TYPE_DEFINITIONS
#endif // BGL_MODULE_TYPE_DEFINITIONS

static obj_t BGl_plainzd2hashtablezd2getz00zz__hashz00(obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2putz12z12zz__weakhashz00(obj_t, obj_t, obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2addz12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_list3983z00zz__hashz00 = BUNSPEC;
static bool_t BGl_plainzd2hashtablezd2containszf3zf3zz__hashz00(obj_t, obj_t);
extern long bgl_symbol_hash_number_persistent(obj_t);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2getzd2zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2putz12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2forzd2eachz62zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_search1162ze70ze7zz__hashz00(long, obj_t, obj_t, long);
static obj_t BGl_requirezd2initializa7ationz75zz__hashz00 = BUNSPEC;
static long BGl_defaultzd2maxzd2bucketzd2lengthzd2zz__hashz00;
static obj_t BGl_list3997z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2updatez12z12zz__hashz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2updatez12z12zz__weakhashz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_typezd2errorzd2zz__errorz00(obj_t, obj_t, obj_t, obj_t, obj_t);
extern long bgl_string_hash_persistent(char *, int, int);
extern long bgl_keyword_hash_number(obj_t);
BGL_EXPORTED_DECL long BGl_stringzd2hashzd2numberz00zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2collisionszb0zz__hashz00(obj_t, obj_t);
static obj_t BGl_toplevelzd2initzd2zz__hashz00(void);
static obj_t BGl_z62openzd2stringzd2hashtablezd2mapzb0zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_symbol3900z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3902z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_formatz00zz__r4_output_6_10_3z00(obj_t, obj_t);
static obj_t BGl_z62getzd2pointerzd2hashnumberz62zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2collisionszd2zz__hashz00(obj_t);
static obj_t BGl_keyword3874z00zz__hashz00 = BUNSPEC;
static obj_t BGl_keyword3876z00zz__hashz00 = BUNSPEC;
static obj_t BGl_genericzd2initzd2zz__hashz00(void);
static obj_t BGl_keyword3878z00zz__hashz00 = BUNSPEC;
static bool_t BGl_hashtablezd2weakzf3z21zz__hashz00(obj_t);
static obj_t BGl_objectzd2initzd2zz__hashz00(void);
static obj_t BGl_keyword3880z00zz__hashz00 = BUNSPEC;
static obj_t BGl_keyword3882z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_2za2za2zz__r4_numbers_6_5z00(obj_t, obj_t);
static obj_t BGl_keyword3884z00zz__hashz00 = BUNSPEC;
static obj_t BGl_keyword3885z00zz__hashz00 = BUNSPEC;
static obj_t BGl_keyword3887z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2forzd2eachz00zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62stringzd2hashtablezd2getz62zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_hashtablezd2removez12zc0zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2ze3vectorz31zz__hashz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_createzd2hashtablezd2zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol3848z00zz__hashz00 = BUNSPEC;
static obj_t BGl_openzd2stringzd2hashtablezd2keyzd2listz00zz__hashz00(obj_t);
extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_stringzd2hashtablezd2putz12z12zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2mapzd2zz__hashz00(obj_t, obj_t);
static obj_t BGl_plainzd2hashtablezd2mapz00zz__hashz00(obj_t, obj_t);
extern obj_t string_append_3(obj_t, obj_t, obj_t);
static obj_t BGl_symbol3853z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3855z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3857z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3939z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62openzd2stringzd2hashtablezd2removez12za2zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2mapzd2zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_stringzd2hashtablezd2getz00zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2filterz12zc0zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62hashtablezd2forzd2eachz62zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_list4005z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3860z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3941z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3943z00zz__hashz00 = BUNSPEC;
extern obj_t bstring_to_symbol(obj_t);
BGL_EXPORTED_DECL bool_t BGl_hashtablezf3zf3zz__hashz00(obj_t);
extern bool_t BGl_weakzd2hashtablezd2containszf3zf3zz__weakhashz00(obj_t, obj_t);
static obj_t BGl_symbol3949z00zz__hashz00 = BUNSPEC;
extern long bgl_foreign_hash_number(obj_t);
static obj_t BGl_z62hashtablezd2keyzd2listz62zz__hashz00(obj_t, obj_t);
extern obj_t make_vector(long, obj_t);
static obj_t BGl_z62hashtablezd2updatez12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2ze3listze3zz__weakhashz00(obj_t);
static obj_t BGl_symbol3870z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3951z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62openzd2stringzd2hashtablezd2filterz12za2zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_z62zc3z04anonymousza31412ze3ze5zz__hashz00(obj_t, obj_t);
static obj_t BGl_symbol3956z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3958z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62getzd2hashnumberzd2persistentz62zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_z42openzd2stringzd2hashtablezd2getz90zz__hashz00(obj_t, char *);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2updatez12zc0zz__hashz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_methodzd2initzd2zz__hashz00(void);
static obj_t BGl_list4021z00zz__hashz00 = BUNSPEC;
static obj_t BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(obj_t, obj_t, obj_t, obj_t);
static bool_t BGl_plainzd2hashtablezd2removez12z12zz__hashz00(obj_t, obj_t);
static obj_t BGl_list4027z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2ze3vectorze3zz__hashz00(obj_t);
static obj_t BGl_symbol3965z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3967z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62hashtablezf3z91zz__hashz00(obj_t, obj_t);
static obj_t BGl_symbol3889z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_weakzd2hashtablezd2removez12z12zz__weakhashz00(obj_t, obj_t);
static obj_t BGl_z62stringzd2hashtablezd2putz12z70zz__hashz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2ze3vectorze3zz__weakhashz00(obj_t);
static obj_t BGl_list4034z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_bigloozd2typezd2errorzf2locationzf2zz__errorz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_list4037z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3974z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3894z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3976z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3896z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3898z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2collisionsz00zz__hashz00(obj_t);
static obj_t BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(obj_t);
extern obj_t obj_to_string(obj_t, obj_t);
static obj_t BGl_z62makezd2hashtablezb0zz__hashz00(obj_t, obj_t);
static obj_t BGl_plainzd2hashtablezd2filterz12z12zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62z42openzd2stringzd2hashtablezd2getzf2zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_list4043z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list4046z00zz__hashz00 = BUNSPEC;
extern long bgl_string_hash(char *, int, int);
static obj_t BGl_z62hashtablezd2weakzd2datazf3z91zz__hashz00(obj_t, obj_t);
static obj_t BGl_symbol3984z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3986z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_weakzd2hashtablezd2filterz12z12zz__weakhashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2containszf3z21zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62hashtablezd2siza7ez17zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2containszf3z43zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_list4052z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list4055z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol3998z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL long BGl_getzd2hashnumberzd2persistentz00zz__hashz00(obj_t);
BGL_EXPORTED_DECL bool_t BGl_hashtablezd2weakzd2datazf3zf3zz__hashz00(obj_t);
extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
static obj_t BGl_list4064z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62zc3z04anonymousza31611ze3ze5zz__hashz00(obj_t, obj_t);
static obj_t BGl_list4067z00zz__hashz00 = BUNSPEC;
static bool_t BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2ze3listz31zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2ze3listz53zz__hashz00(obj_t, obj_t);
extern long bgl_symbol_hash_number(obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2clearz12zc0zz__hashz00(obj_t);
extern long bgl_pointer_hashnumber(obj_t, long);
extern obj_t BGl_weakzd2hashtablezd2getz00zz__weakhashz00(obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2forzd2eachzd2zz__weakhashz00(obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2keyzd2listzd2zz__weakhashz00(obj_t);
static obj_t BGl_list4082z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2ze3listze3zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2weakzd2keyszf3z91zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2hashtablezd2zz__hashz00(obj_t);
static bool_t BGl_openzd2stringzd2hashtablezd2rehashz12zc0zz__hashz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__hashz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__weakhashz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
static obj_t BGl_z62hashtablezd2containszf3z43zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_plainzd2hashtablezd2clearz12z12zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2removez12za2zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_z62hashtablezd2ze3vectorz53zz__hashz00(obj_t, obj_t);
BGL_EXPORTED_DECL long BGl_hashtablezd2siza7ez75zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2getzb0zz__hashz00(obj_t, obj_t, obj_t);
extern obj_t BGl_vectorzd2fillz12zc0zz__r4_vectors_6_8z00(obj_t, obj_t, long, long);
BGL_EXPORTED_DECL bool_t BGl_hashtablezd2weakzd2keyszf3zf3zz__hashz00(obj_t);
static obj_t BGl_z62hashtablezd2addz12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2removez12zc0zz__hashz00(obj_t, obj_t);
static obj_t BGl_openzd2stringzd2hashtablezd2ze3vectorz31zz__hashz00(obj_t);
extern obj_t BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(long, long);
static obj_t BGl_z62hashtablezd2putz12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t);
extern long bgl_obj_hash_number(obj_t);
static obj_t BGl_z62hashtablezd2filterz12za2zz__hashz00(obj_t, obj_t, obj_t);
extern obj_t create_struct(obj_t, int);
static obj_t BGl_cnstzd2initzd2zz__hashz00(void);
static long BGl_objzd2hashze70z35zz__hashz00(obj_t);
static obj_t BGl_symbol4000z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol4006z00zz__hashz00 = BUNSPEC;
extern long bgl_list_length(obj_t);
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2filterz12zc0zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62stringzd2hashzd2numberz62zz__hashz00(obj_t, obj_t);
static obj_t BGl_z62hashtablezd2clearz12za2zz__hashz00(obj_t, obj_t);
static obj_t BGl_importedzd2moduleszd2initz00zz__hashz00(void);
static obj_t BGl_gczd2rootszd2initz00zz__hashz00(void);
static obj_t BGl_openzd2stringzd2hashtablezd2ze3listz31zz__hashz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2forzd2eachz00zz__hashz00(obj_t, obj_t);
extern obj_t BGl_homogeneouszd2vectorzd2infoz00zz__srfi4z00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2keyzd2listz00zz__hashz00(obj_t);
static obj_t BGl_symbol4022z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol4028z00zz__hashz00 = BUNSPEC;
static obj_t BGl__stringzd2hashzd2zz__hashz00(obj_t, obj_t);
extern obj_t BGl_weakzd2hashtablezd2mapz00zz__weakhashz00(obj_t, obj_t);
static obj_t BGl_symbol4030z00zz__hashz00 = BUNSPEC;
static obj_t BGl_z62getzd2hashnumberzb0zz__hashz00(obj_t, obj_t);
static obj_t BGl_symbol4035z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol4038z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_filterz12z12zz__r4_control_features_6_9z00(obj_t, obj_t);
extern long bgl_keyword_hash_number_persistent(obj_t);
static obj_t BGl_symbol4044z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2addz12zc0zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_openzd2stringzd2hashtablezd2clearz12zc0zz__hashz00(obj_t);
static obj_t BGl_symbol4047z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2putz12zc0zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_hashtablezd2containszf3z21zz__hashz00(obj_t, obj_t);
extern obj_t BGl_bigloozd2typezd2errorz00zz__errorz00(obj_t, obj_t, obj_t);
static obj_t BGl_symbol4053z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2addz12z12zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol4056z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL long BGl_getzd2pointerzd2hashnumberz00zz__hashz00(obj_t, long);
BGL_EXPORTED_DECL long BGl_stringzd2hashzd2zz__hashz00(obj_t, obj_t, obj_t);
extern obj_t BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(obj_t, obj_t, obj_t, obj_t, int, int);
static obj_t BGl_list3852z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list3938z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2putz12z12zz__hashz00(obj_t, obj_t, obj_t);
static long BGl_defaultzd2hashtablezd2bucketzd2lengthzd2zz__hashz00;
static obj_t BGl_z62hashtablezd2mapzb0zz__hashz00(obj_t, obj_t, obj_t);
static bool_t BGl_plainzd2hashtablezd2forzd2eachzd2zz__hashz00(obj_t, obj_t);
static obj_t BGl_symbol4065z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol4068z00zz__hashz00 = BUNSPEC;
static obj_t BGl_plainzd2hashtablezd2keyzd2listzd2zz__hashz00(obj_t);
extern long bgl_date_to_seconds(obj_t);
static obj_t BGl_list3948z00zz__hashz00 = BUNSPEC;
extern obj_t bstring_to_keyword(obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2getzb0zz__hashz00(obj_t, obj_t, obj_t);
static obj_t BGl_symbol4079z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list3873z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list3955z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2updatez12zc0zz__hashz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_openzd2stringzd2hashtablezd2siza7ezd2incz12zb5zz__hashz00(obj_t);
static obj_t BGl_symbol4083z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2addz12zc0zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_symbol4085z00zz__hashz00 = BUNSPEC;
static obj_t BGl_symbol4089z00zz__hashz00 = BUNSPEC;
static obj_t BGl_list3964z00zz__hashz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_openzd2stringzd2hashtablezd2putz12zc0zz__hashz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL long BGl_getzd2hashnumberzd2zz__hashz00(obj_t);
static obj_t BGl_z62openzd2stringzd2hashtablezd2updatez12za2zz__hashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl__createzd2hashtablezd2zz__hashz00(obj_t, obj_t);
static long BGl_tablezd2getzd2hashnumberz00zz__hashz00(obj_t, obj_t);
extern long BGl_objectzd2hashnumberzd2zz__objectz00(BgL_objectz00_bglt);
static obj_t BGl_list3973z00zz__hashz00 = BUNSPEC;
extern obj_t BGl_weakzd2hashtablezd2clearz12z12zz__weakhashz00(obj_t);
extern obj_t BGl_weakzd2hashtablezd2addz12z12zz__weakhashz00(obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hashtablezd2getzd2zz__hashz00(obj_t, obj_t);
static obj_t *__cnst;


DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2filterz12zd2envz12zz__hashz00, BgL_bgl_za762openza7d2string4097z00, BGl_z62openzd2stringzd2hashtablezd2filterz12za2zz__hashz00, 0L, BUNSPEC, 2 );
extern obj_t BGl_listzd2envzd2zz__r4_pairs_and_lists_6_3z00;
DEFINE_STRING( BGl_string4001z00zz__hashz00, BgL_bgl_string4001za700za7za7_4098za7, "arg1649", 7 );
DEFINE_STRING( BGl_string4002z00zz__hashz00, BgL_bgl_string4002za700za7za7_4099za7, "hashtable-get", 13 );
DEFINE_STRING( BGl_string4003z00zz__hashz00, BgL_bgl_string4003za700za7za7_4100za7, "&hashtable-get", 14 );
DEFINE_STRING( BGl_string4004z00zz__hashz00, BgL_bgl_string4004za700za7za7_4101za7, "plain-hashtable-get", 19 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2keyzd2listzd2envzd2zz__hashz00, BgL_bgl_za762hashtableza7d2k4102z00, BGl_z62hashtablezd2keyzd2listz62zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string4007z00zz__hashz00, BgL_bgl_string4007za700za7za7_4103za7, "arg1662", 7 );
DEFINE_STRING( BGl_string4008z00zz__hashz00, BgL_bgl_string4008za700za7za7_4104za7, "string-hashtable-get", 20 );
DEFINE_STRING( BGl_string4009z00zz__hashz00, BgL_bgl_string4009za700za7za7_4105za7, "&string-hashtable-get", 21 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2siza7ezd2envza7zz__hashz00, BgL_bgl_za762hashtableza7d2s4106z00, BGl_z62hashtablezd2siza7ez17zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2mapzd2envz00zz__hashz00, BgL_bgl_za762hashtableza7d2m4107z00, BGl_z62hashtablezd2mapzb0zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_stringzd2hashtablezd2putz12zd2envzc0zz__hashz00, BgL_bgl_za762stringza7d2hash4108z00, BGl_z62stringzd2hashtablezd2putz12z70zz__hashz00, 0L, BUNSPEC, 3 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2getzd2envz00zz__hashz00, BgL_bgl_za762hashtableza7d2g4109z00, BGl_z62hashtablezd2getzb0zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_STRING( BGl_string4010z00zz__hashz00, BgL_bgl_string4010za700za7za7_4110za7, "open-string-hashtable-get", 25 );
DEFINE_STRING( BGl_string4011z00zz__hashz00, BgL_bgl_string4011za700za7za7_4111za7, "&open-string-hashtable-get", 26 );
DEFINE_STRING( BGl_string4012z00zz__hashz00, BgL_bgl_string4012za700za7za7_4112za7, "$open-string-hashtable-get", 26 );
DEFINE_STRING( BGl_string4013z00zz__hashz00, BgL_bgl_string4013za700za7za7_4113za7, "&$open-string-hashtable-get", 27 );
DEFINE_STRING( BGl_string4014z00zz__hashz00, BgL_bgl_string4014za700za7za7_4114za7, "hashtable-put!", 14 );
DEFINE_STRING( BGl_string4015z00zz__hashz00, BgL_bgl_string4015za700za7za7_4115za7, "&hashtable-put!", 15 );
DEFINE_STRING( BGl_string4016z00zz__hashz00, BgL_bgl_string4016za700za7za7_4116za7, "&open-string-hashtable-put!", 27 );
DEFINE_STRING( BGl_string4017z00zz__hashz00, BgL_bgl_string4017za700za7za7_4117za7, "open-string-hashtable-put/hash!", 31 );
DEFINE_STRING( BGl_string4018z00zz__hashz00, BgL_bgl_string4018za700za7za7_4118za7, "string-hashtable-put!", 21 );
DEFINE_STRING( BGl_string4019z00zz__hashz00, BgL_bgl_string4019za700za7za7_4119za7, "&string-hashtable-put!", 22 );
extern obj_t BGl_stringzd3zf3zd2envzf2zz__r4_strings_6_7z00;
DEFINE_STRING( BGl_string4020z00zz__hashz00, BgL_bgl_string4020za700za7za7_4120za7, "plain-hashtable-put!", 20 );
DEFINE_STRING( BGl_string4023z00zz__hashz00, BgL_bgl_string4023za700za7za7_4121za7, "arg1788", 7 );
DEFINE_STRING( BGl_string4024z00zz__hashz00, BgL_bgl_string4024za700za7za7_4122za7, "hashtable-update!", 17 );
DEFINE_STRING( BGl_string4025z00zz__hashz00, BgL_bgl_string4025za700za7za7_4123za7, "&hashtable-update!", 18 );
DEFINE_STRING( BGl_string4026z00zz__hashz00, BgL_bgl_string4026za700za7za7_4124za7, "open-string-hashtable-update!", 29 );
DEFINE_STRING( BGl_string4029z00zz__hashz00, BgL_bgl_string4029za700za7za7_4125za7, "proc", 4 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2collisionszd2envz00zz__hashz00, BgL_bgl_za762hashtableza7d2c4126z00, BGl_z62hashtablezd2collisionszb0zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2addz12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2a4127z00, BGl_z62hashtablezd2addz12za2zz__hashz00, 0L, BUNSPEC, 5 );
DEFINE_STRING( BGl_string4031z00zz__hashz00, BgL_bgl_string4031za700za7za7_4128za7, "oval", 4 );
DEFINE_STRING( BGl_string4032z00zz__hashz00, BgL_bgl_string4032za700za7za7_4129za7, "&open-string-hashtable-update!", 30 );
DEFINE_STRING( BGl_string4033z00zz__hashz00, BgL_bgl_string4033za700za7za7_4130za7, "plain-hashtable-update!", 23 );
DEFINE_STRING( BGl_string4036z00zz__hashz00, BgL_bgl_string4036za700za7za7_4131za7, "arg1832", 7 );
DEFINE_STRING( BGl_string4039z00zz__hashz00, BgL_bgl_string4039za700za7za7_4132za7, "arg1829", 7 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2putz12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2p4133z00, BGl_z62hashtablezd2putz12za2zz__hashz00, 0L, BUNSPEC, 3 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_getzd2hashnumberzd2envz00zz__hashz00, BgL_bgl_za762getza7d2hashnum4134z00, BGl_z62getzd2hashnumberzb0zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2removez12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2r4135z00, BGl_z62hashtablezd2removez12za2zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_STRING( BGl_string4040z00zz__hashz00, BgL_bgl_string4040za700za7za7_4136za7, "hashtable-add!", 14 );
DEFINE_STRING( BGl_string4041z00zz__hashz00, BgL_bgl_string4041za700za7za7_4137za7, "&hashtable-add!", 15 );
DEFINE_STRING( BGl_string4042z00zz__hashz00, BgL_bgl_string4042za700za7za7_4138za7, "open-string-hashtable-add!", 26 );
DEFINE_STRING( BGl_string4045z00zz__hashz00, BgL_bgl_string4045za700za7za7_4139za7, "init", 4 );
DEFINE_STRING( BGl_string4048z00zz__hashz00, BgL_bgl_string4048za700za7za7_4140za7, "obj", 3 );
DEFINE_STRING( BGl_string4049z00zz__hashz00, BgL_bgl_string4049za700za7za7_4141za7, "&open-string-hashtable-add!", 27 );
DEFINE_STRING( BGl_string4050z00zz__hashz00, BgL_bgl_string4050za700za7za7_4142za7, "plain-hashtable-add!", 20 );
DEFINE_STRING( BGl_string4051z00zz__hashz00, BgL_bgl_string4051za700za7za7_4143za7, "plain-hashtable-add!:Wrong number of arguments", 46 );
DEFINE_STRING( BGl_string4054z00zz__hashz00, BgL_bgl_string4054za700za7za7_4144za7, "arg1883", 7 );
DEFINE_STRING( BGl_string4057z00zz__hashz00, BgL_bgl_string4057za700za7za7_4145za7, "arg1880", 7 );
DEFINE_STRING( BGl_string4058z00zz__hashz00, BgL_bgl_string4058za700za7za7_4146za7, "hashtable-remove!", 17 );
DEFINE_STRING( BGl_string4059z00zz__hashz00, BgL_bgl_string4059za700za7za7_4147za7, "&hashtable-remove!", 18 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2filterz12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2f4148z00, BGl_z62hashtablezd2filterz12za2zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_STRING( BGl_string4060z00zz__hashz00, BgL_bgl_string4060za700za7za7_4149za7, "open-string-hashtable-remove!", 29 );
DEFINE_STRING( BGl_string4061z00zz__hashz00, BgL_bgl_string4061za700za7za7_4150za7, "&open-string-hashtable-remove!", 30 );
DEFINE_STRING( BGl_string4062z00zz__hashz00, BgL_bgl_string4062za700za7za7_4151za7, "plain-hashtable-remove!", 23 );
DEFINE_STRING( BGl_string4063z00zz__hashz00, BgL_bgl_string4063za700za7za7_4152za7, "plain-hashtable-remove!:Wrong number of arguments", 49 );
DEFINE_STRING( BGl_string4066z00zz__hashz00, BgL_bgl_string4066za700za7za7_4153za7, "arg1922", 7 );
DEFINE_STRING( BGl_string4069z00zz__hashz00, BgL_bgl_string4069za700za7za7_4154za7, "arg1921", 7 );
DEFINE_STRING( BGl_string4070z00zz__hashz00, BgL_bgl_string4070za700za7za7_4155za7, "plain-hashtable-expand!", 23 );
DEFINE_STRING( BGl_string4071z00zz__hashz00, BgL_bgl_string4071za700za7za7_4156za7, "<@anonymous:1932>", 17 );
DEFINE_STRING( BGl_string4072z00zz__hashz00, BgL_bgl_string4072za700za7za7_4157za7, "Hashtable too large (new-len=~a/~a, size=~a)", 44 );
DEFINE_STRING( BGl_string4073z00zz__hashz00, BgL_bgl_string4073za700za7za7_4158za7, "&hashtable-collisions", 21 );
DEFINE_STRING( BGl_string4074z00zz__hashz00, BgL_bgl_string4074za700za7za7_4159za7, "plain-hashtable-collisions", 26 );
DEFINE_STRING( BGl_string4075z00zz__hashz00, BgL_bgl_string4075za700za7za7_4160za7, "get-hashnumber", 14 );
DEFINE_STRING( BGl_string4076z00zz__hashz00, BgL_bgl_string4076za700za7za7_4161za7, "real", 4 );
DEFINE_STRING( BGl_string4077z00zz__hashz00, BgL_bgl_string4077za700za7za7_4162za7, "index out of range [0..", 23 );
DEFINE_STRING( BGl_string4078z00zz__hashz00, BgL_bgl_string4078za700za7za7_4163za7, "]", 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_z42openzd2stringzd2hashtablezd2getzd2envz42zz__hashz00, BgL_bgl_za762za742openza7d2str4164za7, BGl_z62z42openzd2stringzd2hashtablezd2getzf2zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2updatez12zd2envz12zz__hashz00, BgL_bgl_za762openza7d2string4165z00, BGl_z62openzd2stringzd2hashtablezd2updatez12za2zz__hashz00, 0L, BUNSPEC, 4 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2forzd2eachzd2envzd2zz__hashz00, BgL_bgl_za762openza7d2string4166z00, BGl_z62openzd2stringzd2hashtablezd2forzd2eachz62zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2weakzd2datazf3zd2envz21zz__hashz00, BgL_bgl_za762hashtableza7d2w4167z00, BGl_z62hashtablezd2weakzd2datazf3z91zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string4080z00zz__hashz00, BgL_bgl_string4080za700za7za7_4168za7, "ucs2-string-ref", 15 );
DEFINE_STRING( BGl_string4081z00zz__hashz00, BgL_bgl_string4081za700za7za7_4169za7, "bucs2", 5 );
DEFINE_STRING( BGl_string4084z00zz__hashz00, BgL_bgl_string4084za700za7za7_4170za7, "get", 3 );
DEFINE_STRING( BGl_string4086z00zz__hashz00, BgL_bgl_string4086za700za7za7_4171za7, "i", 1 );
DEFINE_STRING( BGl_string4087z00zz__hashz00, BgL_bgl_string4087za700za7za7_4172za7, "obj-hash~0", 10 );
DEFINE_STRING( BGl_string4088z00zz__hashz00, BgL_bgl_string4088za700za7za7_4173za7, "&get-pointer-hashnumber", 23 );
DEFINE_STRING( BGl_string4090z00zz__hashz00, BgL_bgl_string4090za700za7za7_4174za7, "string-hash", 11 );
DEFINE_STRING( BGl_string4091z00zz__hashz00, BgL_bgl_string4091za700za7za7_4175za7, "wrong number of arguments: [1..3] expected, provided", 52 );
DEFINE_STRING( BGl_string4092z00zz__hashz00, BgL_bgl_string4092za700za7za7_4176za7, "_string-hash", 12 );
DEFINE_STRING( BGl_string4093z00zz__hashz00, BgL_bgl_string4093za700za7za7_4177za7, "&string-hash-number", 19 );
DEFINE_STRING( BGl_string4094z00zz__hashz00, BgL_bgl_string4094za700za7za7_4178za7, "open-string-hashtable-rehash!", 29 );
DEFINE_STRING( BGl_string4095z00zz__hashz00, BgL_bgl_string4095za700za7za7_4179za7, "open-string-hashtable-size-inc!", 31 );
DEFINE_STRING( BGl_string4096z00zz__hashz00, BgL_bgl_string4096za700za7za7_4180za7, "__hash", 6 );
extern obj_t BGl_eqzf3zd2envz21zz__r4_equivalence_6_2z00;
DEFINE_EXPORT_BGL_PROCEDURE( BGl_makezd2hashtablezd2envz00zz__hashz00, BgL_bgl_za762makeza7d2hashta4181z00, va_generic_entry, BGl_z62makezd2hashtablezb0zz__hashz00, BUNSPEC, -1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_getzd2hashnumberzd2persistentzd2envzd2zz__hashz00, BgL_bgl_za762getza7d2hashnum4182z00, BGl_z62getzd2hashnumberzd2persistentz62zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2forzd2eachzd2envzd2zz__hashz00, BgL_bgl_za762hashtableza7d2f4183z00, BGl_z62hashtablezd2forzd2eachz62zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2ze3vectorzd2envze3zz__hashz00, BgL_bgl_za762hashtableza7d2za74184za7, BGl_z62hashtablezd2ze3vectorz53zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2mapzd2envz00zz__hashz00, BgL_bgl_za762openza7d2string4185z00, BGl_z62openzd2stringzd2hashtablezd2mapzb0zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2getzd2envz00zz__hashz00, BgL_bgl_za762openza7d2string4186z00, BGl_z62openzd2stringzd2hashtablezd2getzb0zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2updatez12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2u4187z00, BGl_z62hashtablezd2updatez12za2zz__hashz00, 0L, BUNSPEC, 4 );
DEFINE_STRING( BGl_string3901z00zz__hashz00, BgL_bgl_string3901za700za7za7_4188za7, "open-string", 11 );
DEFINE_STRING( BGl_string3903z00zz__hashz00, BgL_bgl_string3903za700za7za7_4189za7, "string", 6 );
DEFINE_STRING( BGl_string3904z00zz__hashz00, BgL_bgl_string3904za700za7za7_4190za7, "Persistent hashtable cannot use custom hash function", 52 );
DEFINE_STRING( BGl_string3905z00zz__hashz00, BgL_bgl_string3905za700za7za7_4191za7, "Cannot provide eqtest for string hashtable", 42 );
DEFINE_STRING( BGl_string3906z00zz__hashz00, BgL_bgl_string3906za700za7za7_4192za7, "Cannot provide hash for string hashtable", 40 );
DEFINE_STRING( BGl_string3908z00zz__hashz00, BgL_bgl_string3908za700za7za7_4193za7, "<@anonymous:1412>", 17 );
DEFINE_STRING( BGl_string3909z00zz__hashz00, BgL_bgl_string3909za700za7za7_4194za7, "bstring", 7 );
DEFINE_STRING( BGl_string3910z00zz__hashz00, BgL_bgl_string3910za700za7za7_4195za7, "hashtable?", 10 );
DEFINE_STRING( BGl_string3911z00zz__hashz00, BgL_bgl_string3911za700za7za7_4196za7, "hashtable-weak?", 15 );
DEFINE_STRING( BGl_string3912z00zz__hashz00, BgL_bgl_string3912za700za7za7_4197za7, "hashtable-open-string?", 22 );
DEFINE_STATIC_BGL_PROCEDURE( BGl_proc3907z00zz__hashz00, BgL_bgl_za762za7c3za704anonymo4198za7, BGl_z62zc3z04anonymousza31412ze3ze5zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3913z00zz__hashz00, BgL_bgl_string3913za700za7za7_4199za7, "hashtable-weak-keys?", 20 );
DEFINE_STRING( BGl_string3914z00zz__hashz00, BgL_bgl_string3914za700za7za7_4200za7, "&hashtable-weak-keys?", 21 );
DEFINE_STRING( BGl_string3915z00zz__hashz00, BgL_bgl_string3915za700za7za7_4201za7, "struct", 6 );
DEFINE_STRING( BGl_string3916z00zz__hashz00, BgL_bgl_string3916za700za7za7_4202za7, "hashtable-weak-data?", 20 );
DEFINE_STRING( BGl_string3917z00zz__hashz00, BgL_bgl_string3917za700za7za7_4203za7, "&hashtable-weak-data?", 21 );
DEFINE_STRING( BGl_string3918z00zz__hashz00, BgL_bgl_string3918za700za7za7_4204za7, "hashtable-size", 14 );
DEFINE_STRING( BGl_string3919z00zz__hashz00, BgL_bgl_string3919za700za7za7_4205za7, "&hashtable-size", 15 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2clearz12zd2envz12zz__hashz00, BgL_bgl_za762hashtableza7d2c4206z00, BGl_z62hashtablezd2clearz12za2zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3920z00zz__hashz00, BgL_bgl_string3920za700za7za7_4207za7, "&hashtable->vector", 18 );
DEFINE_STRING( BGl_string3921z00zz__hashz00, BgL_bgl_string3921za700za7za7_4208za7, "open-string-hashtable->vector", 29 );
DEFINE_STRING( BGl_string3922z00zz__hashz00, BgL_bgl_string3922za700za7za7_4209za7, "loop", 4 );
DEFINE_STRING( BGl_string3923z00zz__hashz00, BgL_bgl_string3923za700za7za7_4210za7, "vector", 6 );
DEFINE_STRING( BGl_string3924z00zz__hashz00, BgL_bgl_string3924za700za7za7_4211za7, "vector-set!", 11 );
DEFINE_STRING( BGl_string3925z00zz__hashz00, BgL_bgl_string3925za700za7za7_4212za7, "plain-hashtable->vector", 23 );
DEFINE_STRING( BGl_string3845z00zz__hashz00, BgL_bgl_string3845za700za7za7_4213za7, "/tmp/bigloo/runtime/Llib/hash.sch", 33 );
DEFINE_STRING( BGl_string3926z00zz__hashz00, BgL_bgl_string3926za700za7za7_4214za7, "liip", 4 );
DEFINE_STRING( BGl_string3846z00zz__hashz00, BgL_bgl_string3846za700za7za7_4215za7, "table-get-hashnumber", 20 );
DEFINE_STRING( BGl_string3927z00zz__hashz00, BgL_bgl_string3927za700za7za7_4216za7, "pair", 4 );
DEFINE_STRING( BGl_string3847z00zz__hashz00, BgL_bgl_string3847za700za7za7_4217za7, "symbol", 6 );
DEFINE_STRING( BGl_string3928z00zz__hashz00, BgL_bgl_string3928za700za7za7_4218za7, "&hashtable->list", 16 );
DEFINE_STRING( BGl_string3929z00zz__hashz00, BgL_bgl_string3929za700za7za7_4219za7, "open-string-hashtable->list", 27 );
DEFINE_STRING( BGl_string3849z00zz__hashz00, BgL_bgl_string3849za700za7za7_4220za7, "%hashtable", 10 );
DEFINE_REAL( BGl_real3869z00zz__hashz00, BgL_bgl_real3869za700za7za7__h4221za7, 1.2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezf3zd2envz21zz__hashz00, BgL_bgl_za762hashtableza7f3za74222za7, BGl_z62hashtablezf3z91zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3930z00zz__hashz00, BgL_bgl_string3930za700za7za7_4223za7, "plain-hashtable->list", 21 );
DEFINE_STRING( BGl_string3850z00zz__hashz00, BgL_bgl_string3850za700za7za7_4224za7, "struct-ref:not an instance of", 29 );
DEFINE_STRING( BGl_string3931z00zz__hashz00, BgL_bgl_string3931za700za7za7_4225za7, "&hashtable-key-list", 19 );
DEFINE_STRING( BGl_string3851z00zz__hashz00, BgL_bgl_string3851za700za7za7_4226za7, "table-get-hashnumber:Wrong number of arguments", 46 );
DEFINE_STRING( BGl_string3932z00zz__hashz00, BgL_bgl_string3932za700za7za7_4227za7, "open-string-hashtable-key-list", 30 );
DEFINE_STRING( BGl_string3933z00zz__hashz00, BgL_bgl_string3933za700za7za7_4228za7, "plain-hashtable-key-list", 24 );
DEFINE_STRING( BGl_string3934z00zz__hashz00, BgL_bgl_string3934za700za7za7_4229za7, "&hashtable-map", 14 );
DEFINE_STRING( BGl_string3854z00zz__hashz00, BgL_bgl_string3854za700za7za7_4230za7, "funcall", 7 );
DEFINE_STRING( BGl_string3935z00zz__hashz00, BgL_bgl_string3935za700za7za7_4231za7, "procedure", 9 );
DEFINE_STRING( BGl_string3936z00zz__hashz00, BgL_bgl_string3936za700za7za7_4232za7, "open-string-hashtable-map", 25 );
DEFINE_STRING( BGl_string3856z00zz__hashz00, BgL_bgl_string3856za700za7za7_4233za7, "hashn", 5 );
DEFINE_STRING( BGl_string3937z00zz__hashz00, BgL_bgl_string3937za700za7za7_4234za7, "loop:Wrong number of arguments", 30 );
DEFINE_STRING( BGl_string3858z00zz__hashz00, BgL_bgl_string3858za700za7za7_4235za7, "key", 3 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2containszf3zd2envzf3zz__hashz00, BgL_bgl_za762openza7d2string4236z00, BGl_z62openzd2stringzd2hashtablezd2containszf3z43zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_STRING( BGl_string3859z00zz__hashz00, BgL_bgl_string3859za700za7za7_4237za7, "bint", 4 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2addz12zd2envz12zz__hashz00, BgL_bgl_za762openza7d2string4238z00, BGl_z62openzd2stringzd2hashtablezd2addz12za2zz__hashz00, 0L, BUNSPEC, 5 );
DEFINE_STRING( BGl_string3940z00zz__hashz00, BgL_bgl_string3940za700za7za7_4239za7, "fun", 3 );
DEFINE_STRING( BGl_string3861z00zz__hashz00, BgL_bgl_string3861za700za7za7_4240za7, "persistent", 10 );
DEFINE_STRING( BGl_string3942z00zz__hashz00, BgL_bgl_string3942za700za7za7_4241za7, "arg1534", 7 );
DEFINE_STRING( BGl_string3862z00zz__hashz00, BgL_bgl_string3862za700za7za7_4242za7, "make-hashtable", 14 );
DEFINE_STRING( BGl_string3863z00zz__hashz00, BgL_bgl_string3863za700za7za7_4243za7, "Illegal default bucket length", 29 );
DEFINE_STRING( BGl_string3944z00zz__hashz00, BgL_bgl_string3944za700za7za7_4244za7, "arg1535", 7 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2putz12zd2envz12zz__hashz00, BgL_bgl_za762openza7d2string4245z00, BGl_z62openzd2stringzd2hashtablezd2putz12za2zz__hashz00, 0L, BUNSPEC, 3 );
DEFINE_STRING( BGl_string3864z00zz__hashz00, BgL_bgl_string3864za700za7za7_4246za7, "Illegal max bucket length", 25 );
DEFINE_STRING( BGl_string3945z00zz__hashz00, BgL_bgl_string3945za700za7za7_4247za7, "&open-string-hashtable-map", 26 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2containszf3zd2envzf3zz__hashz00, BgL_bgl_za762hashtableza7d2c4248z00, BGl_z62hashtablezd2containszf3z43zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_STRING( BGl_string3865z00zz__hashz00, BgL_bgl_string3865za700za7za7_4249za7, "Illegal equality test", 21 );
DEFINE_STRING( BGl_string3946z00zz__hashz00, BgL_bgl_string3946za700za7za7_4250za7, "plain-hashtable-map", 19 );
DEFINE_STRING( BGl_string3866z00zz__hashz00, BgL_bgl_string3866za700za7za7_4251za7, "Illegal hashnumber function", 27 );
DEFINE_STRING( BGl_string3947z00zz__hashz00, BgL_bgl_string3947za700za7za7_4252za7, "liip:Wrong number of arguments", 30 );
DEFINE_STRING( BGl_string3867z00zz__hashz00, BgL_bgl_string3867za700za7za7_4253za7, "/tmp/bigloo/runtime/Llib/hash.scm", 33 );
DEFINE_STRING( BGl_string3868z00zz__hashz00, BgL_bgl_string3868za700za7za7_4254za7, "struct-set!:not an instance of", 30 );
DEFINE_STRING( BGl_string3950z00zz__hashz00, BgL_bgl_string3950za700za7za7_4255za7, "arg1553", 7 );
DEFINE_STRING( BGl_string3871z00zz__hashz00, BgL_bgl_string3871za700za7za7_4256za7, "none", 4 );
DEFINE_STRING( BGl_string3952z00zz__hashz00, BgL_bgl_string3952za700za7za7_4257za7, "arg1554", 7 );
DEFINE_STRING( BGl_string3872z00zz__hashz00, BgL_bgl_string3872za700za7za7_4258za7, "vector-ref", 10 );
DEFINE_STRING( BGl_string3953z00zz__hashz00, BgL_bgl_string3953za700za7za7_4259za7, "&hashtable-for-each", 19 );
DEFINE_STRING( BGl_string3954z00zz__hashz00, BgL_bgl_string3954za700za7za7_4260za7, "open-string-hashtable-for-each", 30 );
DEFINE_STRING( BGl_string3875z00zz__hashz00, BgL_bgl_string3875za700za7za7_4261za7, "bucket-expansion", 16 );
DEFINE_STRING( BGl_string3957z00zz__hashz00, BgL_bgl_string3957za700za7za7_4262za7, "arg1563", 7 );
DEFINE_STRING( BGl_string3877z00zz__hashz00, BgL_bgl_string3877za700za7za7_4263za7, "eqtest", 6 );
DEFINE_STRING( BGl_string3959z00zz__hashz00, BgL_bgl_string3959za700za7za7_4264za7, "arg1564", 7 );
DEFINE_STRING( BGl_string3879z00zz__hashz00, BgL_bgl_string3879za700za7za7_4265za7, "hash", 4 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2weakzd2keyszf3zd2envz21zz__hashz00, BgL_bgl_za762hashtableza7d2w4266z00, BGl_z62hashtablezd2weakzd2keyszf3z91zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3960z00zz__hashz00, BgL_bgl_string3960za700za7za7_4267za7, "&open-string-hashtable-for-each", 31 );
DEFINE_STRING( BGl_string3961z00zz__hashz00, BgL_bgl_string3961za700za7za7_4268za7, "plain-hashtable-for-each", 24 );
DEFINE_STRING( BGl_string3881z00zz__hashz00, BgL_bgl_string3881za700za7za7_4269za7, "max-bucket-length", 17 );
DEFINE_STRING( BGl_string3962z00zz__hashz00, BgL_bgl_string3962za700za7za7_4270za7, "<@anonymous:1571>", 17 );
DEFINE_STRING( BGl_string3963z00zz__hashz00, BgL_bgl_string3963za700za7za7_4271za7, "<@anonymous:1571>:Wrong number of arguments", 43 );
DEFINE_STRING( BGl_string3883z00zz__hashz00, BgL_bgl_string3883za700za7za7_4272za7, "max-length", 10 );
DEFINE_STRING( BGl_string3966z00zz__hashz00, BgL_bgl_string3966za700za7za7_4273za7, "arg1575", 7 );
DEFINE_STRING( BGl_string3886z00zz__hashz00, BgL_bgl_string3886za700za7za7_4274za7, "size", 4 );
DEFINE_STRING( BGl_string3968z00zz__hashz00, BgL_bgl_string3968za700za7za7_4275za7, "arg1576", 7 );
DEFINE_STRING( BGl_string3888z00zz__hashz00, BgL_bgl_string3888za700za7za7_4276za7, "weak", 4 );
DEFINE_STRING( BGl_string3969z00zz__hashz00, BgL_bgl_string3969za700za7za7_4277za7, "for-each", 8 );
DEFINE_STRING( BGl_string3970z00zz__hashz00, BgL_bgl_string3970za700za7za7_4278za7, "list", 4 );
DEFINE_STRING( BGl_string3890z00zz__hashz00, BgL_bgl_string3890za700za7za7_4279za7, "create-hashtable", 16 );
DEFINE_STRING( BGl_string3971z00zz__hashz00, BgL_bgl_string3971za700za7za7_4280za7, "&hashtable-filter!", 18 );
DEFINE_STRING( BGl_string3891z00zz__hashz00, BgL_bgl_string3891za700za7za7_4281za7, "Illegal keyword argument", 24 );
DEFINE_STRING( BGl_string3972z00zz__hashz00, BgL_bgl_string3972za700za7za7_4282za7, "open-string-hashtable-filter!", 29 );
DEFINE_STRING( BGl_string3892z00zz__hashz00, BgL_bgl_string3892za700za7za7_4283za7, "_create-hashtable", 17 );
DEFINE_STRING( BGl_string3893z00zz__hashz00, BgL_bgl_string3893za700za7za7_4284za7, "wrong number of arguments: [0..8] expected, provided", 52 );
DEFINE_STRING( BGl_string3975z00zz__hashz00, BgL_bgl_string3975za700za7za7_4285za7, "arg1598", 7 );
DEFINE_STRING( BGl_string3895z00zz__hashz00, BgL_bgl_string3895za700za7za7_4286za7, "keys", 4 );
DEFINE_STRING( BGl_string3977z00zz__hashz00, BgL_bgl_string3977za700za7za7_4287za7, "arg1600", 7 );
DEFINE_STRING( BGl_string3897z00zz__hashz00, BgL_bgl_string3897za700za7za7_4288za7, "data", 4 );
DEFINE_STRING( BGl_string3978z00zz__hashz00, BgL_bgl_string3978za700za7za7_4289za7, "&open-string-hashtable-filter!", 30 );
DEFINE_STRING( BGl_string3979z00zz__hashz00, BgL_bgl_string3979za700za7za7_4290za7, "plain-hashtable-filter!", 23 );
DEFINE_STRING( BGl_string3899z00zz__hashz00, BgL_bgl_string3899za700za7za7_4291za7, "both", 4 );
DEFINE_STRING( BGl_string3980z00zz__hashz00, BgL_bgl_string3980za700za7za7_4292za7, "pair-nil", 8 );
DEFINE_STRING( BGl_string3981z00zz__hashz00, BgL_bgl_string3981za700za7za7_4293za7, "<@anonymous:1611>", 17 );
DEFINE_STRING( BGl_string3982z00zz__hashz00, BgL_bgl_string3982za700za7za7_4294za7, "<@anonymous:1611>:Wrong number of arguments", 43 );
DEFINE_STRING( BGl_string3985z00zz__hashz00, BgL_bgl_string3985za700za7za7_4295za7, "arg1613", 7 );
DEFINE_STRING( BGl_string3987z00zz__hashz00, BgL_bgl_string3987za700za7za7_4296za7, "arg1614", 7 );
DEFINE_STRING( BGl_string3988z00zz__hashz00, BgL_bgl_string3988za700za7za7_4297za7, "&hashtable-clear!", 17 );
DEFINE_STRING( BGl_string3989z00zz__hashz00, BgL_bgl_string3989za700za7za7_4298za7, "open-string-hashtable-clear!", 28 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_getzd2pointerzd2hashnumberzd2envzd2zz__hashz00, BgL_bgl_za762getza7d2pointer4299z00, BGl_z62getzd2pointerzd2hashnumberz62zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_stringzd2hashzd2envz00zz__hashz00, BgL_bgl__stringza7d2hashza7d4300z00, opt_generic_entry, BGl__stringzd2hashzd2zz__hashz00, BFALSE, -1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_createzd2hashtablezd2envz00zz__hashz00, BgL_bgl__createza7d2hashta4301za7, opt_generic_entry, BGl__createzd2hashtablezd2zz__hashz00, BFALSE, -1 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_hashtablezd2ze3listzd2envze3zz__hashz00, BgL_bgl_za762hashtableza7d2za74302za7, BGl_z62hashtablezd2ze3listz53zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3990z00zz__hashz00, BgL_bgl_string3990za700za7za7_4303za7, "/tmp/bigloo/runtime/Ieee/vector.scm", 35 );
DEFINE_STRING( BGl_string3991z00zz__hashz00, BgL_bgl_string3991za700za7za7_4304za7, "plain-hashtable-clear!", 22 );
DEFINE_STRING( BGl_string3992z00zz__hashz00, BgL_bgl_string3992za700za7za7_4305za7, "hashtable-contains?", 19 );
DEFINE_STRING( BGl_string3993z00zz__hashz00, BgL_bgl_string3993za700za7za7_4306za7, "&hashtable-contains?", 20 );
DEFINE_STRING( BGl_string3994z00zz__hashz00, BgL_bgl_string3994za700za7za7_4307za7, "open-string-hashtable-contains?", 31 );
DEFINE_STRING( BGl_string3995z00zz__hashz00, BgL_bgl_string3995za700za7za7_4308za7, "&open-string-hashtable-contains?", 32 );
DEFINE_STRING( BGl_string3996z00zz__hashz00, BgL_bgl_string3996za700za7za7_4309za7, "plain-hashtable-contains?", 25 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_stringzd2hashzd2numberzd2envzd2zz__hashz00, BgL_bgl_za762stringza7d2hash4310z00, BGl_z62stringzd2hashzd2numberz62zz__hashz00, 0L, BUNSPEC, 1 );
DEFINE_STRING( BGl_string3999z00zz__hashz00, BgL_bgl_string3999za700za7za7_4311za7, "eqt", 3 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_stringzd2hashtablezd2getzd2envzd2zz__hashz00, BgL_bgl_za762stringza7d2hash4312z00, BGl_z62stringzd2hashtablezd2getz62zz__hashz00, 0L, BUNSPEC, 2 );
DEFINE_EXPORT_BGL_PROCEDURE( BGl_openzd2stringzd2hashtablezd2removez12zd2envz12zz__hashz00, BgL_bgl_za762openza7d2string4313z00, BGl_z62openzd2stringzd2hashtablezd2removez12za2zz__hashz00, 0L, BUNSPEC, 2 );

/* GC roots registration */
static obj_t bgl_gc_roots_register() {
#if defined( BGL_GC_ROOTS )
#define ADD_ROOT( addr ) (addr > roots_max ? roots_max = addr : (addr < roots_min ? roots_min = addr : 0))
void *roots_min = (void*)ULONG_MAX, *roots_max = 0;
ADD_ROOT( (void *)(&BGl_list3983z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_requirezd2initializa7ationz75zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3997z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3900z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3902z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3874z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3876z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3878z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3880z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3882z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3884z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3885z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_keyword3887z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3848z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3853z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3855z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3857z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3939z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4005z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3860z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3941z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3943z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3949z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3870z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3951z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3956z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3958z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4021z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4027z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3965z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3967z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3889z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4034z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4037z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3974z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3894z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3976z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3896z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3898z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4043z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4046z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3984z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3986z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4052z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4055z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol3998z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4064z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4067z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list4082z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4000z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4006z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4022z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4028z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4030z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4035z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4038z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4044z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4047z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4053z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4056z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3852z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3938z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4065z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4068z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3948z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4079z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3873z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3955z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4083z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4085z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_symbol4089z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3964z00zz__hashz00) );
ADD_ROOT( (void *)(&BGl_list3973z00zz__hashz00) );
#undef ADD_ROOT
if( roots_max > 0 ) GC_add_roots( roots_min, ((void **)roots_max) + 1 );
#endif
return BUNSPEC;
}



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zz__hashz00(long BgL_checksumz00_6753, char * BgL_fromz00_6754)
{
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__hashz00))
{ 
BGl_requirezd2initializa7ationz75zz__hashz00 = 
BBOOL(((bool_t)0)); 
BGl_gczd2rootszd2initz00zz__hashz00(); 
BGl_cnstzd2initzd2zz__hashz00(); 
BGl_importedzd2moduleszd2initz00zz__hashz00(); 
return 
BGl_toplevelzd2initzd2zz__hashz00();}  else 
{ 
return BUNSPEC;} } 

}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
BGl_symbol3848z00zz__hashz00 = 
bstring_to_symbol(BGl_string3849z00zz__hashz00); 
BGl_symbol3853z00zz__hashz00 = 
bstring_to_symbol(BGl_string3854z00zz__hashz00); 
BGl_symbol3855z00zz__hashz00 = 
bstring_to_symbol(BGl_string3856z00zz__hashz00); 
BGl_symbol3857z00zz__hashz00 = 
bstring_to_symbol(BGl_string3858z00zz__hashz00); 
BGl_list3852z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3855z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3855z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL)))); 
BGl_symbol3860z00zz__hashz00 = 
bstring_to_symbol(BGl_string3861z00zz__hashz00); 
BGl_symbol3870z00zz__hashz00 = 
bstring_to_symbol(BGl_string3871z00zz__hashz00); 
BGl_keyword3874z00zz__hashz00 = 
bstring_to_keyword(BGl_string3875z00zz__hashz00); 
BGl_keyword3876z00zz__hashz00 = 
bstring_to_keyword(BGl_string3877z00zz__hashz00); 
BGl_keyword3878z00zz__hashz00 = 
bstring_to_keyword(BGl_string3879z00zz__hashz00); 
BGl_keyword3880z00zz__hashz00 = 
bstring_to_keyword(BGl_string3881z00zz__hashz00); 
BGl_keyword3882z00zz__hashz00 = 
bstring_to_keyword(BGl_string3883z00zz__hashz00); 
BGl_keyword3884z00zz__hashz00 = 
bstring_to_keyword(BGl_string3861z00zz__hashz00); 
BGl_keyword3885z00zz__hashz00 = 
bstring_to_keyword(BGl_string3886z00zz__hashz00); 
BGl_keyword3887z00zz__hashz00 = 
bstring_to_keyword(BGl_string3888z00zz__hashz00); 
BGl_list3873z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_keyword3874z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3876z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3878z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3880z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3882z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3884z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3885z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_keyword3887z00zz__hashz00, BNIL)))))))); 
BGl_symbol3889z00zz__hashz00 = 
bstring_to_symbol(BGl_string3890z00zz__hashz00); 
BGl_symbol3894z00zz__hashz00 = 
bstring_to_symbol(BGl_string3895z00zz__hashz00); 
BGl_symbol3896z00zz__hashz00 = 
bstring_to_symbol(BGl_string3897z00zz__hashz00); 
BGl_symbol3898z00zz__hashz00 = 
bstring_to_symbol(BGl_string3899z00zz__hashz00); 
BGl_symbol3900z00zz__hashz00 = 
bstring_to_symbol(BGl_string3901z00zz__hashz00); 
BGl_symbol3902z00zz__hashz00 = 
bstring_to_symbol(BGl_string3903z00zz__hashz00); 
BGl_symbol3939z00zz__hashz00 = 
bstring_to_symbol(BGl_string3940z00zz__hashz00); 
BGl_symbol3941z00zz__hashz00 = 
bstring_to_symbol(BGl_string3942z00zz__hashz00); 
BGl_symbol3943z00zz__hashz00 = 
bstring_to_symbol(BGl_string3944z00zz__hashz00); 
BGl_list3938z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3941z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3943z00zz__hashz00, BNIL))))); 
BGl_symbol3949z00zz__hashz00 = 
bstring_to_symbol(BGl_string3950z00zz__hashz00); 
BGl_symbol3951z00zz__hashz00 = 
bstring_to_symbol(BGl_string3952z00zz__hashz00); 
BGl_list3948z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3949z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3951z00zz__hashz00, BNIL))))); 
BGl_symbol3956z00zz__hashz00 = 
bstring_to_symbol(BGl_string3957z00zz__hashz00); 
BGl_symbol3958z00zz__hashz00 = 
bstring_to_symbol(BGl_string3959z00zz__hashz00); 
BGl_list3955z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3956z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3958z00zz__hashz00, BNIL))))); 
BGl_symbol3965z00zz__hashz00 = 
bstring_to_symbol(BGl_string3966z00zz__hashz00); 
BGl_symbol3967z00zz__hashz00 = 
bstring_to_symbol(BGl_string3968z00zz__hashz00); 
BGl_list3964z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3965z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3967z00zz__hashz00, BNIL))))); 
BGl_symbol3974z00zz__hashz00 = 
bstring_to_symbol(BGl_string3975z00zz__hashz00); 
BGl_symbol3976z00zz__hashz00 = 
bstring_to_symbol(BGl_string3977z00zz__hashz00); 
BGl_list3973z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3974z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3976z00zz__hashz00, BNIL))))); 
BGl_symbol3984z00zz__hashz00 = 
bstring_to_symbol(BGl_string3985z00zz__hashz00); 
BGl_symbol3986z00zz__hashz00 = 
bstring_to_symbol(BGl_string3987z00zz__hashz00); 
BGl_list3983z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3939z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3984z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3986z00zz__hashz00, BNIL))))); 
BGl_symbol3998z00zz__hashz00 = 
bstring_to_symbol(BGl_string3999z00zz__hashz00); 
BGl_symbol4000z00zz__hashz00 = 
bstring_to_symbol(BGl_string4001z00zz__hashz00); 
BGl_list3997z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4000z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4006z00zz__hashz00 = 
bstring_to_symbol(BGl_string4007z00zz__hashz00); 
BGl_list4005z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4006z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4022z00zz__hashz00 = 
bstring_to_symbol(BGl_string4023z00zz__hashz00); 
BGl_list4021z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4022z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4028z00zz__hashz00 = 
bstring_to_symbol(BGl_string4029z00zz__hashz00); 
BGl_symbol4030z00zz__hashz00 = 
bstring_to_symbol(BGl_string4031z00zz__hashz00); 
BGl_list4027z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4030z00zz__hashz00, BNIL)))); 
BGl_symbol4035z00zz__hashz00 = 
bstring_to_symbol(BGl_string4036z00zz__hashz00); 
BGl_list4034z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4035z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4038z00zz__hashz00 = 
bstring_to_symbol(BGl_string4039z00zz__hashz00); 
BGl_list4037z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4038z00zz__hashz00, BNIL)))); 
BGl_symbol4044z00zz__hashz00 = 
bstring_to_symbol(BGl_string4045z00zz__hashz00); 
BGl_list4043z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4030z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4044z00zz__hashz00, BNIL))))); 
BGl_symbol4047z00zz__hashz00 = 
bstring_to_symbol(BGl_string4048z00zz__hashz00); 
BGl_list4046z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4047z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4044z00zz__hashz00, BNIL))))); 
BGl_symbol4053z00zz__hashz00 = 
bstring_to_symbol(BGl_string4054z00zz__hashz00); 
BGl_list4052z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4053z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4056z00zz__hashz00 = 
bstring_to_symbol(BGl_string4057z00zz__hashz00); 
BGl_list4055z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4028z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4047z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4056z00zz__hashz00, BNIL))))); 
BGl_symbol4065z00zz__hashz00 = 
bstring_to_symbol(BGl_string4066z00zz__hashz00); 
BGl_list4064z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4065z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4068z00zz__hashz00 = 
bstring_to_symbol(BGl_string4069z00zz__hashz00); 
BGl_list4067z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3998z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4068z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, BNIL))))); 
BGl_symbol4079z00zz__hashz00 = 
bstring_to_symbol(BGl_string4080z00zz__hashz00); 
BGl_symbol4083z00zz__hashz00 = 
bstring_to_symbol(BGl_string4084z00zz__hashz00); 
BGl_symbol4085z00zz__hashz00 = 
bstring_to_symbol(BGl_string4086z00zz__hashz00); 
BGl_list4082z00zz__hashz00 = 
MAKE_YOUNG_PAIR(BGl_symbol3853z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4083z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4083z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol3857z00zz__hashz00, 
MAKE_YOUNG_PAIR(BGl_symbol4085z00zz__hashz00, BNIL))))); 
return ( 
BGl_symbol4089z00zz__hashz00 = 
bstring_to_symbol(BGl_string4090z00zz__hashz00), BUNSPEC) ;} 

}



/* gc-roots-init */
obj_t BGl_gczd2rootszd2initz00zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
return 
bgl_gc_roots_register();} 

}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
BGl_defaultzd2hashtablezd2bucketzd2lengthzd2zz__hashz00 = 128L; 
return ( 
BGl_defaultzd2maxzd2bucketzd2lengthzd2zz__hashz00 = 10L, BUNSPEC) ;} 

}



/* table-get-hashnumber */
long BGl_tablezd2getzd2hashnumberz00zz__hashz00(obj_t BgL_tablez00_37, obj_t BgL_keyz00_38)
{
{ /* Llib/hash.sch 21 */
{ /* Llib/hash.sch 22 */
 obj_t BgL_hashnz00_1573;
{ /* Llib/hash.sch 15 */
 bool_t BgL_test4315z00_6919;
{ /* Llib/hash.sch 15 */
 obj_t BgL_tmpz00_6920;
{ /* Llib/hash.sch 15 */
 obj_t BgL_res2487z00_3223;
{ /* Llib/hash.sch 15 */
 obj_t BgL_aux2918z00_5789;
BgL_aux2918z00_5789 = 
STRUCT_KEY(BgL_tablez00_37); 
if(
SYMBOLP(BgL_aux2918z00_5789))
{ /* Llib/hash.sch 15 */
BgL_res2487z00_3223 = BgL_aux2918z00_5789; }  else 
{ 
 obj_t BgL_auxz00_6924;
BgL_auxz00_6924 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3845z00zz__hashz00, 
BINT(963L), BGl_string3846z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2918z00_5789); 
FAILURE(BgL_auxz00_6924,BFALSE,BFALSE);} } 
BgL_tmpz00_6920 = BgL_res2487z00_3223; } 
BgL_test4315z00_6919 = 
(BgL_tmpz00_6920==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4315z00_6919)
{ /* Llib/hash.sch 15 */
 int BgL_tmpz00_6929;
BgL_tmpz00_6929 = 
(int)(4L); 
BgL_hashnz00_1573 = 
STRUCT_REF(BgL_tablez00_37, BgL_tmpz00_6929); }  else 
{ /* Llib/hash.sch 15 */
BgL_hashnz00_1573 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_37); } } 
if(
PROCEDUREP(BgL_hashnz00_1573))
{ /* Llib/hash.sch 25 */
 obj_t BgL_arg1363z00_1575;
if(
PROCEDURE_CORRECT_ARITYP(BgL_hashnz00_1573, 1L))
{ /* Llib/hash.sch 25 */
BgL_arg1363z00_1575 = 
(VA_PROCEDUREP( BgL_hashnz00_1573 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_hashnz00_1573))(BgL_hashnz00_1573, BgL_keyz00_38, BEOA) : ((obj_t (*)(obj_t, obj_t))PROCEDURE_ENTRY(BgL_hashnz00_1573))(BgL_hashnz00_1573, BgL_keyz00_38) ); }  else 
{ /* Llib/hash.sch 25 */
FAILURE(BGl_string3851z00zz__hashz00,BGl_list3852z00zz__hashz00,BgL_hashnz00_1573);} 
{ /* Llib/hash.sch 25 */
 long BgL_nz00_3224;
{ /* Llib/hash.sch 25 */
 obj_t BgL_tmpz00_6942;
if(
INTEGERP(BgL_arg1363z00_1575))
{ /* Llib/hash.sch 25 */
BgL_tmpz00_6942 = BgL_arg1363z00_1575
; }  else 
{ 
 obj_t BgL_auxz00_6945;
BgL_auxz00_6945 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3845z00zz__hashz00, 
BINT(1434L), BGl_string3846z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1363z00_1575); 
FAILURE(BgL_auxz00_6945,BFALSE,BFALSE);} 
BgL_nz00_3224 = 
(long)CINT(BgL_tmpz00_6942); } 
if(
(BgL_nz00_3224<0L))
{ /* Llib/hash.sch 25 */
return 
NEG(BgL_nz00_3224);}  else 
{ /* Llib/hash.sch 25 */
return BgL_nz00_3224;} } }  else 
{ /* Llib/hash.sch 24 */
if(
(BgL_hashnz00_1573==BGl_symbol3860z00zz__hashz00))
{ /* Llib/hash.sch 26 */
return 
BGl_objzd2hashze70z35zz__hashz00(BgL_keyz00_38);}  else 
{ /* Llib/hash.sch 26 */
return 
BGl_getzd2hashnumberzd2zz__hashz00(BgL_keyz00_38);} } } } 

}



/* make-hashtable */
BGL_EXPORTED_DEF obj_t BGl_makezd2hashtablezd2zz__hashz00(obj_t BgL_argsz00_42)
{
{ /* Llib/hash.scm 162 */
{ /* Llib/hash.scm 163 */
 obj_t BgL_siza7eza7_1580;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 164 */
 obj_t BgL_siza7eza7_1612;
BgL_siza7eza7_1612 = 
CAR(BgL_argsz00_42); 
BgL_argsz00_42 = 
CDR(BgL_argsz00_42); 
{ /* Llib/hash.scm 167 */
 bool_t BgL_test4323z00_6961;
if(
INTEGERP(BgL_siza7eza7_1612))
{ /* Llib/hash.scm 167 */
BgL_test4323z00_6961 = 
(
(long)CINT(BgL_siza7eza7_1612)>=1L)
; }  else 
{ /* Llib/hash.scm 167 */
BgL_test4323z00_6961 = ((bool_t)0)
; } 
if(BgL_test4323z00_6961)
{ /* Llib/hash.scm 167 */
BgL_siza7eza7_1580 = BgL_siza7eza7_1612; }  else 
{ /* Llib/hash.scm 167 */
if(
(BgL_siza7eza7_1612==BUNSPEC))
{ /* Llib/hash.scm 169 */
BgL_siza7eza7_1580 = 
BINT(128L); }  else 
{ /* Llib/hash.scm 169 */
BgL_siza7eza7_1580 = 
BGl_errorz00zz__errorz00(BGl_string3862z00zz__hashz00, BGl_string3863z00zz__hashz00, BgL_siza7eza7_1612); } } } }  else 
{ /* Llib/hash.scm 163 */
BgL_siza7eza7_1580 = 
BINT(128L); } 
{ /* Llib/hash.scm 163 */
 obj_t BgL_mblenz00_1581;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 177 */
 obj_t BgL_mblenz00_1607;
BgL_mblenz00_1607 = 
CAR(BgL_argsz00_42); 
BgL_argsz00_42 = 
CDR(BgL_argsz00_42); 
{ /* Llib/hash.scm 180 */
 bool_t BgL_test4327z00_6975;
if(
INTEGERP(BgL_mblenz00_1607))
{ /* Llib/hash.scm 180 */
BgL_test4327z00_6975 = 
(
(long)CINT(BgL_mblenz00_1607)>=1L)
; }  else 
{ /* Llib/hash.scm 180 */
BgL_test4327z00_6975 = ((bool_t)0)
; } 
if(BgL_test4327z00_6975)
{ /* Llib/hash.scm 180 */
BgL_mblenz00_1581 = BgL_mblenz00_1607; }  else 
{ /* Llib/hash.scm 180 */
if(
(BgL_mblenz00_1607==BUNSPEC))
{ /* Llib/hash.scm 182 */
BgL_mblenz00_1581 = 
BINT(10L); }  else 
{ /* Llib/hash.scm 182 */
BgL_mblenz00_1581 = 
BGl_errorz00zz__errorz00(BGl_string3862z00zz__hashz00, BGl_string3864z00zz__hashz00, BgL_mblenz00_1607); } } } }  else 
{ /* Llib/hash.scm 176 */
BgL_mblenz00_1581 = 
BINT(10L); } 
{ /* Llib/hash.scm 176 */
 obj_t BgL_eqtestz00_1582;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 190 */
 obj_t BgL_eqtestz00_1602;
BgL_eqtestz00_1602 = 
CAR(BgL_argsz00_42); 
BgL_argsz00_42 = 
CDR(BgL_argsz00_42); 
{ /* Llib/hash.scm 193 */
 bool_t BgL_test4331z00_6989;
if(
PROCEDUREP(BgL_eqtestz00_1602))
{ /* Llib/hash.scm 193 */
BgL_test4331z00_6989 = 
PROCEDURE_CORRECT_ARITYP(BgL_eqtestz00_1602, 
(int)(2L))
; }  else 
{ /* Llib/hash.scm 193 */
BgL_test4331z00_6989 = ((bool_t)0)
; } 
if(BgL_test4331z00_6989)
{ /* Llib/hash.scm 193 */
BgL_eqtestz00_1582 = BgL_eqtestz00_1602; }  else 
{ /* Llib/hash.scm 193 */
if(
(BgL_eqtestz00_1602==BUNSPEC))
{ /* Llib/hash.scm 195 */
BgL_eqtestz00_1582 = BFALSE; }  else 
{ /* Llib/hash.scm 195 */
BgL_eqtestz00_1582 = 
BGl_errorz00zz__errorz00(BGl_string3862z00zz__hashz00, BGl_string3865z00zz__hashz00, BgL_eqtestz00_1602); } } } }  else 
{ /* Llib/hash.scm 189 */
BgL_eqtestz00_1582 = BFALSE; } 
{ /* Llib/hash.scm 189 */
 obj_t BgL_hashnz00_1583;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 203 */
 obj_t BgL_hnz00_1597;
BgL_hnz00_1597 = 
CAR(BgL_argsz00_42); 
BgL_argsz00_42 = 
CDR(BgL_argsz00_42); 
{ /* Llib/hash.scm 206 */
 bool_t BgL_test4335z00_7001;
if(
PROCEDUREP(BgL_hnz00_1597))
{ /* Llib/hash.scm 206 */
BgL_test4335z00_7001 = 
PROCEDURE_CORRECT_ARITYP(BgL_hnz00_1597, 
(int)(1L))
; }  else 
{ /* Llib/hash.scm 206 */
BgL_test4335z00_7001 = ((bool_t)0)
; } 
if(BgL_test4335z00_7001)
{ /* Llib/hash.scm 206 */
BgL_hashnz00_1583 = BgL_hnz00_1597; }  else 
{ /* Llib/hash.scm 206 */
if(
(BgL_hnz00_1597==BUNSPEC))
{ /* Llib/hash.scm 208 */
BgL_hashnz00_1583 = BFALSE; }  else 
{ /* Llib/hash.scm 208 */
BgL_hashnz00_1583 = 
BGl_errorz00zz__errorz00(BGl_string3862z00zz__hashz00, BGl_string3866z00zz__hashz00, BgL_hnz00_1597); } } } }  else 
{ /* Llib/hash.scm 202 */
BgL_hashnz00_1583 = BFALSE; } 
{ /* Llib/hash.scm 202 */
 long BgL_wkkz00_1584;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 216 */
 obj_t BgL_wkkz00_1594;
BgL_wkkz00_1594 = 
CAR(BgL_argsz00_42); 
BgL_argsz00_42 = 
CDR(BgL_argsz00_42); 
{ /* Llib/hash.scm 218 */
 bool_t BgL_test4339z00_7013;
if(
(BgL_wkkz00_1594==BUNSPEC))
{ /* Llib/hash.scm 218 */
BgL_test4339z00_7013 = ((bool_t)0)
; }  else 
{ /* Llib/hash.scm 218 */
BgL_test4339z00_7013 = 
CBOOL(BgL_wkkz00_1594)
; } 
if(BgL_test4339z00_7013)
{ /* Llib/hash.scm 218 */
BgL_wkkz00_1584 = 1L; }  else 
{ /* Llib/hash.scm 218 */
BgL_wkkz00_1584 = 0L; } } }  else 
{ /* Llib/hash.scm 215 */
BgL_wkkz00_1584 = 0L; } 
{ /* Llib/hash.scm 215 */
 long BgL_wkdz00_1585;
if(
PAIRP(BgL_argsz00_42))
{ /* Llib/hash.scm 223 */
 obj_t BgL_wkdz00_1591;
BgL_wkdz00_1591 = 
CAR(BgL_argsz00_42); 
{ /* Llib/hash.scm 224 */
 bool_t BgL_test4342z00_7020;
if(
(BgL_wkdz00_1591==BUNSPEC))
{ /* Llib/hash.scm 224 */
BgL_test4342z00_7020 = ((bool_t)0)
; }  else 
{ /* Llib/hash.scm 224 */
BgL_test4342z00_7020 = 
CBOOL(BgL_wkdz00_1591)
; } 
if(BgL_test4342z00_7020)
{ /* Llib/hash.scm 224 */
BgL_wkdz00_1585 = 2L; }  else 
{ /* Llib/hash.scm 224 */
BgL_wkdz00_1585 = 0L; } } }  else 
{ /* Llib/hash.scm 222 */
BgL_wkdz00_1585 = 0L; } 
{ /* Llib/hash.scm 222 */
 long BgL_wkz00_1586;
BgL_wkz00_1586 = 
(BgL_wkkz00_1584 | BgL_wkdz00_1585); 
{ /* Llib/hash.scm 228 */

if(
(
BINT(BgL_wkz00_1586)==
BINT(8L)))
{ /* Llib/hash.scm 230 */
 obj_t BgL_arg1367z00_1587;
{ /* Llib/hash.scm 230 */
 long BgL_arg1368z00_1588;
{ /* Llib/hash.scm 230 */
 long BgL_za72za7_3268;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7029;
if(
INTEGERP(BgL_siza7eza7_1580))
{ /* Llib/hash.scm 230 */
BgL_tmpz00_7029 = BgL_siza7eza7_1580
; }  else 
{ 
 obj_t BgL_auxz00_7032;
BgL_auxz00_7032 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8483L), BGl_string3862z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1580); 
FAILURE(BgL_auxz00_7032,BFALSE,BFALSE);} 
BgL_za72za7_3268 = 
(long)CINT(BgL_tmpz00_7029); } 
BgL_arg1368z00_1588 = 
(3L*BgL_za72za7_3268); } 
BgL_arg1367z00_1587 = 
make_vector(BgL_arg1368z00_1588, BFALSE); } 
{ /* Llib/hash.scm 230 */
 obj_t BgL_newz00_3269;
BgL_newz00_3269 = 
create_struct(BGl_symbol3848z00zz__hashz00, 
(int)(8L)); 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4346z00_7041;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7042;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2489z00_3273;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2923z00_5795;
BgL_aux2923z00_5795 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2923z00_5795))
{ /* Llib/hash.scm 230 */
BgL_res2489z00_3273 = BgL_aux2923z00_5795; }  else 
{ 
 obj_t BgL_auxz00_7046;
BgL_auxz00_7046 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2923z00_5795); 
FAILURE(BgL_auxz00_7046,BFALSE,BFALSE);} } 
BgL_tmpz00_7042 = BgL_res2489z00_3273; } 
BgL_test4346z00_7041 = 
(BgL_tmpz00_7042==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4346z00_7041)
{ /* Llib/hash.scm 230 */
 obj_t BgL_auxz00_7053; int BgL_tmpz00_7051;
BgL_auxz00_7053 = 
BINT(0L); 
BgL_tmpz00_7051 = 
(int)(7L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7051, BgL_auxz00_7053); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4348z00_7057;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7058;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2490z00_3277;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2925z00_5797;
BgL_aux2925z00_5797 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2925z00_5797))
{ /* Llib/hash.scm 230 */
BgL_res2490z00_3277 = BgL_aux2925z00_5797; }  else 
{ 
 obj_t BgL_auxz00_7062;
BgL_auxz00_7062 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2925z00_5797); 
FAILURE(BgL_auxz00_7062,BFALSE,BFALSE);} } 
BgL_tmpz00_7058 = BgL_res2490z00_3277; } 
BgL_test4348z00_7057 = 
(BgL_tmpz00_7058==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4348z00_7057)
{ /* Llib/hash.scm 230 */
 obj_t BgL_auxz00_7069; int BgL_tmpz00_7067;
BgL_auxz00_7069 = 
BINT(0L); 
BgL_tmpz00_7067 = 
(int)(6L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7067, BgL_auxz00_7069); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4350z00_7073;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7074;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2491z00_3281;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2927z00_5799;
BgL_aux2927z00_5799 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2927z00_5799))
{ /* Llib/hash.scm 230 */
BgL_res2491z00_3281 = BgL_aux2927z00_5799; }  else 
{ 
 obj_t BgL_auxz00_7078;
BgL_auxz00_7078 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2927z00_5799); 
FAILURE(BgL_auxz00_7078,BFALSE,BFALSE);} } 
BgL_tmpz00_7074 = BgL_res2491z00_3281; } 
BgL_test4350z00_7073 = 
(BgL_tmpz00_7074==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4350z00_7073)
{ /* Llib/hash.scm 230 */
 obj_t BgL_auxz00_7085; int BgL_tmpz00_7083;
BgL_auxz00_7085 = 
BINT(BgL_wkz00_1586); 
BgL_tmpz00_7083 = 
(int)(5L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7083, BgL_auxz00_7085); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4352z00_7089;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7090;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2492z00_3285;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2929z00_5801;
BgL_aux2929z00_5801 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2929z00_5801))
{ /* Llib/hash.scm 230 */
BgL_res2492z00_3285 = BgL_aux2929z00_5801; }  else 
{ 
 obj_t BgL_auxz00_7094;
BgL_auxz00_7094 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2929z00_5801); 
FAILURE(BgL_auxz00_7094,BFALSE,BFALSE);} } 
BgL_tmpz00_7090 = BgL_res2492z00_3285; } 
BgL_test4352z00_7089 = 
(BgL_tmpz00_7090==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4352z00_7089)
{ /* Llib/hash.scm 230 */
 int BgL_tmpz00_7099;
BgL_tmpz00_7099 = 
(int)(4L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7099, BGl_listzd2envzd2zz__r4_pairs_and_lists_6_3z00); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4354z00_7103;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7104;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2493z00_3289;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2931z00_5803;
BgL_aux2931z00_5803 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2931z00_5803))
{ /* Llib/hash.scm 230 */
BgL_res2493z00_3289 = BgL_aux2931z00_5803; }  else 
{ 
 obj_t BgL_auxz00_7108;
BgL_auxz00_7108 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2931z00_5803); 
FAILURE(BgL_auxz00_7108,BFALSE,BFALSE);} } 
BgL_tmpz00_7104 = BgL_res2493z00_3289; } 
BgL_test4354z00_7103 = 
(BgL_tmpz00_7104==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4354z00_7103)
{ /* Llib/hash.scm 230 */
 int BgL_tmpz00_7113;
BgL_tmpz00_7113 = 
(int)(3L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7113, BGl_eqzf3zd2envz21zz__r4_equivalence_6_2z00); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4356z00_7117;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7118;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2494z00_3293;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2933z00_5805;
BgL_aux2933z00_5805 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2933z00_5805))
{ /* Llib/hash.scm 230 */
BgL_res2494z00_3293 = BgL_aux2933z00_5805; }  else 
{ 
 obj_t BgL_auxz00_7122;
BgL_auxz00_7122 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2933z00_5805); 
FAILURE(BgL_auxz00_7122,BFALSE,BFALSE);} } 
BgL_tmpz00_7118 = BgL_res2494z00_3293; } 
BgL_test4356z00_7117 = 
(BgL_tmpz00_7118==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4356z00_7117)
{ /* Llib/hash.scm 230 */
 int BgL_tmpz00_7127;
BgL_tmpz00_7127 = 
(int)(2L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7127, BgL_arg1367z00_1587); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4358z00_7131;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7132;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2495z00_3297;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2935z00_5807;
BgL_aux2935z00_5807 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2935z00_5807))
{ /* Llib/hash.scm 230 */
BgL_res2495z00_3297 = BgL_aux2935z00_5807; }  else 
{ 
 obj_t BgL_auxz00_7136;
BgL_auxz00_7136 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2935z00_5807); 
FAILURE(BgL_auxz00_7136,BFALSE,BFALSE);} } 
BgL_tmpz00_7132 = BgL_res2495z00_3297; } 
BgL_test4358z00_7131 = 
(BgL_tmpz00_7132==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4358z00_7131)
{ /* Llib/hash.scm 230 */
 int BgL_tmpz00_7141;
BgL_tmpz00_7141 = 
(int)(1L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7141, BgL_siza7eza7_1580); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
{ /* Llib/hash.scm 230 */
 bool_t BgL_test4360z00_7145;
{ /* Llib/hash.scm 230 */
 obj_t BgL_tmpz00_7146;
{ /* Llib/hash.scm 230 */
 obj_t BgL_res2496z00_3301;
{ /* Llib/hash.scm 230 */
 obj_t BgL_aux2937z00_5809;
BgL_aux2937z00_5809 = 
STRUCT_KEY(BgL_newz00_3269); 
if(
SYMBOLP(BgL_aux2937z00_5809))
{ /* Llib/hash.scm 230 */
BgL_res2496z00_3301 = BgL_aux2937z00_5809; }  else 
{ 
 obj_t BgL_auxz00_7150;
BgL_auxz00_7150 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8444L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2937z00_5809); 
FAILURE(BgL_auxz00_7150,BFALSE,BFALSE);} } 
BgL_tmpz00_7146 = BgL_res2496z00_3301; } 
BgL_test4360z00_7145 = 
(BgL_tmpz00_7146==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4360z00_7145)
{ /* Llib/hash.scm 230 */
 obj_t BgL_auxz00_7157; int BgL_tmpz00_7155;
BgL_auxz00_7157 = 
BINT(0L); 
BgL_tmpz00_7155 = 
(int)(0L); 
STRUCT_SET(BgL_newz00_3269, BgL_tmpz00_7155, BgL_auxz00_7157); }  else 
{ /* Llib/hash.scm 230 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3269); } } 
return BgL_newz00_3269;} }  else 
{ /* Llib/hash.scm 231 */
 obj_t BgL_arg1369z00_1589;
{ /* Llib/hash.scm 231 */
 long BgL_tmpz00_7161;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7162;
if(
INTEGERP(BgL_siza7eza7_1580))
{ /* Llib/hash.scm 231 */
BgL_tmpz00_7162 = BgL_siza7eza7_1580
; }  else 
{ 
 obj_t BgL_auxz00_7165;
BgL_auxz00_7165 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8533L), BGl_string3862z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1580); 
FAILURE(BgL_auxz00_7165,BFALSE,BFALSE);} 
BgL_tmpz00_7161 = 
(long)CINT(BgL_tmpz00_7162); } 
BgL_arg1369z00_1589 = 
make_vector(BgL_tmpz00_7161, BNIL); } 
{ /* Llib/hash.scm 231 */
 obj_t BgL_newz00_3302;
BgL_newz00_3302 = 
create_struct(BGl_symbol3848z00zz__hashz00, 
(int)(8L)); 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4363z00_7173;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7174;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2497z00_3306;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2940z00_5812;
BgL_aux2940z00_5812 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2940z00_5812))
{ /* Llib/hash.scm 231 */
BgL_res2497z00_3306 = BgL_aux2940z00_5812; }  else 
{ 
 obj_t BgL_auxz00_7178;
BgL_auxz00_7178 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2940z00_5812); 
FAILURE(BgL_auxz00_7178,BFALSE,BFALSE);} } 
BgL_tmpz00_7174 = BgL_res2497z00_3306; } 
BgL_test4363z00_7173 = 
(BgL_tmpz00_7174==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4363z00_7173)
{ /* Llib/hash.scm 231 */
 int BgL_tmpz00_7183;
BgL_tmpz00_7183 = 
(int)(7L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7183, BGL_REAL_CNST( BGl_real3869z00zz__hashz00)); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4365z00_7187;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7188;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2498z00_3310;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2942z00_5814;
BgL_aux2942z00_5814 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2942z00_5814))
{ /* Llib/hash.scm 231 */
BgL_res2498z00_3310 = BgL_aux2942z00_5814; }  else 
{ 
 obj_t BgL_auxz00_7192;
BgL_auxz00_7192 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2942z00_5814); 
FAILURE(BgL_auxz00_7192,BFALSE,BFALSE);} } 
BgL_tmpz00_7188 = BgL_res2498z00_3310; } 
BgL_test4365z00_7187 = 
(BgL_tmpz00_7188==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4365z00_7187)
{ /* Llib/hash.scm 231 */
 obj_t BgL_auxz00_7199; int BgL_tmpz00_7197;
BgL_auxz00_7199 = 
BINT(-1L); 
BgL_tmpz00_7197 = 
(int)(6L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7197, BgL_auxz00_7199); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4367z00_7203;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7204;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2499z00_3314;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2944z00_5816;
BgL_aux2944z00_5816 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2944z00_5816))
{ /* Llib/hash.scm 231 */
BgL_res2499z00_3314 = BgL_aux2944z00_5816; }  else 
{ 
 obj_t BgL_auxz00_7208;
BgL_auxz00_7208 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2944z00_5816); 
FAILURE(BgL_auxz00_7208,BFALSE,BFALSE);} } 
BgL_tmpz00_7204 = BgL_res2499z00_3314; } 
BgL_test4367z00_7203 = 
(BgL_tmpz00_7204==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4367z00_7203)
{ /* Llib/hash.scm 231 */
 obj_t BgL_auxz00_7215; int BgL_tmpz00_7213;
BgL_auxz00_7215 = 
BINT(BgL_wkz00_1586); 
BgL_tmpz00_7213 = 
(int)(5L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7213, BgL_auxz00_7215); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4369z00_7219;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7220;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2500z00_3318;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2946z00_5818;
BgL_aux2946z00_5818 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2946z00_5818))
{ /* Llib/hash.scm 231 */
BgL_res2500z00_3318 = BgL_aux2946z00_5818; }  else 
{ 
 obj_t BgL_auxz00_7224;
BgL_auxz00_7224 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2946z00_5818); 
FAILURE(BgL_auxz00_7224,BFALSE,BFALSE);} } 
BgL_tmpz00_7220 = BgL_res2500z00_3318; } 
BgL_test4369z00_7219 = 
(BgL_tmpz00_7220==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4369z00_7219)
{ /* Llib/hash.scm 231 */
 int BgL_tmpz00_7229;
BgL_tmpz00_7229 = 
(int)(4L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7229, BgL_hashnz00_1583); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4371z00_7233;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7234;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2501z00_3322;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2948z00_5820;
BgL_aux2948z00_5820 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2948z00_5820))
{ /* Llib/hash.scm 231 */
BgL_res2501z00_3322 = BgL_aux2948z00_5820; }  else 
{ 
 obj_t BgL_auxz00_7238;
BgL_auxz00_7238 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2948z00_5820); 
FAILURE(BgL_auxz00_7238,BFALSE,BFALSE);} } 
BgL_tmpz00_7234 = BgL_res2501z00_3322; } 
BgL_test4371z00_7233 = 
(BgL_tmpz00_7234==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4371z00_7233)
{ /* Llib/hash.scm 231 */
 int BgL_tmpz00_7243;
BgL_tmpz00_7243 = 
(int)(3L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7243, BgL_eqtestz00_1582); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4373z00_7247;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7248;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2502z00_3326;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2950z00_5822;
BgL_aux2950z00_5822 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2950z00_5822))
{ /* Llib/hash.scm 231 */
BgL_res2502z00_3326 = BgL_aux2950z00_5822; }  else 
{ 
 obj_t BgL_auxz00_7252;
BgL_auxz00_7252 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2950z00_5822); 
FAILURE(BgL_auxz00_7252,BFALSE,BFALSE);} } 
BgL_tmpz00_7248 = BgL_res2502z00_3326; } 
BgL_test4373z00_7247 = 
(BgL_tmpz00_7248==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4373z00_7247)
{ /* Llib/hash.scm 231 */
 int BgL_tmpz00_7257;
BgL_tmpz00_7257 = 
(int)(2L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7257, BgL_arg1369z00_1589); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4375z00_7261;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7262;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2503z00_3330;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2952z00_5824;
BgL_aux2952z00_5824 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2952z00_5824))
{ /* Llib/hash.scm 231 */
BgL_res2503z00_3330 = BgL_aux2952z00_5824; }  else 
{ 
 obj_t BgL_auxz00_7266;
BgL_auxz00_7266 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2952z00_5824); 
FAILURE(BgL_auxz00_7266,BFALSE,BFALSE);} } 
BgL_tmpz00_7262 = BgL_res2503z00_3330; } 
BgL_test4375z00_7261 = 
(BgL_tmpz00_7262==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4375z00_7261)
{ /* Llib/hash.scm 231 */
 int BgL_tmpz00_7271;
BgL_tmpz00_7271 = 
(int)(1L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7271, BgL_mblenz00_1581); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
{ /* Llib/hash.scm 231 */
 bool_t BgL_test4377z00_7275;
{ /* Llib/hash.scm 231 */
 obj_t BgL_tmpz00_7276;
{ /* Llib/hash.scm 231 */
 obj_t BgL_res2504z00_3334;
{ /* Llib/hash.scm 231 */
 obj_t BgL_aux2954z00_5826;
BgL_aux2954z00_5826 = 
STRUCT_KEY(BgL_newz00_3302); 
if(
SYMBOLP(BgL_aux2954z00_5826))
{ /* Llib/hash.scm 231 */
BgL_res2504z00_3334 = BgL_aux2954z00_5826; }  else 
{ 
 obj_t BgL_auxz00_7280;
BgL_auxz00_7280 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8513L), BGl_string3862z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2954z00_5826); 
FAILURE(BgL_auxz00_7280,BFALSE,BFALSE);} } 
BgL_tmpz00_7276 = BgL_res2504z00_3334; } 
BgL_test4377z00_7275 = 
(BgL_tmpz00_7276==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4377z00_7275)
{ /* Llib/hash.scm 231 */
 obj_t BgL_auxz00_7287; int BgL_tmpz00_7285;
BgL_auxz00_7287 = 
BINT(0L); 
BgL_tmpz00_7285 = 
(int)(0L); 
STRUCT_SET(BgL_newz00_3302, BgL_tmpz00_7285, BgL_auxz00_7287); }  else 
{ /* Llib/hash.scm 231 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3302); } } 
return BgL_newz00_3302;} } } } } } } } } } } 

}



/* &make-hashtable */
obj_t BGl_z62makezd2hashtablezb0zz__hashz00(obj_t BgL_envz00_5406, obj_t BgL_argsz00_5407)
{
{ /* Llib/hash.scm 162 */
return 
BGl_makezd2hashtablezd2zz__hashz00(BgL_argsz00_5407);} 

}



/* _create-hashtable */
obj_t BGl__createzd2hashtablezd2zz__hashz00(obj_t BgL_env1160z00_52, obj_t BgL_opt1159z00_51)
{
{ /* Llib/hash.scm 236 */
{ /* Llib/hash.scm 236 */

{ /* Llib/hash.scm 236 */
 obj_t BgL_bucketzd2expansionzd2_1620;
BgL_bucketzd2expansionzd2_1620 = BGL_REAL_CNST( BGl_real3869z00zz__hashz00); 
{ /* Llib/hash.scm 236 */
 obj_t BgL_eqtestz00_1621;
BgL_eqtestz00_1621 = BFALSE; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_hashz00_1622;
BgL_hashz00_1622 = BFALSE; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_maxzd2bucketzd2lengthz00_1623;
BgL_maxzd2bucketzd2lengthz00_1623 = 
BINT(10L); 
{ /* Llib/hash.scm 236 */
 obj_t BgL_maxzd2lengthzd2_1624;
BgL_maxzd2lengthzd2_1624 = 
BINT(16384L); 
{ /* Llib/hash.scm 236 */
 obj_t BgL_persistentz00_1625;
BgL_persistentz00_1625 = BFALSE; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_siza7eza7_1626;
BgL_siza7eza7_1626 = 
BINT(128L); 
{ /* Llib/hash.scm 241 */
 obj_t BgL_weakz00_1627;
BgL_weakz00_1627 = BGl_symbol3870z00zz__hashz00; 
{ /* Llib/hash.scm 236 */

{ 
 long BgL_iz00_1628;
BgL_iz00_1628 = 0L; 
BgL_check1163z00_1629:
if(
(BgL_iz00_1628==
VECTOR_LENGTH(BgL_opt1159z00_51)))
{ /* Llib/hash.scm 236 */BNIL; }  else 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4380z00_7298;
{ /* Llib/hash.scm 236 */
 obj_t BgL_arg1391z00_1635;
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4381z00_7299;
{ /* Llib/hash.scm 236 */
 long BgL_tmpz00_7300;
BgL_tmpz00_7300 = 
VECTOR_LENGTH(BgL_opt1159z00_51); 
BgL_test4381z00_7299 = 
BOUND_CHECK(BgL_iz00_1628, BgL_tmpz00_7300); } 
if(BgL_test4381z00_7299)
{ /* Llib/hash.scm 236 */
BgL_arg1391z00_1635 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_iz00_1628); }  else 
{ 
 obj_t BgL_auxz00_7304;
BgL_auxz00_7304 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3872z00zz__hashz00, BgL_opt1159z00_51, 
(int)(
VECTOR_LENGTH(BgL_opt1159z00_51)), 
(int)(BgL_iz00_1628)); 
FAILURE(BgL_auxz00_7304,BFALSE,BFALSE);} } 
BgL_test4380z00_7298 = 
CBOOL(
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_arg1391z00_1635, BGl_list3873z00zz__hashz00)); } 
if(BgL_test4380z00_7298)
{ 
 long BgL_iz00_7313;
BgL_iz00_7313 = 
(BgL_iz00_1628+2L); 
BgL_iz00_1628 = BgL_iz00_7313; 
goto BgL_check1163z00_1629;}  else 
{ /* Llib/hash.scm 236 */
 obj_t BgL_arg1390z00_1634;
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4382z00_7315;
{ /* Llib/hash.scm 236 */
 long BgL_tmpz00_7316;
BgL_tmpz00_7316 = 
VECTOR_LENGTH(BgL_opt1159z00_51); 
BgL_test4382z00_7315 = 
BOUND_CHECK(BgL_iz00_1628, BgL_tmpz00_7316); } 
if(BgL_test4382z00_7315)
{ /* Llib/hash.scm 236 */
BgL_arg1390z00_1634 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_iz00_1628); }  else 
{ 
 obj_t BgL_auxz00_7320;
BgL_auxz00_7320 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3872z00zz__hashz00, BgL_opt1159z00_51, 
(int)(
VECTOR_LENGTH(BgL_opt1159z00_51)), 
(int)(BgL_iz00_1628)); 
FAILURE(BgL_auxz00_7320,BFALSE,BFALSE);} } 
BGl_errorz00zz__errorz00(BGl_symbol3889z00zz__hashz00, BGl_string3891z00zz__hashz00, BgL_arg1390z00_1634); } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1165z00_1636;
BgL_index1165z00_1636 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3874z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4383z00_7330;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3350;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7331;
if(
INTEGERP(BgL_index1165z00_1636))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7331 = BgL_index1165z00_1636
; }  else 
{ 
 obj_t BgL_auxz00_7334;
BgL_auxz00_7334 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1165z00_1636); 
FAILURE(BgL_auxz00_7334,BFALSE,BFALSE);} 
BgL_n1z00_3350 = 
(long)CINT(BgL_tmpz00_7331); } 
BgL_test4383z00_7330 = 
(BgL_n1z00_3350>=0L); } 
if(BgL_test4383z00_7330)
{ 
 long BgL_auxz00_7340;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7341;
if(
INTEGERP(BgL_index1165z00_1636))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7341 = BgL_index1165z00_1636
; }  else 
{ 
 obj_t BgL_auxz00_7344;
BgL_auxz00_7344 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1165z00_1636); 
FAILURE(BgL_auxz00_7344,BFALSE,BFALSE);} 
BgL_auxz00_7340 = 
(long)CINT(BgL_tmpz00_7341); } 
BgL_bucketzd2expansionzd2_1620 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7340); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1166z00_1638;
BgL_index1166z00_1638 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3876z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4386z00_7352;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3351;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7353;
if(
INTEGERP(BgL_index1166z00_1638))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7353 = BgL_index1166z00_1638
; }  else 
{ 
 obj_t BgL_auxz00_7356;
BgL_auxz00_7356 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1166z00_1638); 
FAILURE(BgL_auxz00_7356,BFALSE,BFALSE);} 
BgL_n1z00_3351 = 
(long)CINT(BgL_tmpz00_7353); } 
BgL_test4386z00_7352 = 
(BgL_n1z00_3351>=0L); } 
if(BgL_test4386z00_7352)
{ 
 long BgL_auxz00_7362;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7363;
if(
INTEGERP(BgL_index1166z00_1638))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7363 = BgL_index1166z00_1638
; }  else 
{ 
 obj_t BgL_auxz00_7366;
BgL_auxz00_7366 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1166z00_1638); 
FAILURE(BgL_auxz00_7366,BFALSE,BFALSE);} 
BgL_auxz00_7362 = 
(long)CINT(BgL_tmpz00_7363); } 
BgL_eqtestz00_1621 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7362); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1167z00_1640;
BgL_index1167z00_1640 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3878z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4389z00_7374;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3352;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7375;
if(
INTEGERP(BgL_index1167z00_1640))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7375 = BgL_index1167z00_1640
; }  else 
{ 
 obj_t BgL_auxz00_7378;
BgL_auxz00_7378 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1167z00_1640); 
FAILURE(BgL_auxz00_7378,BFALSE,BFALSE);} 
BgL_n1z00_3352 = 
(long)CINT(BgL_tmpz00_7375); } 
BgL_test4389z00_7374 = 
(BgL_n1z00_3352>=0L); } 
if(BgL_test4389z00_7374)
{ 
 long BgL_auxz00_7384;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7385;
if(
INTEGERP(BgL_index1167z00_1640))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7385 = BgL_index1167z00_1640
; }  else 
{ 
 obj_t BgL_auxz00_7388;
BgL_auxz00_7388 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1167z00_1640); 
FAILURE(BgL_auxz00_7388,BFALSE,BFALSE);} 
BgL_auxz00_7384 = 
(long)CINT(BgL_tmpz00_7385); } 
BgL_hashz00_1622 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7384); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1168z00_1642;
BgL_index1168z00_1642 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3880z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4392z00_7396;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3353;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7397;
if(
INTEGERP(BgL_index1168z00_1642))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7397 = BgL_index1168z00_1642
; }  else 
{ 
 obj_t BgL_auxz00_7400;
BgL_auxz00_7400 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1168z00_1642); 
FAILURE(BgL_auxz00_7400,BFALSE,BFALSE);} 
BgL_n1z00_3353 = 
(long)CINT(BgL_tmpz00_7397); } 
BgL_test4392z00_7396 = 
(BgL_n1z00_3353>=0L); } 
if(BgL_test4392z00_7396)
{ 
 long BgL_auxz00_7406;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7407;
if(
INTEGERP(BgL_index1168z00_1642))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7407 = BgL_index1168z00_1642
; }  else 
{ 
 obj_t BgL_auxz00_7410;
BgL_auxz00_7410 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1168z00_1642); 
FAILURE(BgL_auxz00_7410,BFALSE,BFALSE);} 
BgL_auxz00_7406 = 
(long)CINT(BgL_tmpz00_7407); } 
BgL_maxzd2bucketzd2lengthz00_1623 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7406); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1169z00_1644;
BgL_index1169z00_1644 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3882z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4395z00_7418;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3354;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7419;
if(
INTEGERP(BgL_index1169z00_1644))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7419 = BgL_index1169z00_1644
; }  else 
{ 
 obj_t BgL_auxz00_7422;
BgL_auxz00_7422 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1169z00_1644); 
FAILURE(BgL_auxz00_7422,BFALSE,BFALSE);} 
BgL_n1z00_3354 = 
(long)CINT(BgL_tmpz00_7419); } 
BgL_test4395z00_7418 = 
(BgL_n1z00_3354>=0L); } 
if(BgL_test4395z00_7418)
{ 
 long BgL_auxz00_7428;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7429;
if(
INTEGERP(BgL_index1169z00_1644))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7429 = BgL_index1169z00_1644
; }  else 
{ 
 obj_t BgL_auxz00_7432;
BgL_auxz00_7432 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1169z00_1644); 
FAILURE(BgL_auxz00_7432,BFALSE,BFALSE);} 
BgL_auxz00_7428 = 
(long)CINT(BgL_tmpz00_7429); } 
BgL_maxzd2lengthzd2_1624 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7428); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1170z00_1646;
BgL_index1170z00_1646 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3884z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4398z00_7440;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3355;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7441;
if(
INTEGERP(BgL_index1170z00_1646))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7441 = BgL_index1170z00_1646
; }  else 
{ 
 obj_t BgL_auxz00_7444;
BgL_auxz00_7444 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1170z00_1646); 
FAILURE(BgL_auxz00_7444,BFALSE,BFALSE);} 
BgL_n1z00_3355 = 
(long)CINT(BgL_tmpz00_7441); } 
BgL_test4398z00_7440 = 
(BgL_n1z00_3355>=0L); } 
if(BgL_test4398z00_7440)
{ 
 long BgL_auxz00_7450;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7451;
if(
INTEGERP(BgL_index1170z00_1646))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7451 = BgL_index1170z00_1646
; }  else 
{ 
 obj_t BgL_auxz00_7454;
BgL_auxz00_7454 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1170z00_1646); 
FAILURE(BgL_auxz00_7454,BFALSE,BFALSE);} 
BgL_auxz00_7450 = 
(long)CINT(BgL_tmpz00_7451); } 
BgL_persistentz00_1625 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7450); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1171z00_1648;
BgL_index1171z00_1648 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3885z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4401z00_7462;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3356;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7463;
if(
INTEGERP(BgL_index1171z00_1648))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7463 = BgL_index1171z00_1648
; }  else 
{ 
 obj_t BgL_auxz00_7466;
BgL_auxz00_7466 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1171z00_1648); 
FAILURE(BgL_auxz00_7466,BFALSE,BFALSE);} 
BgL_n1z00_3356 = 
(long)CINT(BgL_tmpz00_7463); } 
BgL_test4401z00_7462 = 
(BgL_n1z00_3356>=0L); } 
if(BgL_test4401z00_7462)
{ 
 long BgL_auxz00_7472;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7473;
if(
INTEGERP(BgL_index1171z00_1648))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7473 = BgL_index1171z00_1648
; }  else 
{ 
 obj_t BgL_auxz00_7476;
BgL_auxz00_7476 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1171z00_1648); 
FAILURE(BgL_auxz00_7476,BFALSE,BFALSE);} 
BgL_auxz00_7472 = 
(long)CINT(BgL_tmpz00_7473); } 
BgL_siza7eza7_1626 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7472); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_index1172z00_1650;
BgL_index1172z00_1650 = 
BGl_search1162ze70ze7zz__hashz00(
VECTOR_LENGTH(BgL_opt1159z00_51), BgL_opt1159z00_51, BGl_keyword3887z00zz__hashz00, 0L); 
{ /* Llib/hash.scm 236 */
 bool_t BgL_test4404z00_7484;
{ /* Llib/hash.scm 236 */
 long BgL_n1z00_3357;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7485;
if(
INTEGERP(BgL_index1172z00_1650))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7485 = BgL_index1172z00_1650
; }  else 
{ 
 obj_t BgL_auxz00_7488;
BgL_auxz00_7488 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1172z00_1650); 
FAILURE(BgL_auxz00_7488,BFALSE,BFALSE);} 
BgL_n1z00_3357 = 
(long)CINT(BgL_tmpz00_7485); } 
BgL_test4404z00_7484 = 
(BgL_n1z00_3357>=0L); } 
if(BgL_test4404z00_7484)
{ 
 long BgL_auxz00_7494;
{ /* Llib/hash.scm 236 */
 obj_t BgL_tmpz00_7495;
if(
INTEGERP(BgL_index1172z00_1650))
{ /* Llib/hash.scm 236 */
BgL_tmpz00_7495 = BgL_index1172z00_1650
; }  else 
{ 
 obj_t BgL_auxz00_7498;
BgL_auxz00_7498 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(8806L), BGl_string3892z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_index1172z00_1650); 
FAILURE(BgL_auxz00_7498,BFALSE,BFALSE);} 
BgL_auxz00_7494 = 
(long)CINT(BgL_tmpz00_7495); } 
BgL_weakz00_1627 = 
VECTOR_REF(BgL_opt1159z00_51,BgL_auxz00_7494); }  else 
{ /* Llib/hash.scm 236 */BFALSE; } } } 
{ /* Llib/hash.scm 236 */
 obj_t BgL_bucketzd2expansionzd2_1652;
BgL_bucketzd2expansionzd2_1652 = BgL_bucketzd2expansionzd2_1620; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_eqtestz00_1653;
BgL_eqtestz00_1653 = BgL_eqtestz00_1621; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_hashz00_1654;
BgL_hashz00_1654 = BgL_hashz00_1622; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_maxzd2bucketzd2lengthz00_1655;
BgL_maxzd2bucketzd2lengthz00_1655 = BgL_maxzd2bucketzd2lengthz00_1623; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_maxzd2lengthzd2_1656;
BgL_maxzd2lengthzd2_1656 = BgL_maxzd2lengthzd2_1624; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_persistentz00_1657;
BgL_persistentz00_1657 = BgL_persistentz00_1625; 
{ /* Llib/hash.scm 236 */
 obj_t BgL_siza7eza7_1658;
BgL_siza7eza7_1658 = BgL_siza7eza7_1626; 
return 
BGl_createzd2hashtablezd2zz__hashz00(BgL_bucketzd2expansionzd2_1652, BgL_eqtestz00_1653, BgL_hashz00_1654, BgL_maxzd2bucketzd2lengthz00_1655, BgL_maxzd2lengthzd2_1656, BgL_persistentz00_1657, BgL_siza7eza7_1658, BgL_weakz00_1627);} } } } } } } } } } } } } } } } } } 

}



/* search1162~0 */
obj_t BGl_search1162ze70ze7zz__hashz00(long BgL_l1161z00_5527, obj_t BgL_opt1159z00_5526, obj_t BgL_k1z00_1617, long BgL_iz00_1618)
{
{ /* Llib/hash.scm 236 */
BGl_search1162ze70ze7zz__hashz00:
if(
(BgL_iz00_1618==BgL_l1161z00_5527))
{ /* Llib/hash.scm 236 */
return 
BINT(-1L);}  else 
{ /* Llib/hash.scm 236 */
if(
(BgL_iz00_1618==
(BgL_l1161z00_5527-1L)))
{ /* Llib/hash.scm 236 */
return 
BGl_errorz00zz__errorz00(BGl_symbol3889z00zz__hashz00, BGl_string3893z00zz__hashz00, 
BINT(
VECTOR_LENGTH(BgL_opt1159z00_5526)));}  else 
{ /* Llib/hash.scm 236 */
 obj_t BgL_vz00_1664;
BgL_vz00_1664 = 
VECTOR_REF(BgL_opt1159z00_5526,BgL_iz00_1618); 
if(
(BgL_vz00_1664==BgL_k1z00_1617))
{ /* Llib/hash.scm 236 */
return 
BINT(
(BgL_iz00_1618+1L));}  else 
{ 
 long BgL_iz00_7519;
BgL_iz00_7519 = 
(BgL_iz00_1618+2L); 
BgL_iz00_1618 = BgL_iz00_7519; 
goto BGl_search1162ze70ze7zz__hashz00;} } } } 

}



/* create-hashtable */
BGL_EXPORTED_DEF obj_t BGl_createzd2hashtablezd2zz__hashz00(obj_t BgL_bucketzd2expansionzd2_43, obj_t BgL_eqtestz00_44, obj_t BgL_hashz00_45, obj_t BgL_maxzd2bucketzd2lengthz00_46, obj_t BgL_maxzd2lengthzd2_47, obj_t BgL_persistentz00_48, obj_t BgL_siza7eza7_49, obj_t BgL_weakz00_50)
{
{ /* Llib/hash.scm 236 */
{ /* Llib/hash.scm 245 */
 long BgL_weakz00_1667;
if(
(BgL_weakz00_50==BGl_symbol3894z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 1L; }  else 
{ /* Llib/hash.scm 245 */
if(
(BgL_weakz00_50==BGl_symbol3896z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 2L; }  else 
{ /* Llib/hash.scm 245 */
if(
(BgL_weakz00_50==BGl_symbol3898z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 3L; }  else 
{ /* Llib/hash.scm 245 */
if(
(BgL_weakz00_50==BGl_symbol3870z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 0L; }  else 
{ /* Llib/hash.scm 245 */
if(
(BgL_weakz00_50==BGl_symbol3900z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 8L; }  else 
{ /* Llib/hash.scm 245 */
if(
(BgL_weakz00_50==BGl_symbol3902z00zz__hashz00))
{ /* Llib/hash.scm 245 */
BgL_weakz00_1667 = 4L; }  else 
{ /* Llib/hash.scm 245 */
if(
CBOOL(BgL_weakz00_50))
{ /* Llib/hash.scm 252 */
BgL_weakz00_1667 = 2L; }  else 
{ /* Llib/hash.scm 252 */
BgL_weakz00_1667 = 0L; } } } } } } } 
if(
CBOOL(BgL_persistentz00_48))
{ /* Llib/hash.scm 253 */
if(
CBOOL(BgL_hashz00_45))
{ /* Llib/hash.scm 254 */
BGl_errorz00zz__errorz00(BGl_string3890z00zz__hashz00, BGl_string3904z00zz__hashz00, BgL_hashz00_45); }  else 
{ /* Llib/hash.scm 254 */
BgL_hashz00_45 = BGl_symbol3860z00zz__hashz00; } }  else 
{ /* Llib/hash.scm 253 */BFALSE; } 
{ /* Llib/hash.scm 259 */
 bool_t BgL_test4419z00_7540;
if(
(
BINT(BgL_weakz00_1667)==
BINT(8L)))
{ /* Llib/hash.scm 259 */
BgL_test4419z00_7540 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 259 */
BgL_test4419z00_7540 = 
(
BINT(BgL_weakz00_1667)==
BINT(4L))
; } 
if(BgL_test4419z00_7540)
{ /* Llib/hash.scm 259 */
if(
CBOOL(BgL_eqtestz00_44))
{ /* Llib/hash.scm 261 */
return 
BGl_errorz00zz__errorz00(BGl_string3890z00zz__hashz00, BGl_string3905z00zz__hashz00, BgL_eqtestz00_44);}  else 
{ /* Llib/hash.scm 261 */
if(
CBOOL(BgL_hashz00_45))
{ /* Llib/hash.scm 264 */
return 
BGl_errorz00zz__errorz00(BGl_string3890z00zz__hashz00, BGl_string3906z00zz__hashz00, BgL_hashz00_45);}  else 
{ /* Llib/hash.scm 264 */
if(
(
BINT(BgL_weakz00_1667)==
BINT(8L)))
{ /* Llib/hash.scm 268 */
 obj_t BgL_arg1408z00_1669;
{ /* Llib/hash.scm 268 */
 long BgL_arg1409z00_1670;
{ /* Llib/hash.scm 268 */
 long BgL_za72za7_3364;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7558;
if(
INTEGERP(BgL_siza7eza7_49))
{ /* Llib/hash.scm 268 */
BgL_tmpz00_7558 = BgL_siza7eza7_49
; }  else 
{ 
 obj_t BgL_auxz00_7561;
BgL_auxz00_7561 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9777L), BGl_string3890z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_49); 
FAILURE(BgL_auxz00_7561,BFALSE,BFALSE);} 
BgL_za72za7_3364 = 
(long)CINT(BgL_tmpz00_7558); } 
BgL_arg1409z00_1670 = 
(3L*BgL_za72za7_3364); } 
BgL_arg1408z00_1669 = 
make_vector(BgL_arg1409z00_1670, BFALSE); } 
{ /* Llib/hash.scm 268 */
 obj_t BgL_newz00_3365;
BgL_newz00_3365 = 
create_struct(BGl_symbol3848z00zz__hashz00, 
(int)(8L)); 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4425z00_7570;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7571;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2505z00_3369;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2973z00_5845;
BgL_aux2973z00_5845 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2973z00_5845))
{ /* Llib/hash.scm 268 */
BgL_res2505z00_3369 = BgL_aux2973z00_5845; }  else 
{ 
 obj_t BgL_auxz00_7575;
BgL_auxz00_7575 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2973z00_5845); 
FAILURE(BgL_auxz00_7575,BFALSE,BFALSE);} } 
BgL_tmpz00_7571 = BgL_res2505z00_3369; } 
BgL_test4425z00_7570 = 
(BgL_tmpz00_7571==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4425z00_7570)
{ /* Llib/hash.scm 268 */
 obj_t BgL_auxz00_7582; int BgL_tmpz00_7580;
BgL_auxz00_7582 = 
BINT(0L); 
BgL_tmpz00_7580 = 
(int)(7L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7580, BgL_auxz00_7582); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4427z00_7586;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7587;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2506z00_3373;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2975z00_5847;
BgL_aux2975z00_5847 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2975z00_5847))
{ /* Llib/hash.scm 268 */
BgL_res2506z00_3373 = BgL_aux2975z00_5847; }  else 
{ 
 obj_t BgL_auxz00_7591;
BgL_auxz00_7591 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2975z00_5847); 
FAILURE(BgL_auxz00_7591,BFALSE,BFALSE);} } 
BgL_tmpz00_7587 = BgL_res2506z00_3373; } 
BgL_test4427z00_7586 = 
(BgL_tmpz00_7587==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4427z00_7586)
{ /* Llib/hash.scm 268 */
 obj_t BgL_auxz00_7598; int BgL_tmpz00_7596;
BgL_auxz00_7598 = 
BINT(0L); 
BgL_tmpz00_7596 = 
(int)(6L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7596, BgL_auxz00_7598); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4429z00_7602;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7603;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2507z00_3377;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2977z00_5849;
BgL_aux2977z00_5849 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2977z00_5849))
{ /* Llib/hash.scm 268 */
BgL_res2507z00_3377 = BgL_aux2977z00_5849; }  else 
{ 
 obj_t BgL_auxz00_7607;
BgL_auxz00_7607 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2977z00_5849); 
FAILURE(BgL_auxz00_7607,BFALSE,BFALSE);} } 
BgL_tmpz00_7603 = BgL_res2507z00_3377; } 
BgL_test4429z00_7602 = 
(BgL_tmpz00_7603==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4429z00_7602)
{ /* Llib/hash.scm 268 */
 obj_t BgL_auxz00_7614; int BgL_tmpz00_7612;
BgL_auxz00_7614 = 
BINT(BgL_weakz00_1667); 
BgL_tmpz00_7612 = 
(int)(5L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7612, BgL_auxz00_7614); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4431z00_7618;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7619;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2508z00_3381;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2979z00_5851;
BgL_aux2979z00_5851 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2979z00_5851))
{ /* Llib/hash.scm 268 */
BgL_res2508z00_3381 = BgL_aux2979z00_5851; }  else 
{ 
 obj_t BgL_auxz00_7623;
BgL_auxz00_7623 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2979z00_5851); 
FAILURE(BgL_auxz00_7623,BFALSE,BFALSE);} } 
BgL_tmpz00_7619 = BgL_res2508z00_3381; } 
BgL_test4431z00_7618 = 
(BgL_tmpz00_7619==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4431z00_7618)
{ /* Llib/hash.scm 268 */
 int BgL_tmpz00_7628;
BgL_tmpz00_7628 = 
(int)(4L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7628, BGl_listzd2envzd2zz__r4_pairs_and_lists_6_3z00); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4433z00_7632;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7633;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2509z00_3385;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2981z00_5853;
BgL_aux2981z00_5853 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2981z00_5853))
{ /* Llib/hash.scm 268 */
BgL_res2509z00_3385 = BgL_aux2981z00_5853; }  else 
{ 
 obj_t BgL_auxz00_7637;
BgL_auxz00_7637 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2981z00_5853); 
FAILURE(BgL_auxz00_7637,BFALSE,BFALSE);} } 
BgL_tmpz00_7633 = BgL_res2509z00_3385; } 
BgL_test4433z00_7632 = 
(BgL_tmpz00_7633==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4433z00_7632)
{ /* Llib/hash.scm 268 */
 int BgL_tmpz00_7642;
BgL_tmpz00_7642 = 
(int)(3L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7642, BGl_eqzf3zd2envz21zz__r4_equivalence_6_2z00); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4435z00_7646;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7647;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2510z00_3389;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2983z00_5855;
BgL_aux2983z00_5855 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2983z00_5855))
{ /* Llib/hash.scm 268 */
BgL_res2510z00_3389 = BgL_aux2983z00_5855; }  else 
{ 
 obj_t BgL_auxz00_7651;
BgL_auxz00_7651 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2983z00_5855); 
FAILURE(BgL_auxz00_7651,BFALSE,BFALSE);} } 
BgL_tmpz00_7647 = BgL_res2510z00_3389; } 
BgL_test4435z00_7646 = 
(BgL_tmpz00_7647==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4435z00_7646)
{ /* Llib/hash.scm 268 */
 int BgL_tmpz00_7656;
BgL_tmpz00_7656 = 
(int)(2L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7656, BgL_arg1408z00_1669); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4437z00_7660;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7661;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2511z00_3393;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2985z00_5857;
BgL_aux2985z00_5857 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2985z00_5857))
{ /* Llib/hash.scm 268 */
BgL_res2511z00_3393 = BgL_aux2985z00_5857; }  else 
{ 
 obj_t BgL_auxz00_7665;
BgL_auxz00_7665 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2985z00_5857); 
FAILURE(BgL_auxz00_7665,BFALSE,BFALSE);} } 
BgL_tmpz00_7661 = BgL_res2511z00_3393; } 
BgL_test4437z00_7660 = 
(BgL_tmpz00_7661==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4437z00_7660)
{ /* Llib/hash.scm 268 */
 int BgL_tmpz00_7670;
BgL_tmpz00_7670 = 
(int)(1L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7670, BgL_siza7eza7_49); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
{ /* Llib/hash.scm 268 */
 bool_t BgL_test4439z00_7674;
{ /* Llib/hash.scm 268 */
 obj_t BgL_tmpz00_7675;
{ /* Llib/hash.scm 268 */
 obj_t BgL_res2512z00_3397;
{ /* Llib/hash.scm 268 */
 obj_t BgL_aux2987z00_5859;
BgL_aux2987z00_5859 = 
STRUCT_KEY(BgL_newz00_3365); 
if(
SYMBOLP(BgL_aux2987z00_5859))
{ /* Llib/hash.scm 268 */
BgL_res2512z00_3397 = BgL_aux2987z00_5859; }  else 
{ 
 obj_t BgL_auxz00_7679;
BgL_auxz00_7679 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9738L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2987z00_5859); 
FAILURE(BgL_auxz00_7679,BFALSE,BFALSE);} } 
BgL_tmpz00_7675 = BgL_res2512z00_3397; } 
BgL_test4439z00_7674 = 
(BgL_tmpz00_7675==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4439z00_7674)
{ /* Llib/hash.scm 268 */
 obj_t BgL_auxz00_7686; int BgL_tmpz00_7684;
BgL_auxz00_7686 = 
BINT(0L); 
BgL_tmpz00_7684 = 
(int)(0L); 
STRUCT_SET(BgL_newz00_3365, BgL_tmpz00_7684, BgL_auxz00_7686); }  else 
{ /* Llib/hash.scm 268 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3365); } } 
return BgL_newz00_3365;} }  else 
{ /* Llib/hash.scm 270 */
 obj_t BgL_arg1410z00_1671;
{ /* Llib/hash.scm 270 */
 long BgL_tmpz00_7690;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7691;
if(
INTEGERP(BgL_siza7eza7_49))
{ /* Llib/hash.scm 270 */
BgL_tmpz00_7691 = BgL_siza7eza7_49
; }  else 
{ 
 obj_t BgL_auxz00_7694;
BgL_auxz00_7694 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9858L), BGl_string3890z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_49); 
FAILURE(BgL_auxz00_7694,BFALSE,BFALSE);} 
BgL_tmpz00_7690 = 
(long)CINT(BgL_tmpz00_7691); } 
BgL_arg1410z00_1671 = 
make_vector(BgL_tmpz00_7690, BNIL); } 
{ /* Llib/hash.scm 270 */
 obj_t BgL_newz00_3400;
BgL_newz00_3400 = 
create_struct(BGl_symbol3848z00zz__hashz00, 
(int)(8L)); 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4442z00_7702;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7703;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2513z00_3404;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux2990z00_5862;
BgL_aux2990z00_5862 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux2990z00_5862))
{ /* Llib/hash.scm 270 */
BgL_res2513z00_3404 = BgL_aux2990z00_5862; }  else 
{ 
 obj_t BgL_auxz00_7707;
BgL_auxz00_7707 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2990z00_5862); 
FAILURE(BgL_auxz00_7707,BFALSE,BFALSE);} } 
BgL_tmpz00_7703 = BgL_res2513z00_3404; } 
BgL_test4442z00_7702 = 
(BgL_tmpz00_7703==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4442z00_7702)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7712;
BgL_tmpz00_7712 = 
(int)(7L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7712, BgL_bucketzd2expansionzd2_43); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4444z00_7716;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7717;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2514z00_3408;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux2992z00_5864;
BgL_aux2992z00_5864 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux2992z00_5864))
{ /* Llib/hash.scm 270 */
BgL_res2514z00_3408 = BgL_aux2992z00_5864; }  else 
{ 
 obj_t BgL_auxz00_7721;
BgL_auxz00_7721 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2992z00_5864); 
FAILURE(BgL_auxz00_7721,BFALSE,BFALSE);} } 
BgL_tmpz00_7717 = BgL_res2514z00_3408; } 
BgL_test4444z00_7716 = 
(BgL_tmpz00_7717==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4444z00_7716)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7726;
BgL_tmpz00_7726 = 
(int)(6L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7726, BgL_maxzd2lengthzd2_47); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4446z00_7730;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7731;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2515z00_3412;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux2994z00_5866;
BgL_aux2994z00_5866 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux2994z00_5866))
{ /* Llib/hash.scm 270 */
BgL_res2515z00_3412 = BgL_aux2994z00_5866; }  else 
{ 
 obj_t BgL_auxz00_7735;
BgL_auxz00_7735 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2994z00_5866); 
FAILURE(BgL_auxz00_7735,BFALSE,BFALSE);} } 
BgL_tmpz00_7731 = BgL_res2515z00_3412; } 
BgL_test4446z00_7730 = 
(BgL_tmpz00_7731==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4446z00_7730)
{ /* Llib/hash.scm 270 */
 obj_t BgL_auxz00_7742; int BgL_tmpz00_7740;
BgL_auxz00_7742 = 
BINT(BgL_weakz00_1667); 
BgL_tmpz00_7740 = 
(int)(5L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7740, BgL_auxz00_7742); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4448z00_7746;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7747;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2516z00_3416;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux2996z00_5868;
BgL_aux2996z00_5868 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux2996z00_5868))
{ /* Llib/hash.scm 270 */
BgL_res2516z00_3416 = BgL_aux2996z00_5868; }  else 
{ 
 obj_t BgL_auxz00_7751;
BgL_auxz00_7751 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2996z00_5868); 
FAILURE(BgL_auxz00_7751,BFALSE,BFALSE);} } 
BgL_tmpz00_7747 = BgL_res2516z00_3416; } 
BgL_test4448z00_7746 = 
(BgL_tmpz00_7747==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4448z00_7746)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7756;
BgL_tmpz00_7756 = 
(int)(4L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7756, BGl_proc3907z00zz__hashz00); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4450z00_7760;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7761;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2517z00_3420;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux2998z00_5870;
BgL_aux2998z00_5870 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux2998z00_5870))
{ /* Llib/hash.scm 270 */
BgL_res2517z00_3420 = BgL_aux2998z00_5870; }  else 
{ 
 obj_t BgL_auxz00_7765;
BgL_auxz00_7765 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux2998z00_5870); 
FAILURE(BgL_auxz00_7765,BFALSE,BFALSE);} } 
BgL_tmpz00_7761 = BgL_res2517z00_3420; } 
BgL_test4450z00_7760 = 
(BgL_tmpz00_7761==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4450z00_7760)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7770;
BgL_tmpz00_7770 = 
(int)(3L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7770, BGl_stringzd3zf3zd2envzf2zz__r4_strings_6_7z00); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4452z00_7774;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7775;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2518z00_3424;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux3000z00_5872;
BgL_aux3000z00_5872 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux3000z00_5872))
{ /* Llib/hash.scm 270 */
BgL_res2518z00_3424 = BgL_aux3000z00_5872; }  else 
{ 
 obj_t BgL_auxz00_7779;
BgL_auxz00_7779 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3000z00_5872); 
FAILURE(BgL_auxz00_7779,BFALSE,BFALSE);} } 
BgL_tmpz00_7775 = BgL_res2518z00_3424; } 
BgL_test4452z00_7774 = 
(BgL_tmpz00_7775==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4452z00_7774)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7784;
BgL_tmpz00_7784 = 
(int)(2L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7784, BgL_arg1410z00_1671); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4454z00_7788;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7789;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2519z00_3428;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux3002z00_5874;
BgL_aux3002z00_5874 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux3002z00_5874))
{ /* Llib/hash.scm 270 */
BgL_res2519z00_3428 = BgL_aux3002z00_5874; }  else 
{ 
 obj_t BgL_auxz00_7793;
BgL_auxz00_7793 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3002z00_5874); 
FAILURE(BgL_auxz00_7793,BFALSE,BFALSE);} } 
BgL_tmpz00_7789 = BgL_res2519z00_3428; } 
BgL_test4454z00_7788 = 
(BgL_tmpz00_7789==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4454z00_7788)
{ /* Llib/hash.scm 270 */
 int BgL_tmpz00_7798;
BgL_tmpz00_7798 = 
(int)(1L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7798, BgL_maxzd2bucketzd2lengthz00_46); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
{ /* Llib/hash.scm 270 */
 bool_t BgL_test4456z00_7802;
{ /* Llib/hash.scm 270 */
 obj_t BgL_tmpz00_7803;
{ /* Llib/hash.scm 270 */
 obj_t BgL_res2520z00_3432;
{ /* Llib/hash.scm 270 */
 obj_t BgL_aux3004z00_5876;
BgL_aux3004z00_5876 = 
STRUCT_KEY(BgL_newz00_3400); 
if(
SYMBOLP(BgL_aux3004z00_5876))
{ /* Llib/hash.scm 270 */
BgL_res2520z00_3432 = BgL_aux3004z00_5876; }  else 
{ 
 obj_t BgL_auxz00_7807;
BgL_auxz00_7807 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9826L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3004z00_5876); 
FAILURE(BgL_auxz00_7807,BFALSE,BFALSE);} } 
BgL_tmpz00_7803 = BgL_res2520z00_3432; } 
BgL_test4456z00_7802 = 
(BgL_tmpz00_7803==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4456z00_7802)
{ /* Llib/hash.scm 270 */
 obj_t BgL_auxz00_7814; int BgL_tmpz00_7812;
BgL_auxz00_7814 = 
BINT(0L); 
BgL_tmpz00_7812 = 
(int)(0L); 
STRUCT_SET(BgL_newz00_3400, BgL_tmpz00_7812, BgL_auxz00_7814); }  else 
{ /* Llib/hash.scm 270 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3400); } } 
return BgL_newz00_3400;} } } } }  else 
{ /* Llib/hash.scm 274 */
 obj_t BgL_arg1414z00_1677;
{ /* Llib/hash.scm 274 */
 long BgL_tmpz00_7818;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7819;
if(
INTEGERP(BgL_siza7eza7_49))
{ /* Llib/hash.scm 274 */
BgL_tmpz00_7819 = BgL_siza7eza7_49
; }  else 
{ 
 obj_t BgL_auxz00_7822;
BgL_auxz00_7822 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(10020L), BGl_string3890z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_49); 
FAILURE(BgL_auxz00_7822,BFALSE,BFALSE);} 
BgL_tmpz00_7818 = 
(long)CINT(BgL_tmpz00_7819); } 
BgL_arg1414z00_1677 = 
make_vector(BgL_tmpz00_7818, BNIL); } 
{ /* Llib/hash.scm 274 */
 obj_t BgL_hashnz00_3433;
BgL_hashnz00_3433 = BgL_hashz00_45; 
{ /* Llib/hash.scm 274 */
 obj_t BgL_newz00_3434;
BgL_newz00_3434 = 
create_struct(BGl_symbol3848z00zz__hashz00, 
(int)(8L)); 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4459z00_7830;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7831;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2521z00_3438;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3007z00_5879;
BgL_aux3007z00_5879 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3007z00_5879))
{ /* Llib/hash.scm 274 */
BgL_res2521z00_3438 = BgL_aux3007z00_5879; }  else 
{ 
 obj_t BgL_auxz00_7835;
BgL_auxz00_7835 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3007z00_5879); 
FAILURE(BgL_auxz00_7835,BFALSE,BFALSE);} } 
BgL_tmpz00_7831 = BgL_res2521z00_3438; } 
BgL_test4459z00_7830 = 
(BgL_tmpz00_7831==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4459z00_7830)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7840;
BgL_tmpz00_7840 = 
(int)(7L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7840, BgL_bucketzd2expansionzd2_43); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4461z00_7844;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7845;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2522z00_3442;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3009z00_5881;
BgL_aux3009z00_5881 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3009z00_5881))
{ /* Llib/hash.scm 274 */
BgL_res2522z00_3442 = BgL_aux3009z00_5881; }  else 
{ 
 obj_t BgL_auxz00_7849;
BgL_auxz00_7849 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3009z00_5881); 
FAILURE(BgL_auxz00_7849,BFALSE,BFALSE);} } 
BgL_tmpz00_7845 = BgL_res2522z00_3442; } 
BgL_test4461z00_7844 = 
(BgL_tmpz00_7845==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4461z00_7844)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7854;
BgL_tmpz00_7854 = 
(int)(6L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7854, BgL_maxzd2lengthzd2_47); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4463z00_7858;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7859;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2523z00_3446;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3011z00_5883;
BgL_aux3011z00_5883 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3011z00_5883))
{ /* Llib/hash.scm 274 */
BgL_res2523z00_3446 = BgL_aux3011z00_5883; }  else 
{ 
 obj_t BgL_auxz00_7863;
BgL_auxz00_7863 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3011z00_5883); 
FAILURE(BgL_auxz00_7863,BFALSE,BFALSE);} } 
BgL_tmpz00_7859 = BgL_res2523z00_3446; } 
BgL_test4463z00_7858 = 
(BgL_tmpz00_7859==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4463z00_7858)
{ /* Llib/hash.scm 274 */
 obj_t BgL_auxz00_7870; int BgL_tmpz00_7868;
BgL_auxz00_7870 = 
BINT(BgL_weakz00_1667); 
BgL_tmpz00_7868 = 
(int)(5L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7868, BgL_auxz00_7870); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4465z00_7874;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7875;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2524z00_3450;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3013z00_5885;
BgL_aux3013z00_5885 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3013z00_5885))
{ /* Llib/hash.scm 274 */
BgL_res2524z00_3450 = BgL_aux3013z00_5885; }  else 
{ 
 obj_t BgL_auxz00_7879;
BgL_auxz00_7879 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3013z00_5885); 
FAILURE(BgL_auxz00_7879,BFALSE,BFALSE);} } 
BgL_tmpz00_7875 = BgL_res2524z00_3450; } 
BgL_test4465z00_7874 = 
(BgL_tmpz00_7875==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4465z00_7874)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7884;
BgL_tmpz00_7884 = 
(int)(4L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7884, BgL_hashnz00_3433); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4467z00_7888;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7889;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2525z00_3454;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3015z00_5887;
BgL_aux3015z00_5887 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3015z00_5887))
{ /* Llib/hash.scm 274 */
BgL_res2525z00_3454 = BgL_aux3015z00_5887; }  else 
{ 
 obj_t BgL_auxz00_7893;
BgL_auxz00_7893 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3015z00_5887); 
FAILURE(BgL_auxz00_7893,BFALSE,BFALSE);} } 
BgL_tmpz00_7889 = BgL_res2525z00_3454; } 
BgL_test4467z00_7888 = 
(BgL_tmpz00_7889==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4467z00_7888)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7898;
BgL_tmpz00_7898 = 
(int)(3L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7898, BgL_eqtestz00_44); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4469z00_7902;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7903;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2526z00_3458;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3017z00_5889;
BgL_aux3017z00_5889 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3017z00_5889))
{ /* Llib/hash.scm 274 */
BgL_res2526z00_3458 = BgL_aux3017z00_5889; }  else 
{ 
 obj_t BgL_auxz00_7907;
BgL_auxz00_7907 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3017z00_5889); 
FAILURE(BgL_auxz00_7907,BFALSE,BFALSE);} } 
BgL_tmpz00_7903 = BgL_res2526z00_3458; } 
BgL_test4469z00_7902 = 
(BgL_tmpz00_7903==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4469z00_7902)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7912;
BgL_tmpz00_7912 = 
(int)(2L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7912, BgL_arg1414z00_1677); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4471z00_7916;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7917;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2527z00_3462;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3019z00_5891;
BgL_aux3019z00_5891 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3019z00_5891))
{ /* Llib/hash.scm 274 */
BgL_res2527z00_3462 = BgL_aux3019z00_5891; }  else 
{ 
 obj_t BgL_auxz00_7921;
BgL_auxz00_7921 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3019z00_5891); 
FAILURE(BgL_auxz00_7921,BFALSE,BFALSE);} } 
BgL_tmpz00_7917 = BgL_res2527z00_3462; } 
BgL_test4471z00_7916 = 
(BgL_tmpz00_7917==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4471z00_7916)
{ /* Llib/hash.scm 274 */
 int BgL_tmpz00_7926;
BgL_tmpz00_7926 = 
(int)(1L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7926, BgL_maxzd2bucketzd2lengthz00_46); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
{ /* Llib/hash.scm 274 */
 bool_t BgL_test4473z00_7930;
{ /* Llib/hash.scm 274 */
 obj_t BgL_tmpz00_7931;
{ /* Llib/hash.scm 274 */
 obj_t BgL_res2528z00_3466;
{ /* Llib/hash.scm 274 */
 obj_t BgL_aux3021z00_5893;
BgL_aux3021z00_5893 = 
STRUCT_KEY(BgL_newz00_3434); 
if(
SYMBOLP(BgL_aux3021z00_5893))
{ /* Llib/hash.scm 274 */
BgL_res2528z00_3466 = BgL_aux3021z00_5893; }  else 
{ 
 obj_t BgL_auxz00_7935;
BgL_auxz00_7935 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9988L), BGl_string3890z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3021z00_5893); 
FAILURE(BgL_auxz00_7935,BFALSE,BFALSE);} } 
BgL_tmpz00_7931 = BgL_res2528z00_3466; } 
BgL_test4473z00_7930 = 
(BgL_tmpz00_7931==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4473z00_7930)
{ /* Llib/hash.scm 274 */
 obj_t BgL_auxz00_7942; int BgL_tmpz00_7940;
BgL_auxz00_7942 = 
BINT(0L); 
BgL_tmpz00_7940 = 
(int)(0L); 
STRUCT_SET(BgL_newz00_3434, BgL_tmpz00_7940, BgL_auxz00_7942); }  else 
{ /* Llib/hash.scm 274 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_newz00_3434); } } 
return BgL_newz00_3434;} } } } } } 

}



/* &<@anonymous:1412> */
obj_t BGl_z62zc3z04anonymousza31412ze3ze5zz__hashz00(obj_t BgL_envz00_5414, obj_t BgL_sz00_5415)
{
{ /* Llib/hash.scm 272 */
{ /* Llib/hash.scm 272 */
 long BgL_tmpz00_7946;
{ /* Llib/hash.scm 272 */
 long BgL_arg1413z00_6744;
{ /* Llib/hash.scm 272 */
 obj_t BgL_stringz00_6745;
if(
STRINGP(BgL_sz00_5415))
{ /* Llib/hash.scm 272 */
BgL_stringz00_6745 = BgL_sz00_5415; }  else 
{ 
 obj_t BgL_auxz00_7949;
BgL_auxz00_7949 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9926L), BGl_string3908z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_sz00_5415); 
FAILURE(BgL_auxz00_7949,BFALSE,BFALSE);} 
BgL_arg1413z00_6744 = 
STRING_LENGTH(BgL_stringz00_6745); } 
{ /* Llib/hash.scm 272 */
 char * BgL_tmpz00_7954;
{ /* Llib/hash.scm 272 */
 obj_t BgL_tmpz00_7955;
if(
STRINGP(BgL_sz00_5415))
{ /* Llib/hash.scm 272 */
BgL_tmpz00_7955 = BgL_sz00_5415
; }  else 
{ 
 obj_t BgL_auxz00_7958;
BgL_auxz00_7958 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(9922L), BGl_string3908z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_sz00_5415); 
FAILURE(BgL_auxz00_7958,BFALSE,BFALSE);} 
BgL_tmpz00_7954 = 
BSTRING_TO_STRING(BgL_tmpz00_7955); } 
BgL_tmpz00_7946 = 
bgl_string_hash(BgL_tmpz00_7954, 
(int)(0L), 
(int)(BgL_arg1413z00_6744)); } } 
return 
BINT(BgL_tmpz00_7946);} } 

}



/* hashtable? */
BGL_EXPORTED_DEF bool_t BGl_hashtablezf3zf3zz__hashz00(obj_t BgL_objz00_53)
{
{ /* Llib/hash.scm 281 */
if(
STRUCTP(BgL_objz00_53))
{ /* Llib/hash.scm 282 */
 obj_t BgL_tmpz00_7969;
{ /* Llib/hash.scm 282 */
 obj_t BgL_res2529z00_3470;
{ /* Llib/hash.scm 282 */
 obj_t BgL_aux3027z00_5899;
BgL_aux3027z00_5899 = 
STRUCT_KEY(BgL_objz00_53); 
if(
SYMBOLP(BgL_aux3027z00_5899))
{ /* Llib/hash.scm 282 */
BgL_res2529z00_3470 = BgL_aux3027z00_5899; }  else 
{ 
 obj_t BgL_auxz00_7973;
BgL_auxz00_7973 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(10366L), BGl_string3910z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3027z00_5899); 
FAILURE(BgL_auxz00_7973,BFALSE,BFALSE);} } 
BgL_tmpz00_7969 = BgL_res2529z00_3470; } 
return 
(BgL_tmpz00_7969==BGl_symbol3848z00zz__hashz00);}  else 
{ /* Llib/hash.scm 282 */
return ((bool_t)0);} } 

}



/* &hashtable? */
obj_t BGl_z62hashtablezf3z91zz__hashz00(obj_t BgL_envz00_5419, obj_t BgL_objz00_5420)
{
{ /* Llib/hash.scm 281 */
return 
BBOOL(
BGl_hashtablezf3zf3zz__hashz00(BgL_objz00_5420));} 

}



/* hashtable-weak? */
bool_t BGl_hashtablezd2weakzf3z21zz__hashz00(obj_t BgL_tablez00_54)
{
{ /* Llib/hash.scm 287 */
{ /* Llib/hash.scm 288 */
 bool_t BgL_test4479z00_7980;
{ /* Llib/hash.scm 288 */
 long BgL_arg1424z00_1688;
{ /* Llib/hash.scm 288 */
 obj_t BgL_arg1425z00_1689;
{ /* Llib/hash.scm 288 */
 bool_t BgL_test4480z00_7981;
{ /* Llib/hash.scm 288 */
 obj_t BgL_tmpz00_7982;
{ /* Llib/hash.scm 288 */
 obj_t BgL_res2530z00_3474;
{ /* Llib/hash.scm 288 */
 obj_t BgL_aux3029z00_5901;
BgL_aux3029z00_5901 = 
STRUCT_KEY(BgL_tablez00_54); 
if(
SYMBOLP(BgL_aux3029z00_5901))
{ /* Llib/hash.scm 288 */
BgL_res2530z00_3474 = BgL_aux3029z00_5901; }  else 
{ 
 obj_t BgL_auxz00_7986;
BgL_auxz00_7986 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(10678L), BGl_string3911z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3029z00_5901); 
FAILURE(BgL_auxz00_7986,BFALSE,BFALSE);} } 
BgL_tmpz00_7982 = BgL_res2530z00_3474; } 
BgL_test4480z00_7981 = 
(BgL_tmpz00_7982==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4480z00_7981)
{ /* Llib/hash.scm 288 */
 int BgL_tmpz00_7991;
BgL_tmpz00_7991 = 
(int)(5L); 
BgL_arg1425z00_1689 = 
STRUCT_REF(BgL_tablez00_54, BgL_tmpz00_7991); }  else 
{ /* Llib/hash.scm 288 */
BgL_arg1425z00_1689 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_54); } } 
{ /* Llib/hash.scm 288 */
 long BgL_xz00_3475;
{ /* Llib/hash.scm 288 */
 obj_t BgL_tmpz00_7995;
if(
INTEGERP(BgL_arg1425z00_1689))
{ /* Llib/hash.scm 288 */
BgL_tmpz00_7995 = BgL_arg1425z00_1689
; }  else 
{ 
 obj_t BgL_auxz00_7998;
BgL_auxz00_7998 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(10700L), BGl_string3911z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1425z00_1689); 
FAILURE(BgL_auxz00_7998,BFALSE,BFALSE);} 
BgL_xz00_3475 = 
(long)CINT(BgL_tmpz00_7995); } 
BgL_arg1424z00_1688 = 
(BgL_xz00_3475 & 3L); } } 
BgL_test4479z00_7980 = 
(0L==BgL_arg1424z00_1688); } 
if(BgL_test4479z00_7980)
{ /* Llib/hash.scm 288 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 288 */
return ((bool_t)1);} } } 

}



/* hashtable-open-string? */
bool_t BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(obj_t BgL_tablez00_55)
{
{ /* Llib/hash.scm 293 */
{ /* Llib/hash.scm 294 */
 bool_t BgL_test4483z00_8005;
{ /* Llib/hash.scm 294 */
 long BgL_arg1430z00_1693;
{ /* Llib/hash.scm 294 */
 obj_t BgL_arg1431z00_1694;
{ /* Llib/hash.scm 294 */
 bool_t BgL_test4484z00_8006;
{ /* Llib/hash.scm 294 */
 obj_t BgL_tmpz00_8007;
{ /* Llib/hash.scm 294 */
 obj_t BgL_res2531z00_3480;
{ /* Llib/hash.scm 294 */
 obj_t BgL_aux3032z00_5904;
BgL_aux3032z00_5904 = 
STRUCT_KEY(BgL_tablez00_55); 
if(
SYMBOLP(BgL_aux3032z00_5904))
{ /* Llib/hash.scm 294 */
BgL_res2531z00_3480 = BgL_aux3032z00_5904; }  else 
{ 
 obj_t BgL_auxz00_8011;
BgL_auxz00_8011 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11018L), BGl_string3912z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3032z00_5904); 
FAILURE(BgL_auxz00_8011,BFALSE,BFALSE);} } 
BgL_tmpz00_8007 = BgL_res2531z00_3480; } 
BgL_test4484z00_8006 = 
(BgL_tmpz00_8007==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4484z00_8006)
{ /* Llib/hash.scm 294 */
 int BgL_tmpz00_8016;
BgL_tmpz00_8016 = 
(int)(5L); 
BgL_arg1431z00_1694 = 
STRUCT_REF(BgL_tablez00_55, BgL_tmpz00_8016); }  else 
{ /* Llib/hash.scm 294 */
BgL_arg1431z00_1694 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_55); } } 
{ /* Llib/hash.scm 294 */
 long BgL_xz00_3481;
{ /* Llib/hash.scm 294 */
 obj_t BgL_tmpz00_8020;
if(
INTEGERP(BgL_arg1431z00_1694))
{ /* Llib/hash.scm 294 */
BgL_tmpz00_8020 = BgL_arg1431z00_1694
; }  else 
{ 
 obj_t BgL_auxz00_8023;
BgL_auxz00_8023 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11040L), BGl_string3912z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1431z00_1694); 
FAILURE(BgL_auxz00_8023,BFALSE,BFALSE);} 
BgL_xz00_3481 = 
(long)CINT(BgL_tmpz00_8020); } 
BgL_arg1430z00_1693 = 
(BgL_xz00_3481 & 8L); } } 
BgL_test4483z00_8005 = 
(0L==BgL_arg1430z00_1693); } 
if(BgL_test4483z00_8005)
{ /* Llib/hash.scm 294 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 294 */
return ((bool_t)1);} } } 

}



/* hashtable-weak-keys? */
BGL_EXPORTED_DEF bool_t BGl_hashtablezd2weakzd2keyszf3zf3zz__hashz00(obj_t BgL_tablez00_57)
{
{ /* Llib/hash.scm 305 */
{ /* Llib/hash.scm 306 */
 bool_t BgL_test4487z00_8030;
{ /* Llib/hash.scm 306 */
 long BgL_arg1436z00_1699;
{ /* Llib/hash.scm 306 */
 obj_t BgL_arg1437z00_1700;
{ /* Llib/hash.scm 306 */
 bool_t BgL_test4488z00_8031;
{ /* Llib/hash.scm 306 */
 obj_t BgL_tmpz00_8032;
{ /* Llib/hash.scm 306 */
 obj_t BgL_res2533z00_3492;
{ /* Llib/hash.scm 306 */
 obj_t BgL_aux3035z00_5907;
BgL_aux3035z00_5907 = 
STRUCT_KEY(BgL_tablez00_57); 
if(
SYMBOLP(BgL_aux3035z00_5907))
{ /* Llib/hash.scm 306 */
BgL_res2533z00_3492 = BgL_aux3035z00_5907; }  else 
{ 
 obj_t BgL_auxz00_8036;
BgL_auxz00_8036 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11694L), BGl_string3913z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3035z00_5907); 
FAILURE(BgL_auxz00_8036,BFALSE,BFALSE);} } 
BgL_tmpz00_8032 = BgL_res2533z00_3492; } 
BgL_test4488z00_8031 = 
(BgL_tmpz00_8032==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4488z00_8031)
{ /* Llib/hash.scm 306 */
 int BgL_tmpz00_8041;
BgL_tmpz00_8041 = 
(int)(5L); 
BgL_arg1437z00_1700 = 
STRUCT_REF(BgL_tablez00_57, BgL_tmpz00_8041); }  else 
{ /* Llib/hash.scm 306 */
BgL_arg1437z00_1700 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_57); } } 
{ /* Llib/hash.scm 306 */
 long BgL_yz00_3493;
{ /* Llib/hash.scm 306 */
 obj_t BgL_tmpz00_8045;
if(
INTEGERP(BgL_arg1437z00_1700))
{ /* Llib/hash.scm 306 */
BgL_tmpz00_8045 = BgL_arg1437z00_1700
; }  else 
{ 
 obj_t BgL_auxz00_8048;
BgL_auxz00_8048 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11716L), BGl_string3913z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1437z00_1700); 
FAILURE(BgL_auxz00_8048,BFALSE,BFALSE);} 
BgL_yz00_3493 = 
(long)CINT(BgL_tmpz00_8045); } 
BgL_arg1436z00_1699 = 
(1L & BgL_yz00_3493); } } 
BgL_test4487z00_8030 = 
(0L==BgL_arg1436z00_1699); } 
if(BgL_test4487z00_8030)
{ /* Llib/hash.scm 306 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 306 */
return ((bool_t)1);} } } 

}



/* &hashtable-weak-keys? */
obj_t BGl_z62hashtablezd2weakzd2keyszf3z91zz__hashz00(obj_t BgL_envz00_5421, obj_t BgL_tablez00_5422)
{
{ /* Llib/hash.scm 305 */
{ /* Llib/hash.scm 306 */
 bool_t BgL_tmpz00_8055;
{ /* Llib/hash.scm 306 */
 obj_t BgL_auxz00_8056;
if(
STRUCTP(BgL_tablez00_5422))
{ /* Llib/hash.scm 306 */
BgL_auxz00_8056 = BgL_tablez00_5422
; }  else 
{ 
 obj_t BgL_auxz00_8059;
BgL_auxz00_8059 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11661L), BGl_string3914z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5422); 
FAILURE(BgL_auxz00_8059,BFALSE,BFALSE);} 
BgL_tmpz00_8055 = 
BGl_hashtablezd2weakzd2keyszf3zf3zz__hashz00(BgL_auxz00_8056); } 
return 
BBOOL(BgL_tmpz00_8055);} } 

}



/* hashtable-weak-data? */
BGL_EXPORTED_DEF bool_t BGl_hashtablezd2weakzd2datazf3zf3zz__hashz00(obj_t BgL_tablez00_58)
{
{ /* Llib/hash.scm 311 */
{ /* Llib/hash.scm 312 */
 bool_t BgL_test4492z00_8065;
{ /* Llib/hash.scm 312 */
 long BgL_arg1441z00_1704;
{ /* Llib/hash.scm 312 */
 obj_t BgL_arg1442z00_1705;
{ /* Llib/hash.scm 312 */
 bool_t BgL_test4493z00_8066;
{ /* Llib/hash.scm 312 */
 obj_t BgL_tmpz00_8067;
{ /* Llib/hash.scm 312 */
 obj_t BgL_res2534z00_3498;
{ /* Llib/hash.scm 312 */
 obj_t BgL_aux3040z00_5912;
BgL_aux3040z00_5912 = 
STRUCT_KEY(BgL_tablez00_58); 
if(
SYMBOLP(BgL_aux3040z00_5912))
{ /* Llib/hash.scm 312 */
BgL_res2534z00_3498 = BgL_aux3040z00_5912; }  else 
{ 
 obj_t BgL_auxz00_8071;
BgL_auxz00_8071 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12032L), BGl_string3916z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3040z00_5912); 
FAILURE(BgL_auxz00_8071,BFALSE,BFALSE);} } 
BgL_tmpz00_8067 = BgL_res2534z00_3498; } 
BgL_test4493z00_8066 = 
(BgL_tmpz00_8067==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4493z00_8066)
{ /* Llib/hash.scm 312 */
 int BgL_tmpz00_8076;
BgL_tmpz00_8076 = 
(int)(5L); 
BgL_arg1442z00_1705 = 
STRUCT_REF(BgL_tablez00_58, BgL_tmpz00_8076); }  else 
{ /* Llib/hash.scm 312 */
BgL_arg1442z00_1705 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_58); } } 
{ /* Llib/hash.scm 312 */
 long BgL_yz00_3499;
{ /* Llib/hash.scm 312 */
 obj_t BgL_tmpz00_8080;
if(
INTEGERP(BgL_arg1442z00_1705))
{ /* Llib/hash.scm 312 */
BgL_tmpz00_8080 = BgL_arg1442z00_1705
; }  else 
{ 
 obj_t BgL_auxz00_8083;
BgL_auxz00_8083 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12054L), BGl_string3916z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1442z00_1705); 
FAILURE(BgL_auxz00_8083,BFALSE,BFALSE);} 
BgL_yz00_3499 = 
(long)CINT(BgL_tmpz00_8080); } 
BgL_arg1441z00_1704 = 
(2L & BgL_yz00_3499); } } 
BgL_test4492z00_8065 = 
(0L==BgL_arg1441z00_1704); } 
if(BgL_test4492z00_8065)
{ /* Llib/hash.scm 312 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 312 */
return ((bool_t)1);} } } 

}



/* &hashtable-weak-data? */
obj_t BGl_z62hashtablezd2weakzd2datazf3z91zz__hashz00(obj_t BgL_envz00_5423, obj_t BgL_tablez00_5424)
{
{ /* Llib/hash.scm 311 */
{ /* Llib/hash.scm 312 */
 bool_t BgL_tmpz00_8090;
{ /* Llib/hash.scm 312 */
 obj_t BgL_auxz00_8091;
if(
STRUCTP(BgL_tablez00_5424))
{ /* Llib/hash.scm 312 */
BgL_auxz00_8091 = BgL_tablez00_5424
; }  else 
{ 
 obj_t BgL_auxz00_8094;
BgL_auxz00_8094 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11999L), BGl_string3917z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5424); 
FAILURE(BgL_auxz00_8094,BFALSE,BFALSE);} 
BgL_tmpz00_8090 = 
BGl_hashtablezd2weakzd2datazf3zf3zz__hashz00(BgL_auxz00_8091); } 
return 
BBOOL(BgL_tmpz00_8090);} } 

}



/* hashtable-size */
BGL_EXPORTED_DEF long BGl_hashtablezd2siza7ez75zz__hashz00(obj_t BgL_tablez00_59)
{
{ /* Llib/hash.scm 317 */
{ /* Llib/hash.scm 318 */
 bool_t BgL_test4497z00_8100;
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8101;
{ /* Llib/hash.scm 318 */
 obj_t BgL_res2535z00_3504;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3045z00_5917;
BgL_aux3045z00_5917 = 
STRUCT_KEY(BgL_tablez00_59); 
if(
SYMBOLP(BgL_aux3045z00_5917))
{ /* Llib/hash.scm 318 */
BgL_res2535z00_3504 = BgL_aux3045z00_5917; }  else 
{ 
 obj_t BgL_auxz00_8105;
BgL_auxz00_8105 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3918z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3045z00_5917); 
FAILURE(BgL_auxz00_8105,BFALSE,BFALSE);} } 
BgL_tmpz00_8101 = BgL_res2535z00_3504; } 
BgL_test4497z00_8100 = 
(BgL_tmpz00_8101==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4497z00_8100)
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8110;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3047z00_5919;
{ /* Llib/hash.scm 318 */
 int BgL_tmpz00_8111;
BgL_tmpz00_8111 = 
(int)(0L); 
BgL_aux3047z00_5919 = 
STRUCT_REF(BgL_tablez00_59, BgL_tmpz00_8111); } 
if(
INTEGERP(BgL_aux3047z00_5919))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8110 = BgL_aux3047z00_5919
; }  else 
{ 
 obj_t BgL_auxz00_8116;
BgL_auxz00_8116 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3918z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3047z00_5919); 
FAILURE(BgL_auxz00_8116,BFALSE,BFALSE);} } 
return 
(long)CINT(BgL_tmpz00_8110);}  else 
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8121;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3048z00_5920;
BgL_aux3048z00_5920 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_59); 
if(
INTEGERP(BgL_aux3048z00_5920))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8121 = BgL_aux3048z00_5920
; }  else 
{ 
 obj_t BgL_auxz00_8125;
BgL_auxz00_8125 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3918z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3048z00_5920); 
FAILURE(BgL_auxz00_8125,BFALSE,BFALSE);} } 
return 
(long)CINT(BgL_tmpz00_8121);} } } 

}



/* &hashtable-size */
obj_t BGl_z62hashtablezd2siza7ez17zz__hashz00(obj_t BgL_envz00_5425, obj_t BgL_tablez00_5426)
{
{ /* Llib/hash.scm 317 */
{ /* Llib/hash.scm 318 */
 long BgL_tmpz00_8130;
{ /* Llib/hash.scm 318 */
 obj_t BgL_auxz00_8131;
if(
STRUCTP(BgL_tablez00_5426))
{ /* Llib/hash.scm 318 */
BgL_auxz00_8131 = BgL_tablez00_5426
; }  else 
{ 
 obj_t BgL_auxz00_8134;
BgL_auxz00_8134 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3919z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5426); 
FAILURE(BgL_auxz00_8134,BFALSE,BFALSE);} 
BgL_tmpz00_8130 = 
BGl_hashtablezd2siza7ez75zz__hashz00(BgL_auxz00_8131); } 
return 
BINT(BgL_tmpz00_8130);} } 

}



/* hashtable->vector */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2ze3vectorz31zz__hashz00(obj_t BgL_tablez00_60)
{
{ /* Llib/hash.scm 323 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_60))
{ /* Llib/hash.scm 325 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2ze3vectorz31zz__hashz00(BgL_tablez00_60);}  else 
{ /* Llib/hash.scm 325 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_60))
{ /* Llib/hash.scm 327 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2ze3vectorze3zz__weakhashz00(BgL_tablez00_60);}  else 
{ /* Llib/hash.scm 327 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2ze3vectorze3zz__hashz00(BgL_tablez00_60);} } } 

}



/* &hashtable->vector */
obj_t BGl_z62hashtablezd2ze3vectorz53zz__hashz00(obj_t BgL_envz00_5427, obj_t BgL_tablez00_5428)
{
{ /* Llib/hash.scm 323 */
{ /* Llib/hash.scm 325 */
 obj_t BgL_auxz00_8147;
if(
STRUCTP(BgL_tablez00_5428))
{ /* Llib/hash.scm 325 */
BgL_auxz00_8147 = BgL_tablez00_5428
; }  else 
{ 
 obj_t BgL_auxz00_8150;
BgL_auxz00_8150 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12636L), BGl_string3920z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5428); 
FAILURE(BgL_auxz00_8150,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2ze3vectorz31zz__hashz00(BgL_auxz00_8147);} } 

}



/* open-string-hashtable->vector */
obj_t BGl_openzd2stringzd2hashtablezd2ze3vectorz31zz__hashz00(obj_t BgL_tablez00_61)
{
{ /* Llib/hash.scm 335 */
{ /* Llib/hash.scm 336 */
 obj_t BgL_siza7eza7_1708;
{ /* Llib/hash.scm 336 */
 bool_t BgL_test4505z00_8155;
{ /* Llib/hash.scm 336 */
 obj_t BgL_tmpz00_8156;
{ /* Llib/hash.scm 336 */
 obj_t BgL_res2536z00_3508;
{ /* Llib/hash.scm 336 */
 obj_t BgL_aux3053z00_5925;
BgL_aux3053z00_5925 = 
STRUCT_KEY(BgL_tablez00_61); 
if(
SYMBOLP(BgL_aux3053z00_5925))
{ /* Llib/hash.scm 336 */
BgL_res2536z00_3508 = BgL_aux3053z00_5925; }  else 
{ 
 obj_t BgL_auxz00_8160;
BgL_auxz00_8160 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13131L), BGl_string3921z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3053z00_5925); 
FAILURE(BgL_auxz00_8160,BFALSE,BFALSE);} } 
BgL_tmpz00_8156 = BgL_res2536z00_3508; } 
BgL_test4505z00_8155 = 
(BgL_tmpz00_8156==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4505z00_8155)
{ /* Llib/hash.scm 336 */
 int BgL_tmpz00_8165;
BgL_tmpz00_8165 = 
(int)(1L); 
BgL_siza7eza7_1708 = 
STRUCT_REF(BgL_tablez00_61, BgL_tmpz00_8165); }  else 
{ /* Llib/hash.scm 336 */
BgL_siza7eza7_1708 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_61); } } 
{ /* Llib/hash.scm 336 */
 long BgL_siza7e3za7_1709;
{ /* Llib/hash.scm 337 */
 long BgL_za72za7_3509;
{ /* Llib/hash.scm 337 */
 obj_t BgL_tmpz00_8169;
if(
INTEGERP(BgL_siza7eza7_1708))
{ /* Llib/hash.scm 337 */
BgL_tmpz00_8169 = BgL_siza7eza7_1708
; }  else 
{ 
 obj_t BgL_auxz00_8172;
BgL_auxz00_8172 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13183L), BGl_string3921z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1708); 
FAILURE(BgL_auxz00_8172,BFALSE,BFALSE);} 
BgL_za72za7_3509 = 
(long)CINT(BgL_tmpz00_8169); } 
BgL_siza7e3za7_1709 = 
(3L*BgL_za72za7_3509); } 
{ /* Llib/hash.scm 337 */
 obj_t BgL_bucketsz00_1710;
{ /* Llib/hash.scm 338 */
 bool_t BgL_test4508z00_8178;
{ /* Llib/hash.scm 338 */
 obj_t BgL_tmpz00_8179;
{ /* Llib/hash.scm 338 */
 obj_t BgL_res2537z00_3513;
{ /* Llib/hash.scm 338 */
 obj_t BgL_aux3056z00_5928;
BgL_aux3056z00_5928 = 
STRUCT_KEY(BgL_tablez00_61); 
if(
SYMBOLP(BgL_aux3056z00_5928))
{ /* Llib/hash.scm 338 */
BgL_res2537z00_3513 = BgL_aux3056z00_5928; }  else 
{ 
 obj_t BgL_auxz00_8183;
BgL_auxz00_8183 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13202L), BGl_string3921z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3056z00_5928); 
FAILURE(BgL_auxz00_8183,BFALSE,BFALSE);} } 
BgL_tmpz00_8179 = BgL_res2537z00_3513; } 
BgL_test4508z00_8178 = 
(BgL_tmpz00_8179==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4508z00_8178)
{ /* Llib/hash.scm 338 */
 int BgL_tmpz00_8188;
BgL_tmpz00_8188 = 
(int)(2L); 
BgL_bucketsz00_1710 = 
STRUCT_REF(BgL_tablez00_61, BgL_tmpz00_8188); }  else 
{ /* Llib/hash.scm 338 */
BgL_bucketsz00_1710 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_61); } } 
{ /* Llib/hash.scm 338 */
 obj_t BgL_vecz00_1711;
{ /* Llib/hash.scm 339 */
 long BgL_tmpz00_8192;
{ /* Llib/hash.scm 339 */
 obj_t BgL_tmpz00_8193;
if(
INTEGERP(BgL_siza7eza7_1708))
{ /* Llib/hash.scm 339 */
BgL_tmpz00_8193 = BgL_siza7eza7_1708
; }  else 
{ 
 obj_t BgL_auxz00_8196;
BgL_auxz00_8196 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13238L), BGl_string3921z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1708); 
FAILURE(BgL_auxz00_8196,BFALSE,BFALSE);} 
BgL_tmpz00_8192 = 
(long)CINT(BgL_tmpz00_8193); } 
BgL_vecz00_1711 = 
make_vector(BgL_tmpz00_8192, BUNSPEC); } 
{ /* Llib/hash.scm 339 */

{ 
 long BgL_iz00_1713; long BgL_wz00_1714;
BgL_iz00_1713 = 0L; 
BgL_wz00_1714 = 0L; 
BgL_zc3z04anonymousza31445ze3z87_1715:
if(
(BgL_iz00_1713==BgL_siza7e3za7_1709))
{ /* Llib/hash.scm 342 */
return BgL_vecz00_1711;}  else 
{ /* Llib/hash.scm 344 */
 bool_t BgL_test4512z00_8204;
{ /* Llib/hash.scm 344 */
 bool_t BgL_test4513z00_8205;
{ /* Llib/hash.scm 344 */
 obj_t BgL_vectorz00_3517;
if(
VECTORP(BgL_bucketsz00_1710))
{ /* Llib/hash.scm 344 */
BgL_vectorz00_3517 = BgL_bucketsz00_1710; }  else 
{ 
 obj_t BgL_auxz00_8208;
BgL_auxz00_8208 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13349L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1710); 
FAILURE(BgL_auxz00_8208,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 344 */
 bool_t BgL_test4515z00_8212;
{ /* Llib/hash.scm 344 */
 long BgL_tmpz00_8213;
BgL_tmpz00_8213 = 
VECTOR_LENGTH(BgL_vectorz00_3517); 
BgL_test4515z00_8212 = 
BOUND_CHECK(BgL_iz00_1713, BgL_tmpz00_8213); } 
if(BgL_test4515z00_8212)
{ /* Llib/hash.scm 344 */
BgL_test4513z00_8205 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3517,BgL_iz00_1713))
; }  else 
{ 
 obj_t BgL_auxz00_8218;
BgL_auxz00_8218 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13337L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3517, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3517)), 
(int)(BgL_iz00_1713)); 
FAILURE(BgL_auxz00_8218,BFALSE,BFALSE);} } } 
if(BgL_test4513z00_8205)
{ /* Llib/hash.scm 344 */
 long BgL_arg1455z00_1726;
BgL_arg1455z00_1726 = 
(BgL_iz00_1713+2L); 
{ /* Llib/hash.scm 344 */
 obj_t BgL_vectorz00_3520;
if(
VECTORP(BgL_bucketsz00_1710))
{ /* Llib/hash.scm 344 */
BgL_vectorz00_3520 = BgL_bucketsz00_1710; }  else 
{ 
 obj_t BgL_auxz00_8228;
BgL_auxz00_8228 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13372L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1710); 
FAILURE(BgL_auxz00_8228,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 344 */
 bool_t BgL_test4517z00_8232;
{ /* Llib/hash.scm 344 */
 long BgL_tmpz00_8233;
BgL_tmpz00_8233 = 
VECTOR_LENGTH(BgL_vectorz00_3520); 
BgL_test4517z00_8232 = 
BOUND_CHECK(BgL_arg1455z00_1726, BgL_tmpz00_8233); } 
if(BgL_test4517z00_8232)
{ /* Llib/hash.scm 344 */
BgL_test4512z00_8204 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3520,BgL_arg1455z00_1726))
; }  else 
{ 
 obj_t BgL_auxz00_8238;
BgL_auxz00_8238 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13360L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3520, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3520)), 
(int)(BgL_arg1455z00_1726)); 
FAILURE(BgL_auxz00_8238,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 344 */
BgL_test4512z00_8204 = ((bool_t)0)
; } } 
if(BgL_test4512z00_8204)
{ /* Llib/hash.scm 344 */
{ /* Llib/hash.scm 346 */
 obj_t BgL_arg1450z00_1720;
{ /* Llib/hash.scm 346 */
 long BgL_arg1451z00_1721;
BgL_arg1451z00_1721 = 
(BgL_iz00_1713+1L); 
{ /* Llib/hash.scm 346 */
 obj_t BgL_vectorz00_3523;
if(
VECTORP(BgL_bucketsz00_1710))
{ /* Llib/hash.scm 346 */
BgL_vectorz00_3523 = BgL_bucketsz00_1710; }  else 
{ 
 obj_t BgL_auxz00_8248;
BgL_auxz00_8248 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13439L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1710); 
FAILURE(BgL_auxz00_8248,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 346 */
 bool_t BgL_test4519z00_8252;
{ /* Llib/hash.scm 346 */
 long BgL_tmpz00_8253;
BgL_tmpz00_8253 = 
VECTOR_LENGTH(BgL_vectorz00_3523); 
BgL_test4519z00_8252 = 
BOUND_CHECK(BgL_arg1451z00_1721, BgL_tmpz00_8253); } 
if(BgL_test4519z00_8252)
{ /* Llib/hash.scm 346 */
BgL_arg1450z00_1720 = 
VECTOR_REF(BgL_vectorz00_3523,BgL_arg1451z00_1721); }  else 
{ 
 obj_t BgL_auxz00_8257;
BgL_auxz00_8257 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13427L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3523, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3523)), 
(int)(BgL_arg1451z00_1721)); 
FAILURE(BgL_auxz00_8257,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 346 */
 bool_t BgL_test4520z00_8264;
{ /* Llib/hash.scm 346 */
 long BgL_tmpz00_8265;
BgL_tmpz00_8265 = 
VECTOR_LENGTH(BgL_vecz00_1711); 
BgL_test4520z00_8264 = 
BOUND_CHECK(BgL_wz00_1714, BgL_tmpz00_8265); } 
if(BgL_test4520z00_8264)
{ /* Llib/hash.scm 346 */
VECTOR_SET(BgL_vecz00_1711,BgL_wz00_1714,BgL_arg1450z00_1720); }  else 
{ 
 obj_t BgL_auxz00_8269;
BgL_auxz00_8269 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13408L), BGl_string3924z00zz__hashz00, BgL_vecz00_1711, 
(int)(
VECTOR_LENGTH(BgL_vecz00_1711)), 
(int)(BgL_wz00_1714)); 
FAILURE(BgL_auxz00_8269,BFALSE,BFALSE);} } } 
{ 
 long BgL_wz00_8278; long BgL_iz00_8276;
BgL_iz00_8276 = 
(BgL_iz00_1713+3L); 
BgL_wz00_8278 = 
(BgL_wz00_1714+1L); 
BgL_wz00_1714 = BgL_wz00_8278; 
BgL_iz00_1713 = BgL_iz00_8276; 
goto BgL_zc3z04anonymousza31445ze3z87_1715;} }  else 
{ 
 long BgL_iz00_8280;
BgL_iz00_8280 = 
(BgL_iz00_1713+3L); 
BgL_iz00_1713 = BgL_iz00_8280; 
goto BgL_zc3z04anonymousza31445ze3z87_1715;} } } } } } } } } 

}



/* plain-hashtable->vector */
obj_t BGl_plainzd2hashtablezd2ze3vectorze3zz__hashz00(obj_t BgL_tablez00_62)
{
{ /* Llib/hash.scm 353 */
{ /* Llib/hash.scm 354 */
 obj_t BgL_vecz00_1729;
{ /* Llib/hash.scm 354 */
 long BgL_arg1465z00_1749;
{ /* Llib/hash.scm 354 */
 long BgL_res2540z00_3535;
{ /* Llib/hash.scm 318 */
 bool_t BgL_test4521z00_8282;
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8283;
{ /* Llib/hash.scm 318 */
 obj_t BgL_res2539z00_3534;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3065z00_5938;
BgL_aux3065z00_5938 = 
STRUCT_KEY(BgL_tablez00_62); 
if(
SYMBOLP(BgL_aux3065z00_5938))
{ /* Llib/hash.scm 318 */
BgL_res2539z00_3534 = BgL_aux3065z00_5938; }  else 
{ 
 obj_t BgL_auxz00_8287;
BgL_auxz00_8287 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3925z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3065z00_5938); 
FAILURE(BgL_auxz00_8287,BFALSE,BFALSE);} } 
BgL_tmpz00_8283 = BgL_res2539z00_3534; } 
BgL_test4521z00_8282 = 
(BgL_tmpz00_8283==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4521z00_8282)
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8292;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3067z00_5940;
{ /* Llib/hash.scm 318 */
 int BgL_tmpz00_8293;
BgL_tmpz00_8293 = 
(int)(0L); 
BgL_aux3067z00_5940 = 
STRUCT_REF(BgL_tablez00_62, BgL_tmpz00_8293); } 
if(
INTEGERP(BgL_aux3067z00_5940))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8292 = BgL_aux3067z00_5940
; }  else 
{ 
 obj_t BgL_auxz00_8298;
BgL_auxz00_8298 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3925z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3067z00_5940); 
FAILURE(BgL_auxz00_8298,BFALSE,BFALSE);} } 
BgL_res2540z00_3535 = 
(long)CINT(BgL_tmpz00_8292); }  else 
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8303;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3068z00_5941;
BgL_aux3068z00_5941 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_62); 
if(
INTEGERP(BgL_aux3068z00_5941))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8303 = BgL_aux3068z00_5941
; }  else 
{ 
 obj_t BgL_auxz00_8307;
BgL_auxz00_8307 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3925z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3068z00_5941); 
FAILURE(BgL_auxz00_8307,BFALSE,BFALSE);} } 
BgL_res2540z00_3535 = 
(long)CINT(BgL_tmpz00_8303); } } 
BgL_arg1465z00_1749 = BgL_res2540z00_3535; } 
BgL_vecz00_1729 = 
make_vector(BgL_arg1465z00_1749, BUNSPEC); } 
{ /* Llib/hash.scm 354 */
 obj_t BgL_bucketsz00_1730;
{ /* Llib/hash.scm 355 */
 bool_t BgL_test4525z00_8313;
{ /* Llib/hash.scm 355 */
 obj_t BgL_tmpz00_8314;
{ /* Llib/hash.scm 355 */
 obj_t BgL_res2542z00_3540;
{ /* Llib/hash.scm 355 */
 obj_t BgL_aux3069z00_5943;
BgL_aux3069z00_5943 = 
STRUCT_KEY(BgL_tablez00_62); 
if(
SYMBOLP(BgL_aux3069z00_5943))
{ /* Llib/hash.scm 355 */
BgL_res2542z00_3540 = BgL_aux3069z00_5943; }  else 
{ 
 obj_t BgL_auxz00_8318;
BgL_auxz00_8318 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13856L), BGl_string3925z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3069z00_5943); 
FAILURE(BgL_auxz00_8318,BFALSE,BFALSE);} } 
BgL_tmpz00_8314 = BgL_res2542z00_3540; } 
BgL_test4525z00_8313 = 
(BgL_tmpz00_8314==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4525z00_8313)
{ /* Llib/hash.scm 355 */
 int BgL_tmpz00_8323;
BgL_tmpz00_8323 = 
(int)(2L); 
BgL_bucketsz00_1730 = 
STRUCT_REF(BgL_tablez00_62, BgL_tmpz00_8323); }  else 
{ /* Llib/hash.scm 355 */
BgL_bucketsz00_1730 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_62); } } 
{ /* Llib/hash.scm 355 */
 long BgL_bucketszd2lenzd2_1731;
{ /* Llib/hash.scm 356 */
 obj_t BgL_vectorz00_3541;
if(
VECTORP(BgL_bucketsz00_1730))
{ /* Llib/hash.scm 356 */
BgL_vectorz00_3541 = BgL_bucketsz00_1730; }  else 
{ 
 obj_t BgL_auxz00_8329;
BgL_auxz00_8329 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(13915L), BGl_string3925z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1730); 
FAILURE(BgL_auxz00_8329,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1731 = 
VECTOR_LENGTH(BgL_vectorz00_3541); } 
{ /* Llib/hash.scm 356 */

{ 
 long BgL_iz00_1733; long BgL_wz00_1734;
BgL_iz00_1733 = 0L; 
BgL_wz00_1734 = 0L; 
BgL_zc3z04anonymousza31457ze3z87_1735:
if(
(BgL_iz00_1733==BgL_bucketszd2lenzd2_1731))
{ /* Llib/hash.scm 359 */
return BgL_vecz00_1729;}  else 
{ /* Llib/hash.scm 361 */
 obj_t BgL_g1058z00_1737;
{ /* Llib/hash.scm 361 */
 obj_t BgL_vectorz00_3544;
if(
VECTORP(BgL_bucketsz00_1730))
{ /* Llib/hash.scm 361 */
BgL_vectorz00_3544 = BgL_bucketsz00_1730; }  else 
{ 
 obj_t BgL_auxz00_8338;
BgL_auxz00_8338 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14035L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1730); 
FAILURE(BgL_auxz00_8338,BFALSE,BFALSE);} 
BgL_g1058z00_1737 = 
VECTOR_REF(BgL_vectorz00_3544,BgL_iz00_1733); } 
{ 
 obj_t BgL_bucketz00_1739; long BgL_wz00_1740;
BgL_bucketz00_1739 = BgL_g1058z00_1737; 
BgL_wz00_1740 = BgL_wz00_1734; 
BgL_zc3z04anonymousza31459ze3z87_1741:
if(
NULLP(BgL_bucketz00_1739))
{ 
 long BgL_wz00_8347; long BgL_iz00_8345;
BgL_iz00_8345 = 
(BgL_iz00_1733+1L); 
BgL_wz00_8347 = BgL_wz00_1740; 
BgL_wz00_1734 = BgL_wz00_8347; 
BgL_iz00_1733 = BgL_iz00_8345; 
goto BgL_zc3z04anonymousza31457ze3z87_1735;}  else 
{ /* Llib/hash.scm 363 */
{ /* Llib/hash.scm 366 */
 obj_t BgL_arg1462z00_1744;
{ /* Llib/hash.scm 366 */
 obj_t BgL_pairz00_3547;
if(
PAIRP(BgL_bucketz00_1739))
{ /* Llib/hash.scm 366 */
BgL_pairz00_3547 = BgL_bucketz00_1739; }  else 
{ 
 obj_t BgL_auxz00_8350;
BgL_auxz00_8350 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14153L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1739); 
FAILURE(BgL_auxz00_8350,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 366 */
 obj_t BgL_pairz00_3550;
{ /* Llib/hash.scm 366 */
 obj_t BgL_aux3077z00_5951;
BgL_aux3077z00_5951 = 
CAR(BgL_pairz00_3547); 
if(
PAIRP(BgL_aux3077z00_5951))
{ /* Llib/hash.scm 366 */
BgL_pairz00_3550 = BgL_aux3077z00_5951; }  else 
{ 
 obj_t BgL_auxz00_8357;
BgL_auxz00_8357 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14147L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3077z00_5951); 
FAILURE(BgL_auxz00_8357,BFALSE,BFALSE);} } 
BgL_arg1462z00_1744 = 
CDR(BgL_pairz00_3550); } } 
VECTOR_SET(BgL_vecz00_1729,BgL_wz00_1740,BgL_arg1462z00_1744); } 
{ /* Llib/hash.scm 367 */
 obj_t BgL_arg1463z00_1745; long BgL_arg1464z00_1746;
{ /* Llib/hash.scm 367 */
 obj_t BgL_pairz00_3553;
if(
PAIRP(BgL_bucketz00_1739))
{ /* Llib/hash.scm 367 */
BgL_pairz00_3553 = BgL_bucketz00_1739; }  else 
{ 
 obj_t BgL_auxz00_8365;
BgL_auxz00_8365 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14182L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1739); 
FAILURE(BgL_auxz00_8365,BFALSE,BFALSE);} 
BgL_arg1463z00_1745 = 
CDR(BgL_pairz00_3553); } 
BgL_arg1464z00_1746 = 
(BgL_wz00_1740+1L); 
{ 
 long BgL_wz00_8372; obj_t BgL_bucketz00_8371;
BgL_bucketz00_8371 = BgL_arg1463z00_1745; 
BgL_wz00_8372 = BgL_arg1464z00_1746; 
BgL_wz00_1740 = BgL_wz00_8372; 
BgL_bucketz00_1739 = BgL_bucketz00_8371; 
goto BgL_zc3z04anonymousza31459ze3z87_1741;} } } } } } } } } } } 

}



/* hashtable->list */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2ze3listz31zz__hashz00(obj_t BgL_tablez00_63)
{
{ /* Llib/hash.scm 372 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_63))
{ /* Llib/hash.scm 374 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2ze3listz31zz__hashz00(BgL_tablez00_63);}  else 
{ /* Llib/hash.scm 374 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_63))
{ /* Llib/hash.scm 376 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2ze3listze3zz__weakhashz00(BgL_tablez00_63);}  else 
{ /* Llib/hash.scm 376 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2ze3listze3zz__hashz00(BgL_tablez00_63);} } } 

}



/* &hashtable->list */
obj_t BGl_z62hashtablezd2ze3listz53zz__hashz00(obj_t BgL_envz00_5429, obj_t BgL_tablez00_5430)
{
{ /* Llib/hash.scm 372 */
{ /* Llib/hash.scm 374 */
 obj_t BgL_auxz00_8380;
if(
STRUCTP(BgL_tablez00_5430))
{ /* Llib/hash.scm 374 */
BgL_auxz00_8380 = BgL_tablez00_5430
; }  else 
{ 
 obj_t BgL_auxz00_8383;
BgL_auxz00_8383 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14486L), BGl_string3928z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5430); 
FAILURE(BgL_auxz00_8383,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2ze3listz31zz__hashz00(BgL_auxz00_8380);} } 

}



/* open-string-hashtable->list */
obj_t BGl_openzd2stringzd2hashtablezd2ze3listz31zz__hashz00(obj_t BgL_tablez00_64)
{
{ /* Llib/hash.scm 384 */
{ /* Llib/hash.scm 385 */
 obj_t BgL_siza7eza7_1753;
{ /* Llib/hash.scm 385 */
 bool_t BgL_test4537z00_8388;
{ /* Llib/hash.scm 385 */
 obj_t BgL_tmpz00_8389;
{ /* Llib/hash.scm 385 */
 obj_t BgL_res2543z00_3558;
{ /* Llib/hash.scm 385 */
 obj_t BgL_aux3083z00_5957;
BgL_aux3083z00_5957 = 
STRUCT_KEY(BgL_tablez00_64); 
if(
SYMBOLP(BgL_aux3083z00_5957))
{ /* Llib/hash.scm 385 */
BgL_res2543z00_3558 = BgL_aux3083z00_5957; }  else 
{ 
 obj_t BgL_auxz00_8393;
BgL_auxz00_8393 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(14973L), BGl_string3929z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3083z00_5957); 
FAILURE(BgL_auxz00_8393,BFALSE,BFALSE);} } 
BgL_tmpz00_8389 = BgL_res2543z00_3558; } 
BgL_test4537z00_8388 = 
(BgL_tmpz00_8389==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4537z00_8388)
{ /* Llib/hash.scm 385 */
 int BgL_tmpz00_8398;
BgL_tmpz00_8398 = 
(int)(1L); 
BgL_siza7eza7_1753 = 
STRUCT_REF(BgL_tablez00_64, BgL_tmpz00_8398); }  else 
{ /* Llib/hash.scm 385 */
BgL_siza7eza7_1753 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_64); } } 
{ /* Llib/hash.scm 385 */
 long BgL_siza7e3za7_1754;
{ /* Llib/hash.scm 386 */
 long BgL_za72za7_3559;
{ /* Llib/hash.scm 386 */
 obj_t BgL_tmpz00_8402;
if(
INTEGERP(BgL_siza7eza7_1753))
{ /* Llib/hash.scm 386 */
BgL_tmpz00_8402 = BgL_siza7eza7_1753
; }  else 
{ 
 obj_t BgL_auxz00_8405;
BgL_auxz00_8405 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15025L), BGl_string3929z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1753); 
FAILURE(BgL_auxz00_8405,BFALSE,BFALSE);} 
BgL_za72za7_3559 = 
(long)CINT(BgL_tmpz00_8402); } 
BgL_siza7e3za7_1754 = 
(3L*BgL_za72za7_3559); } 
{ /* Llib/hash.scm 386 */
 obj_t BgL_bucketsz00_1755;
{ /* Llib/hash.scm 387 */
 bool_t BgL_test4540z00_8411;
{ /* Llib/hash.scm 387 */
 obj_t BgL_tmpz00_8412;
{ /* Llib/hash.scm 387 */
 obj_t BgL_res2544z00_3563;
{ /* Llib/hash.scm 387 */
 obj_t BgL_aux3086z00_5960;
BgL_aux3086z00_5960 = 
STRUCT_KEY(BgL_tablez00_64); 
if(
SYMBOLP(BgL_aux3086z00_5960))
{ /* Llib/hash.scm 387 */
BgL_res2544z00_3563 = BgL_aux3086z00_5960; }  else 
{ 
 obj_t BgL_auxz00_8416;
BgL_auxz00_8416 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15044L), BGl_string3929z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3086z00_5960); 
FAILURE(BgL_auxz00_8416,BFALSE,BFALSE);} } 
BgL_tmpz00_8412 = BgL_res2544z00_3563; } 
BgL_test4540z00_8411 = 
(BgL_tmpz00_8412==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4540z00_8411)
{ /* Llib/hash.scm 387 */
 int BgL_tmpz00_8421;
BgL_tmpz00_8421 = 
(int)(2L); 
BgL_bucketsz00_1755 = 
STRUCT_REF(BgL_tablez00_64, BgL_tmpz00_8421); }  else 
{ /* Llib/hash.scm 387 */
BgL_bucketsz00_1755 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_64); } } 
{ /* Llib/hash.scm 387 */

{ 
 long BgL_iz00_1758; obj_t BgL_resz00_1759;
BgL_iz00_1758 = 0L; 
BgL_resz00_1759 = BNIL; 
BgL_zc3z04anonymousza31471ze3z87_1760:
if(
(BgL_iz00_1758==BgL_siza7e3za7_1754))
{ /* Llib/hash.scm 390 */
return BgL_resz00_1759;}  else 
{ /* Llib/hash.scm 392 */
 bool_t BgL_test4543z00_8427;
{ /* Llib/hash.scm 392 */
 bool_t BgL_test4544z00_8428;
{ /* Llib/hash.scm 392 */
 obj_t BgL_vectorz00_3566;
if(
VECTORP(BgL_bucketsz00_1755))
{ /* Llib/hash.scm 392 */
BgL_vectorz00_3566 = BgL_bucketsz00_1755; }  else 
{ 
 obj_t BgL_auxz00_8431;
BgL_auxz00_8431 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15167L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1755); 
FAILURE(BgL_auxz00_8431,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 392 */
 bool_t BgL_test4546z00_8435;
{ /* Llib/hash.scm 392 */
 long BgL_tmpz00_8436;
BgL_tmpz00_8436 = 
VECTOR_LENGTH(BgL_vectorz00_3566); 
BgL_test4546z00_8435 = 
BOUND_CHECK(BgL_iz00_1758, BgL_tmpz00_8436); } 
if(BgL_test4546z00_8435)
{ /* Llib/hash.scm 392 */
BgL_test4544z00_8428 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3566,BgL_iz00_1758))
; }  else 
{ 
 obj_t BgL_auxz00_8441;
BgL_auxz00_8441 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15155L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3566, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3566)), 
(int)(BgL_iz00_1758)); 
FAILURE(BgL_auxz00_8441,BFALSE,BFALSE);} } } 
if(BgL_test4544z00_8428)
{ /* Llib/hash.scm 392 */
 long BgL_arg1481z00_1771;
BgL_arg1481z00_1771 = 
(BgL_iz00_1758+2L); 
{ /* Llib/hash.scm 392 */
 obj_t BgL_vectorz00_3569;
if(
VECTORP(BgL_bucketsz00_1755))
{ /* Llib/hash.scm 392 */
BgL_vectorz00_3569 = BgL_bucketsz00_1755; }  else 
{ 
 obj_t BgL_auxz00_8451;
BgL_auxz00_8451 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15190L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1755); 
FAILURE(BgL_auxz00_8451,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 392 */
 bool_t BgL_test4548z00_8455;
{ /* Llib/hash.scm 392 */
 long BgL_tmpz00_8456;
BgL_tmpz00_8456 = 
VECTOR_LENGTH(BgL_vectorz00_3569); 
BgL_test4548z00_8455 = 
BOUND_CHECK(BgL_arg1481z00_1771, BgL_tmpz00_8456); } 
if(BgL_test4548z00_8455)
{ /* Llib/hash.scm 392 */
BgL_test4543z00_8427 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3569,BgL_arg1481z00_1771))
; }  else 
{ 
 obj_t BgL_auxz00_8461;
BgL_auxz00_8461 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15178L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3569, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3569)), 
(int)(BgL_arg1481z00_1771)); 
FAILURE(BgL_auxz00_8461,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 392 */
BgL_test4543z00_8427 = ((bool_t)0)
; } } 
if(BgL_test4543z00_8427)
{ /* Llib/hash.scm 393 */
 long BgL_arg1476z00_1765; obj_t BgL_arg1477z00_1766;
BgL_arg1476z00_1765 = 
(BgL_iz00_1758+3L); 
{ /* Llib/hash.scm 393 */
 obj_t BgL_arg1478z00_1767;
{ /* Llib/hash.scm 393 */
 long BgL_arg1479z00_1768;
BgL_arg1479z00_1768 = 
(BgL_iz00_1758+1L); 
{ /* Llib/hash.scm 393 */
 obj_t BgL_vectorz00_3573;
if(
VECTORP(BgL_bucketsz00_1755))
{ /* Llib/hash.scm 393 */
BgL_vectorz00_3573 = BgL_bucketsz00_1755; }  else 
{ 
 obj_t BgL_auxz00_8472;
BgL_auxz00_8472 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15247L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1755); 
FAILURE(BgL_auxz00_8472,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 393 */
 bool_t BgL_test4550z00_8476;
{ /* Llib/hash.scm 393 */
 long BgL_tmpz00_8477;
BgL_tmpz00_8477 = 
VECTOR_LENGTH(BgL_vectorz00_3573); 
BgL_test4550z00_8476 = 
BOUND_CHECK(BgL_arg1479z00_1768, BgL_tmpz00_8477); } 
if(BgL_test4550z00_8476)
{ /* Llib/hash.scm 393 */
BgL_arg1478z00_1767 = 
VECTOR_REF(BgL_vectorz00_3573,BgL_arg1479z00_1768); }  else 
{ 
 obj_t BgL_auxz00_8481;
BgL_auxz00_8481 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15235L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3573, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3573)), 
(int)(BgL_arg1479z00_1768)); 
FAILURE(BgL_auxz00_8481,BFALSE,BFALSE);} } } } 
BgL_arg1477z00_1766 = 
MAKE_YOUNG_PAIR(BgL_arg1478z00_1767, BgL_resz00_1759); } 
{ 
 obj_t BgL_resz00_8490; long BgL_iz00_8489;
BgL_iz00_8489 = BgL_arg1476z00_1765; 
BgL_resz00_8490 = BgL_arg1477z00_1766; 
BgL_resz00_1759 = BgL_resz00_8490; 
BgL_iz00_1758 = BgL_iz00_8489; 
goto BgL_zc3z04anonymousza31471ze3z87_1760;} }  else 
{ 
 long BgL_iz00_8491;
BgL_iz00_8491 = 
(BgL_iz00_1758+3L); 
BgL_iz00_1758 = BgL_iz00_8491; 
goto BgL_zc3z04anonymousza31471ze3z87_1760;} } } } } } } } 

}



/* plain-hashtable->list */
obj_t BGl_plainzd2hashtablezd2ze3listze3zz__hashz00(obj_t BgL_tablez00_65)
{
{ /* Llib/hash.scm 399 */
{ /* Llib/hash.scm 400 */
 obj_t BgL_vecz00_1773;
{ /* Llib/hash.scm 400 */
 long BgL_arg1492z00_1794;
{ /* Llib/hash.scm 400 */
 long BgL_res2546z00_3581;
{ /* Llib/hash.scm 318 */
 bool_t BgL_test4551z00_8493;
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8494;
{ /* Llib/hash.scm 318 */
 obj_t BgL_res2545z00_3580;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3094z00_5968;
BgL_aux3094z00_5968 = 
STRUCT_KEY(BgL_tablez00_65); 
if(
SYMBOLP(BgL_aux3094z00_5968))
{ /* Llib/hash.scm 318 */
BgL_res2545z00_3580 = BgL_aux3094z00_5968; }  else 
{ 
 obj_t BgL_auxz00_8498;
BgL_auxz00_8498 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3930z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3094z00_5968); 
FAILURE(BgL_auxz00_8498,BFALSE,BFALSE);} } 
BgL_tmpz00_8494 = BgL_res2545z00_3580; } 
BgL_test4551z00_8493 = 
(BgL_tmpz00_8494==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4551z00_8493)
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8503;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3096z00_5970;
{ /* Llib/hash.scm 318 */
 int BgL_tmpz00_8504;
BgL_tmpz00_8504 = 
(int)(0L); 
BgL_aux3096z00_5970 = 
STRUCT_REF(BgL_tablez00_65, BgL_tmpz00_8504); } 
if(
INTEGERP(BgL_aux3096z00_5970))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8503 = BgL_aux3096z00_5970
; }  else 
{ 
 obj_t BgL_auxz00_8509;
BgL_auxz00_8509 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3930z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3096z00_5970); 
FAILURE(BgL_auxz00_8509,BFALSE,BFALSE);} } 
BgL_res2546z00_3581 = 
(long)CINT(BgL_tmpz00_8503); }  else 
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8514;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3097z00_5971;
BgL_aux3097z00_5971 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_65); 
if(
INTEGERP(BgL_aux3097z00_5971))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8514 = BgL_aux3097z00_5971
; }  else 
{ 
 obj_t BgL_auxz00_8518;
BgL_auxz00_8518 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3930z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3097z00_5971); 
FAILURE(BgL_auxz00_8518,BFALSE,BFALSE);} } 
BgL_res2546z00_3581 = 
(long)CINT(BgL_tmpz00_8514); } } 
BgL_arg1492z00_1794 = BgL_res2546z00_3581; } 
BgL_vecz00_1773 = 
make_vector(BgL_arg1492z00_1794, BUNSPEC); } 
{ /* Llib/hash.scm 400 */
 obj_t BgL_bucketsz00_1774;
{ /* Llib/hash.scm 401 */
 bool_t BgL_test4556z00_8524;
{ /* Llib/hash.scm 401 */
 obj_t BgL_tmpz00_8525;
{ /* Llib/hash.scm 401 */
 obj_t BgL_res2548z00_3586;
{ /* Llib/hash.scm 401 */
 obj_t BgL_aux3098z00_5973;
BgL_aux3098z00_5973 = 
STRUCT_KEY(BgL_tablez00_65); 
if(
SYMBOLP(BgL_aux3098z00_5973))
{ /* Llib/hash.scm 401 */
BgL_res2548z00_3586 = BgL_aux3098z00_5973; }  else 
{ 
 obj_t BgL_auxz00_8529;
BgL_auxz00_8529 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15635L), BGl_string3930z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3098z00_5973); 
FAILURE(BgL_auxz00_8529,BFALSE,BFALSE);} } 
BgL_tmpz00_8525 = BgL_res2548z00_3586; } 
BgL_test4556z00_8524 = 
(BgL_tmpz00_8525==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4556z00_8524)
{ /* Llib/hash.scm 401 */
 int BgL_tmpz00_8534;
BgL_tmpz00_8534 = 
(int)(2L); 
BgL_bucketsz00_1774 = 
STRUCT_REF(BgL_tablez00_65, BgL_tmpz00_8534); }  else 
{ /* Llib/hash.scm 401 */
BgL_bucketsz00_1774 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_65); } } 
{ /* Llib/hash.scm 401 */
 long BgL_bucketszd2lenzd2_1775;
{ /* Llib/hash.scm 402 */
 obj_t BgL_vectorz00_3587;
if(
VECTORP(BgL_bucketsz00_1774))
{ /* Llib/hash.scm 402 */
BgL_vectorz00_3587 = BgL_bucketsz00_1774; }  else 
{ 
 obj_t BgL_auxz00_8540;
BgL_auxz00_8540 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15694L), BGl_string3930z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1774); 
FAILURE(BgL_auxz00_8540,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1775 = 
VECTOR_LENGTH(BgL_vectorz00_3587); } 
{ /* Llib/hash.scm 402 */

{ 
 long BgL_iz00_1778; obj_t BgL_resz00_1779;
BgL_iz00_1778 = 0L; 
BgL_resz00_1779 = BNIL; 
BgL_zc3z04anonymousza31482ze3z87_1780:
if(
(BgL_iz00_1778==BgL_bucketszd2lenzd2_1775))
{ /* Llib/hash.scm 405 */
return BgL_resz00_1779;}  else 
{ /* Llib/hash.scm 407 */
 obj_t BgL_g1061z00_1782;
{ /* Llib/hash.scm 407 */
 obj_t BgL_vectorz00_3590;
if(
VECTORP(BgL_bucketsz00_1774))
{ /* Llib/hash.scm 407 */
BgL_vectorz00_3590 = BgL_bucketsz00_1774; }  else 
{ 
 obj_t BgL_auxz00_8549;
BgL_auxz00_8549 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15818L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1774); 
FAILURE(BgL_auxz00_8549,BFALSE,BFALSE);} 
BgL_g1061z00_1782 = 
VECTOR_REF(BgL_vectorz00_3590,BgL_iz00_1778); } 
{ 
 obj_t BgL_bucketz00_1784; obj_t BgL_resz00_1785;
BgL_bucketz00_1784 = BgL_g1061z00_1782; 
BgL_resz00_1785 = BgL_resz00_1779; 
BgL_zc3z04anonymousza31484ze3z87_1786:
if(
NULLP(BgL_bucketz00_1784))
{ 
 obj_t BgL_resz00_8558; long BgL_iz00_8556;
BgL_iz00_8556 = 
(BgL_iz00_1778+1L); 
BgL_resz00_8558 = BgL_resz00_1785; 
BgL_resz00_1779 = BgL_resz00_8558; 
BgL_iz00_1778 = BgL_iz00_8556; 
goto BgL_zc3z04anonymousza31482ze3z87_1780;}  else 
{ /* Llib/hash.scm 411 */
 obj_t BgL_arg1488z00_1789; obj_t BgL_arg1489z00_1790;
{ /* Llib/hash.scm 411 */
 obj_t BgL_pairz00_3593;
if(
PAIRP(BgL_bucketz00_1784))
{ /* Llib/hash.scm 411 */
BgL_pairz00_3593 = BgL_bucketz00_1784; }  else 
{ 
 obj_t BgL_auxz00_8561;
BgL_auxz00_8561 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15909L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1784); 
FAILURE(BgL_auxz00_8561,BFALSE,BFALSE);} 
BgL_arg1488z00_1789 = 
CDR(BgL_pairz00_3593); } 
{ /* Llib/hash.scm 411 */
 obj_t BgL_arg1491z00_1791;
{ /* Llib/hash.scm 411 */
 obj_t BgL_pairz00_3594;
if(
PAIRP(BgL_bucketz00_1784))
{ /* Llib/hash.scm 411 */
BgL_pairz00_3594 = BgL_bucketz00_1784; }  else 
{ 
 obj_t BgL_auxz00_8568;
BgL_auxz00_8568 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15929L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1784); 
FAILURE(BgL_auxz00_8568,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 411 */
 obj_t BgL_pairz00_3597;
{ /* Llib/hash.scm 411 */
 obj_t BgL_aux3108z00_5983;
BgL_aux3108z00_5983 = 
CAR(BgL_pairz00_3594); 
if(
PAIRP(BgL_aux3108z00_5983))
{ /* Llib/hash.scm 411 */
BgL_pairz00_3597 = BgL_aux3108z00_5983; }  else 
{ 
 obj_t BgL_auxz00_8575;
BgL_auxz00_8575 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(15923L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3108z00_5983); 
FAILURE(BgL_auxz00_8575,BFALSE,BFALSE);} } 
BgL_arg1491z00_1791 = 
CDR(BgL_pairz00_3597); } } 
BgL_arg1489z00_1790 = 
MAKE_YOUNG_PAIR(BgL_arg1491z00_1791, BgL_resz00_1785); } 
{ 
 obj_t BgL_resz00_8582; obj_t BgL_bucketz00_8581;
BgL_bucketz00_8581 = BgL_arg1488z00_1789; 
BgL_resz00_8582 = BgL_arg1489z00_1790; 
BgL_resz00_1785 = BgL_resz00_8582; 
BgL_bucketz00_1784 = BgL_bucketz00_8581; 
goto BgL_zc3z04anonymousza31484ze3z87_1786;} } } } } } } } } } 

}



/* hashtable-key-list */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2keyzd2listz00zz__hashz00(obj_t BgL_tablez00_66)
{
{ /* Llib/hash.scm 416 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_66))
{ /* Llib/hash.scm 418 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2keyzd2listz00zz__hashz00(BgL_tablez00_66);}  else 
{ /* Llib/hash.scm 418 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_66))
{ /* Llib/hash.scm 420 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2keyzd2listzd2zz__weakhashz00(BgL_tablez00_66);}  else 
{ /* Llib/hash.scm 420 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2keyzd2listzd2zz__hashz00(BgL_tablez00_66);} } } 

}



/* &hashtable-key-list */
obj_t BGl_z62hashtablezd2keyzd2listz62zz__hashz00(obj_t BgL_envz00_5431, obj_t BgL_tablez00_5432)
{
{ /* Llib/hash.scm 416 */
{ /* Llib/hash.scm 418 */
 obj_t BgL_auxz00_8590;
if(
STRUCTP(BgL_tablez00_5432))
{ /* Llib/hash.scm 418 */
BgL_auxz00_8590 = BgL_tablez00_5432
; }  else 
{ 
 obj_t BgL_auxz00_8593;
BgL_auxz00_8593 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16230L), BGl_string3931z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5432); 
FAILURE(BgL_auxz00_8593,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2keyzd2listz00zz__hashz00(BgL_auxz00_8590);} } 

}



/* open-string-hashtable-key-list */
obj_t BGl_openzd2stringzd2hashtablezd2keyzd2listz00zz__hashz00(obj_t BgL_tablez00_67)
{
{ /* Llib/hash.scm 428 */
{ /* Llib/hash.scm 429 */
 obj_t BgL_siza7eza7_1798;
{ /* Llib/hash.scm 429 */
 bool_t BgL_test4568z00_8598;
{ /* Llib/hash.scm 429 */
 obj_t BgL_tmpz00_8599;
{ /* Llib/hash.scm 429 */
 obj_t BgL_res2549z00_3601;
{ /* Llib/hash.scm 429 */
 obj_t BgL_aux3112z00_5987;
BgL_aux3112z00_5987 = 
STRUCT_KEY(BgL_tablez00_67); 
if(
SYMBOLP(BgL_aux3112z00_5987))
{ /* Llib/hash.scm 429 */
BgL_res2549z00_3601 = BgL_aux3112z00_5987; }  else 
{ 
 obj_t BgL_auxz00_8603;
BgL_auxz00_8603 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16729L), BGl_string3932z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3112z00_5987); 
FAILURE(BgL_auxz00_8603,BFALSE,BFALSE);} } 
BgL_tmpz00_8599 = BgL_res2549z00_3601; } 
BgL_test4568z00_8598 = 
(BgL_tmpz00_8599==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4568z00_8598)
{ /* Llib/hash.scm 429 */
 int BgL_tmpz00_8608;
BgL_tmpz00_8608 = 
(int)(1L); 
BgL_siza7eza7_1798 = 
STRUCT_REF(BgL_tablez00_67, BgL_tmpz00_8608); }  else 
{ /* Llib/hash.scm 429 */
BgL_siza7eza7_1798 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_67); } } 
{ /* Llib/hash.scm 429 */
 long BgL_siza7e3za7_1799;
{ /* Llib/hash.scm 430 */
 long BgL_za72za7_3602;
{ /* Llib/hash.scm 430 */
 obj_t BgL_tmpz00_8612;
if(
INTEGERP(BgL_siza7eza7_1798))
{ /* Llib/hash.scm 430 */
BgL_tmpz00_8612 = BgL_siza7eza7_1798
; }  else 
{ 
 obj_t BgL_auxz00_8615;
BgL_auxz00_8615 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16781L), BGl_string3932z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1798); 
FAILURE(BgL_auxz00_8615,BFALSE,BFALSE);} 
BgL_za72za7_3602 = 
(long)CINT(BgL_tmpz00_8612); } 
BgL_siza7e3za7_1799 = 
(3L*BgL_za72za7_3602); } 
{ /* Llib/hash.scm 430 */
 obj_t BgL_bucketsz00_1800;
{ /* Llib/hash.scm 431 */
 bool_t BgL_test4571z00_8621;
{ /* Llib/hash.scm 431 */
 obj_t BgL_tmpz00_8622;
{ /* Llib/hash.scm 431 */
 obj_t BgL_res2550z00_3606;
{ /* Llib/hash.scm 431 */
 obj_t BgL_aux3115z00_5990;
BgL_aux3115z00_5990 = 
STRUCT_KEY(BgL_tablez00_67); 
if(
SYMBOLP(BgL_aux3115z00_5990))
{ /* Llib/hash.scm 431 */
BgL_res2550z00_3606 = BgL_aux3115z00_5990; }  else 
{ 
 obj_t BgL_auxz00_8626;
BgL_auxz00_8626 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16800L), BGl_string3932z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3115z00_5990); 
FAILURE(BgL_auxz00_8626,BFALSE,BFALSE);} } 
BgL_tmpz00_8622 = BgL_res2550z00_3606; } 
BgL_test4571z00_8621 = 
(BgL_tmpz00_8622==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4571z00_8621)
{ /* Llib/hash.scm 431 */
 int BgL_tmpz00_8631;
BgL_tmpz00_8631 = 
(int)(2L); 
BgL_bucketsz00_1800 = 
STRUCT_REF(BgL_tablez00_67, BgL_tmpz00_8631); }  else 
{ /* Llib/hash.scm 431 */
BgL_bucketsz00_1800 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_67); } } 
{ /* Llib/hash.scm 431 */

{ 
 long BgL_iz00_1803; obj_t BgL_resz00_1804;
BgL_iz00_1803 = 0L; 
BgL_resz00_1804 = BNIL; 
BgL_zc3z04anonymousza31496ze3z87_1805:
if(
(BgL_iz00_1803==BgL_siza7e3za7_1799))
{ /* Llib/hash.scm 434 */
return BgL_resz00_1804;}  else 
{ /* Llib/hash.scm 436 */
 bool_t BgL_test4574z00_8637;
{ /* Llib/hash.scm 436 */
 bool_t BgL_test4575z00_8638;
{ /* Llib/hash.scm 436 */
 obj_t BgL_vectorz00_3609;
if(
VECTORP(BgL_bucketsz00_1800))
{ /* Llib/hash.scm 436 */
BgL_vectorz00_3609 = BgL_bucketsz00_1800; }  else 
{ 
 obj_t BgL_auxz00_8641;
BgL_auxz00_8641 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16923L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1800); 
FAILURE(BgL_auxz00_8641,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 436 */
 bool_t BgL_test4577z00_8645;
{ /* Llib/hash.scm 436 */
 long BgL_tmpz00_8646;
BgL_tmpz00_8646 = 
VECTOR_LENGTH(BgL_vectorz00_3609); 
BgL_test4577z00_8645 = 
BOUND_CHECK(BgL_iz00_1803, BgL_tmpz00_8646); } 
if(BgL_test4577z00_8645)
{ /* Llib/hash.scm 436 */
BgL_test4575z00_8638 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3609,BgL_iz00_1803))
; }  else 
{ 
 obj_t BgL_auxz00_8651;
BgL_auxz00_8651 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16911L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3609, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3609)), 
(int)(BgL_iz00_1803)); 
FAILURE(BgL_auxz00_8651,BFALSE,BFALSE);} } } 
if(BgL_test4575z00_8638)
{ /* Llib/hash.scm 436 */
 long BgL_arg1505z00_1815;
BgL_arg1505z00_1815 = 
(BgL_iz00_1803+2L); 
{ /* Llib/hash.scm 436 */
 obj_t BgL_vectorz00_3612;
if(
VECTORP(BgL_bucketsz00_1800))
{ /* Llib/hash.scm 436 */
BgL_vectorz00_3612 = BgL_bucketsz00_1800; }  else 
{ 
 obj_t BgL_auxz00_8661;
BgL_auxz00_8661 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16946L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1800); 
FAILURE(BgL_auxz00_8661,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 436 */
 bool_t BgL_test4579z00_8665;
{ /* Llib/hash.scm 436 */
 long BgL_tmpz00_8666;
BgL_tmpz00_8666 = 
VECTOR_LENGTH(BgL_vectorz00_3612); 
BgL_test4579z00_8665 = 
BOUND_CHECK(BgL_arg1505z00_1815, BgL_tmpz00_8666); } 
if(BgL_test4579z00_8665)
{ /* Llib/hash.scm 436 */
BgL_test4574z00_8637 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3612,BgL_arg1505z00_1815))
; }  else 
{ 
 obj_t BgL_auxz00_8671;
BgL_auxz00_8671 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16934L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3612, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3612)), 
(int)(BgL_arg1505z00_1815)); 
FAILURE(BgL_auxz00_8671,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 436 */
BgL_test4574z00_8637 = ((bool_t)0)
; } } 
if(BgL_test4574z00_8637)
{ /* Llib/hash.scm 437 */
 long BgL_arg1501z00_1810; obj_t BgL_arg1502z00_1811;
BgL_arg1501z00_1810 = 
(BgL_iz00_1803+3L); 
{ /* Llib/hash.scm 437 */
 obj_t BgL_arg1503z00_1812;
{ /* Llib/hash.scm 437 */
 obj_t BgL_vectorz00_3615;
if(
VECTORP(BgL_bucketsz00_1800))
{ /* Llib/hash.scm 437 */
BgL_vectorz00_3615 = BgL_bucketsz00_1800; }  else 
{ 
 obj_t BgL_auxz00_8681;
BgL_auxz00_8681 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17003L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1800); 
FAILURE(BgL_auxz00_8681,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 437 */
 bool_t BgL_test4581z00_8685;
{ /* Llib/hash.scm 437 */
 long BgL_tmpz00_8686;
BgL_tmpz00_8686 = 
VECTOR_LENGTH(BgL_vectorz00_3615); 
BgL_test4581z00_8685 = 
BOUND_CHECK(BgL_iz00_1803, BgL_tmpz00_8686); } 
if(BgL_test4581z00_8685)
{ /* Llib/hash.scm 437 */
BgL_arg1503z00_1812 = 
VECTOR_REF(BgL_vectorz00_3615,BgL_iz00_1803); }  else 
{ 
 obj_t BgL_auxz00_8690;
BgL_auxz00_8690 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(16991L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3615, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3615)), 
(int)(BgL_iz00_1803)); 
FAILURE(BgL_auxz00_8690,BFALSE,BFALSE);} } } 
BgL_arg1502z00_1811 = 
MAKE_YOUNG_PAIR(BgL_arg1503z00_1812, BgL_resz00_1804); } 
{ 
 obj_t BgL_resz00_8699; long BgL_iz00_8698;
BgL_iz00_8698 = BgL_arg1501z00_1810; 
BgL_resz00_8699 = BgL_arg1502z00_1811; 
BgL_resz00_1804 = BgL_resz00_8699; 
BgL_iz00_1803 = BgL_iz00_8698; 
goto BgL_zc3z04anonymousza31496ze3z87_1805;} }  else 
{ 
 long BgL_iz00_8700;
BgL_iz00_8700 = 
(BgL_iz00_1803+3L); 
BgL_iz00_1803 = BgL_iz00_8700; 
goto BgL_zc3z04anonymousza31496ze3z87_1805;} } } } } } } } 

}



/* plain-hashtable-key-list */
obj_t BGl_plainzd2hashtablezd2keyzd2listzd2zz__hashz00(obj_t BgL_tablez00_68)
{
{ /* Llib/hash.scm 443 */
{ /* Llib/hash.scm 444 */
 obj_t BgL_vecz00_1817;
{ /* Llib/hash.scm 444 */
 long BgL_arg1519z00_1838;
{ /* Llib/hash.scm 444 */
 long BgL_res2552z00_3623;
{ /* Llib/hash.scm 318 */
 bool_t BgL_test4582z00_8702;
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8703;
{ /* Llib/hash.scm 318 */
 obj_t BgL_res2551z00_3622;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3123z00_5998;
BgL_aux3123z00_5998 = 
STRUCT_KEY(BgL_tablez00_68); 
if(
SYMBOLP(BgL_aux3123z00_5998))
{ /* Llib/hash.scm 318 */
BgL_res2551z00_3622 = BgL_aux3123z00_5998; }  else 
{ 
 obj_t BgL_auxz00_8707;
BgL_auxz00_8707 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3933z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3123z00_5998); 
FAILURE(BgL_auxz00_8707,BFALSE,BFALSE);} } 
BgL_tmpz00_8703 = BgL_res2551z00_3622; } 
BgL_test4582z00_8702 = 
(BgL_tmpz00_8703==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4582z00_8702)
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8712;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3125z00_6000;
{ /* Llib/hash.scm 318 */
 int BgL_tmpz00_8713;
BgL_tmpz00_8713 = 
(int)(0L); 
BgL_aux3125z00_6000 = 
STRUCT_REF(BgL_tablez00_68, BgL_tmpz00_8713); } 
if(
INTEGERP(BgL_aux3125z00_6000))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8712 = BgL_aux3125z00_6000
; }  else 
{ 
 obj_t BgL_auxz00_8718;
BgL_auxz00_8718 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3933z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3125z00_6000); 
FAILURE(BgL_auxz00_8718,BFALSE,BFALSE);} } 
BgL_res2552z00_3623 = 
(long)CINT(BgL_tmpz00_8712); }  else 
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_8723;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3126z00_6001;
BgL_aux3126z00_6001 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_68); 
if(
INTEGERP(BgL_aux3126z00_6001))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_8723 = BgL_aux3126z00_6001
; }  else 
{ 
 obj_t BgL_auxz00_8727;
BgL_auxz00_8727 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string3933z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3126z00_6001); 
FAILURE(BgL_auxz00_8727,BFALSE,BFALSE);} } 
BgL_res2552z00_3623 = 
(long)CINT(BgL_tmpz00_8723); } } 
BgL_arg1519z00_1838 = BgL_res2552z00_3623; } 
BgL_vecz00_1817 = 
make_vector(BgL_arg1519z00_1838, BUNSPEC); } 
{ /* Llib/hash.scm 444 */
 obj_t BgL_bucketsz00_1818;
{ /* Llib/hash.scm 445 */
 bool_t BgL_test4586z00_8733;
{ /* Llib/hash.scm 445 */
 obj_t BgL_tmpz00_8734;
{ /* Llib/hash.scm 445 */
 obj_t BgL_res2554z00_3628;
{ /* Llib/hash.scm 445 */
 obj_t BgL_aux3127z00_6003;
BgL_aux3127z00_6003 = 
STRUCT_KEY(BgL_tablez00_68); 
if(
SYMBOLP(BgL_aux3127z00_6003))
{ /* Llib/hash.scm 445 */
BgL_res2554z00_3628 = BgL_aux3127z00_6003; }  else 
{ 
 obj_t BgL_auxz00_8738;
BgL_auxz00_8738 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17386L), BGl_string3933z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3127z00_6003); 
FAILURE(BgL_auxz00_8738,BFALSE,BFALSE);} } 
BgL_tmpz00_8734 = BgL_res2554z00_3628; } 
BgL_test4586z00_8733 = 
(BgL_tmpz00_8734==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4586z00_8733)
{ /* Llib/hash.scm 445 */
 int BgL_tmpz00_8743;
BgL_tmpz00_8743 = 
(int)(2L); 
BgL_bucketsz00_1818 = 
STRUCT_REF(BgL_tablez00_68, BgL_tmpz00_8743); }  else 
{ /* Llib/hash.scm 445 */
BgL_bucketsz00_1818 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_68); } } 
{ /* Llib/hash.scm 445 */
 long BgL_bucketszd2lenzd2_1819;
{ /* Llib/hash.scm 446 */
 obj_t BgL_vectorz00_3629;
if(
VECTORP(BgL_bucketsz00_1818))
{ /* Llib/hash.scm 446 */
BgL_vectorz00_3629 = BgL_bucketsz00_1818; }  else 
{ 
 obj_t BgL_auxz00_8749;
BgL_auxz00_8749 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17445L), BGl_string3933z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1818); 
FAILURE(BgL_auxz00_8749,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1819 = 
VECTOR_LENGTH(BgL_vectorz00_3629); } 
{ /* Llib/hash.scm 446 */

{ 
 long BgL_iz00_1822; obj_t BgL_resz00_1823;
BgL_iz00_1822 = 0L; 
BgL_resz00_1823 = BNIL; 
BgL_zc3z04anonymousza31506ze3z87_1824:
if(
(BgL_iz00_1822==BgL_bucketszd2lenzd2_1819))
{ /* Llib/hash.scm 449 */
return BgL_resz00_1823;}  else 
{ /* Llib/hash.scm 451 */
 obj_t BgL_g1064z00_1826;
{ /* Llib/hash.scm 451 */
 obj_t BgL_vectorz00_3632;
if(
VECTORP(BgL_bucketsz00_1818))
{ /* Llib/hash.scm 451 */
BgL_vectorz00_3632 = BgL_bucketsz00_1818; }  else 
{ 
 obj_t BgL_auxz00_8758;
BgL_auxz00_8758 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17569L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1818); 
FAILURE(BgL_auxz00_8758,BFALSE,BFALSE);} 
BgL_g1064z00_1826 = 
VECTOR_REF(BgL_vectorz00_3632,BgL_iz00_1822); } 
{ 
 obj_t BgL_bucketz00_1828; obj_t BgL_resz00_1829;
BgL_bucketz00_1828 = BgL_g1064z00_1826; 
BgL_resz00_1829 = BgL_resz00_1823; 
BgL_zc3z04anonymousza31508ze3z87_1830:
if(
NULLP(BgL_bucketz00_1828))
{ 
 obj_t BgL_resz00_8767; long BgL_iz00_8765;
BgL_iz00_8765 = 
(BgL_iz00_1822+1L); 
BgL_resz00_8767 = BgL_resz00_1829; 
BgL_resz00_1823 = BgL_resz00_8767; 
BgL_iz00_1822 = BgL_iz00_8765; 
goto BgL_zc3z04anonymousza31506ze3z87_1824;}  else 
{ /* Llib/hash.scm 455 */
 obj_t BgL_arg1515z00_1833; obj_t BgL_arg1516z00_1834;
{ /* Llib/hash.scm 455 */
 obj_t BgL_pairz00_3635;
if(
PAIRP(BgL_bucketz00_1828))
{ /* Llib/hash.scm 455 */
BgL_pairz00_3635 = BgL_bucketz00_1828; }  else 
{ 
 obj_t BgL_auxz00_8770;
BgL_auxz00_8770 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17660L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1828); 
FAILURE(BgL_auxz00_8770,BFALSE,BFALSE);} 
BgL_arg1515z00_1833 = 
CDR(BgL_pairz00_3635); } 
{ /* Llib/hash.scm 455 */
 obj_t BgL_arg1518z00_1835;
{ /* Llib/hash.scm 455 */
 obj_t BgL_pairz00_3636;
if(
PAIRP(BgL_bucketz00_1828))
{ /* Llib/hash.scm 455 */
BgL_pairz00_3636 = BgL_bucketz00_1828; }  else 
{ 
 obj_t BgL_auxz00_8777;
BgL_auxz00_8777 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17680L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_1828); 
FAILURE(BgL_auxz00_8777,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 455 */
 obj_t BgL_pairz00_3639;
{ /* Llib/hash.scm 455 */
 obj_t BgL_aux3137z00_6013;
BgL_aux3137z00_6013 = 
CAR(BgL_pairz00_3636); 
if(
PAIRP(BgL_aux3137z00_6013))
{ /* Llib/hash.scm 455 */
BgL_pairz00_3639 = BgL_aux3137z00_6013; }  else 
{ 
 obj_t BgL_auxz00_8784;
BgL_auxz00_8784 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17674L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3137z00_6013); 
FAILURE(BgL_auxz00_8784,BFALSE,BFALSE);} } 
BgL_arg1518z00_1835 = 
CAR(BgL_pairz00_3639); } } 
BgL_arg1516z00_1834 = 
MAKE_YOUNG_PAIR(BgL_arg1518z00_1835, BgL_resz00_1829); } 
{ 
 obj_t BgL_resz00_8791; obj_t BgL_bucketz00_8790;
BgL_bucketz00_8790 = BgL_arg1515z00_1833; 
BgL_resz00_8791 = BgL_arg1516z00_1834; 
BgL_resz00_1829 = BgL_resz00_8791; 
BgL_bucketz00_1828 = BgL_bucketz00_8790; 
goto BgL_zc3z04anonymousza31508ze3z87_1830;} } } } } } } } } } 

}



/* hashtable-map */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2mapzd2zz__hashz00(obj_t BgL_tablez00_69, obj_t BgL_funz00_70)
{
{ /* Llib/hash.scm 460 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_69))
{ /* Llib/hash.scm 462 */
return 
BGl_openzd2stringzd2hashtablezd2ze3listz31zz__hashz00(BgL_tablez00_69);}  else 
{ /* Llib/hash.scm 462 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_69))
{ /* Llib/hash.scm 464 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2mapz00zz__weakhashz00(BgL_tablez00_69, BgL_funz00_70);}  else 
{ /* Llib/hash.scm 464 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2mapz00zz__hashz00(BgL_tablez00_69, BgL_funz00_70);} } } 

}



/* &hashtable-map */
obj_t BGl_z62hashtablezd2mapzb0zz__hashz00(obj_t BgL_envz00_5433, obj_t BgL_tablez00_5434, obj_t BgL_funz00_5435)
{
{ /* Llib/hash.scm 460 */
{ /* Llib/hash.scm 462 */
 obj_t BgL_auxz00_8806; obj_t BgL_auxz00_8799;
if(
PROCEDUREP(BgL_funz00_5435))
{ /* Llib/hash.scm 462 */
BgL_auxz00_8806 = BgL_funz00_5435
; }  else 
{ 
 obj_t BgL_auxz00_8809;
BgL_auxz00_8809 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17991L), BGl_string3934z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5435); 
FAILURE(BgL_auxz00_8809,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5434))
{ /* Llib/hash.scm 462 */
BgL_auxz00_8799 = BgL_tablez00_5434
; }  else 
{ 
 obj_t BgL_auxz00_8802;
BgL_auxz00_8802 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(17991L), BGl_string3934z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5434); 
FAILURE(BgL_auxz00_8802,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2mapzd2zz__hashz00(BgL_auxz00_8799, BgL_auxz00_8806);} } 

}



/* open-string-hashtable-map */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2mapzd2zz__hashz00(obj_t BgL_tablez00_71, obj_t BgL_funz00_72)
{
{ /* Llib/hash.scm 472 */
{ /* Llib/hash.scm 473 */
 obj_t BgL_siza7eza7_1842;
{ /* Llib/hash.scm 473 */
 bool_t BgL_test4599z00_8814;
{ /* Llib/hash.scm 473 */
 obj_t BgL_tmpz00_8815;
{ /* Llib/hash.scm 473 */
 obj_t BgL_res2555z00_3645;
{ /* Llib/hash.scm 473 */
 obj_t BgL_aux3143z00_6019;
BgL_aux3143z00_6019 = 
STRUCT_KEY(BgL_tablez00_71); 
if(
SYMBOLP(BgL_aux3143z00_6019))
{ /* Llib/hash.scm 473 */
BgL_res2555z00_3645 = BgL_aux3143z00_6019; }  else 
{ 
 obj_t BgL_auxz00_8819;
BgL_auxz00_8819 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18484L), BGl_string3936z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3143z00_6019); 
FAILURE(BgL_auxz00_8819,BFALSE,BFALSE);} } 
BgL_tmpz00_8815 = BgL_res2555z00_3645; } 
BgL_test4599z00_8814 = 
(BgL_tmpz00_8815==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4599z00_8814)
{ /* Llib/hash.scm 473 */
 int BgL_tmpz00_8824;
BgL_tmpz00_8824 = 
(int)(1L); 
BgL_siza7eza7_1842 = 
STRUCT_REF(BgL_tablez00_71, BgL_tmpz00_8824); }  else 
{ /* Llib/hash.scm 473 */
BgL_siza7eza7_1842 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_71); } } 
{ /* Llib/hash.scm 473 */
 long BgL_siza7e3za7_1843;
{ /* Llib/hash.scm 474 */
 long BgL_za72za7_3646;
{ /* Llib/hash.scm 474 */
 obj_t BgL_tmpz00_8828;
if(
INTEGERP(BgL_siza7eza7_1842))
{ /* Llib/hash.scm 474 */
BgL_tmpz00_8828 = BgL_siza7eza7_1842
; }  else 
{ 
 obj_t BgL_auxz00_8831;
BgL_auxz00_8831 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18536L), BGl_string3936z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1842); 
FAILURE(BgL_auxz00_8831,BFALSE,BFALSE);} 
BgL_za72za7_3646 = 
(long)CINT(BgL_tmpz00_8828); } 
BgL_siza7e3za7_1843 = 
(3L*BgL_za72za7_3646); } 
{ /* Llib/hash.scm 474 */
 obj_t BgL_bucketsz00_1844;
{ /* Llib/hash.scm 475 */
 bool_t BgL_test4602z00_8837;
{ /* Llib/hash.scm 475 */
 obj_t BgL_tmpz00_8838;
{ /* Llib/hash.scm 475 */
 obj_t BgL_res2556z00_3650;
{ /* Llib/hash.scm 475 */
 obj_t BgL_aux3146z00_6022;
BgL_aux3146z00_6022 = 
STRUCT_KEY(BgL_tablez00_71); 
if(
SYMBOLP(BgL_aux3146z00_6022))
{ /* Llib/hash.scm 475 */
BgL_res2556z00_3650 = BgL_aux3146z00_6022; }  else 
{ 
 obj_t BgL_auxz00_8842;
BgL_auxz00_8842 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18555L), BGl_string3936z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3146z00_6022); 
FAILURE(BgL_auxz00_8842,BFALSE,BFALSE);} } 
BgL_tmpz00_8838 = BgL_res2556z00_3650; } 
BgL_test4602z00_8837 = 
(BgL_tmpz00_8838==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4602z00_8837)
{ /* Llib/hash.scm 475 */
 int BgL_tmpz00_8847;
BgL_tmpz00_8847 = 
(int)(2L); 
BgL_bucketsz00_1844 = 
STRUCT_REF(BgL_tablez00_71, BgL_tmpz00_8847); }  else 
{ /* Llib/hash.scm 475 */
BgL_bucketsz00_1844 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_71); } } 
{ /* Llib/hash.scm 475 */

{ 
 long BgL_iz00_1847; obj_t BgL_resz00_1848;
BgL_iz00_1847 = 0L; 
BgL_resz00_1848 = BNIL; 
BgL_zc3z04anonymousza31523ze3z87_1849:
if(
(BgL_iz00_1847==BgL_siza7e3za7_1843))
{ /* Llib/hash.scm 478 */
return BgL_resz00_1848;}  else 
{ /* Llib/hash.scm 480 */
 bool_t BgL_test4605z00_8853;
{ /* Llib/hash.scm 480 */
 bool_t BgL_test4606z00_8854;
{ /* Llib/hash.scm 480 */
 obj_t BgL_vectorz00_3653;
if(
VECTORP(BgL_bucketsz00_1844))
{ /* Llib/hash.scm 480 */
BgL_vectorz00_3653 = BgL_bucketsz00_1844; }  else 
{ 
 obj_t BgL_auxz00_8857;
BgL_auxz00_8857 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18678L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1844); 
FAILURE(BgL_auxz00_8857,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 480 */
 bool_t BgL_test4608z00_8861;
{ /* Llib/hash.scm 480 */
 long BgL_tmpz00_8862;
BgL_tmpz00_8862 = 
VECTOR_LENGTH(BgL_vectorz00_3653); 
BgL_test4608z00_8861 = 
BOUND_CHECK(BgL_iz00_1847, BgL_tmpz00_8862); } 
if(BgL_test4608z00_8861)
{ /* Llib/hash.scm 480 */
BgL_test4606z00_8854 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3653,BgL_iz00_1847))
; }  else 
{ 
 obj_t BgL_auxz00_8867;
BgL_auxz00_8867 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18666L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3653, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3653)), 
(int)(BgL_iz00_1847)); 
FAILURE(BgL_auxz00_8867,BFALSE,BFALSE);} } } 
if(BgL_test4606z00_8854)
{ /* Llib/hash.scm 480 */
 long BgL_arg1542z00_1862;
BgL_arg1542z00_1862 = 
(BgL_iz00_1847+2L); 
{ /* Llib/hash.scm 480 */
 obj_t BgL_vectorz00_3656;
if(
VECTORP(BgL_bucketsz00_1844))
{ /* Llib/hash.scm 480 */
BgL_vectorz00_3656 = BgL_bucketsz00_1844; }  else 
{ 
 obj_t BgL_auxz00_8877;
BgL_auxz00_8877 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18701L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1844); 
FAILURE(BgL_auxz00_8877,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 480 */
 bool_t BgL_test4610z00_8881;
{ /* Llib/hash.scm 480 */
 long BgL_tmpz00_8882;
BgL_tmpz00_8882 = 
VECTOR_LENGTH(BgL_vectorz00_3656); 
BgL_test4610z00_8881 = 
BOUND_CHECK(BgL_arg1542z00_1862, BgL_tmpz00_8882); } 
if(BgL_test4610z00_8881)
{ /* Llib/hash.scm 480 */
BgL_test4605z00_8853 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3656,BgL_arg1542z00_1862))
; }  else 
{ 
 obj_t BgL_auxz00_8887;
BgL_auxz00_8887 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18689L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3656, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3656)), 
(int)(BgL_arg1542z00_1862)); 
FAILURE(BgL_auxz00_8887,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 480 */
BgL_test4605z00_8853 = ((bool_t)0)
; } } 
if(BgL_test4605z00_8853)
{ /* Llib/hash.scm 481 */
 long BgL_arg1528z00_1854; obj_t BgL_arg1531z00_1855;
BgL_arg1528z00_1854 = 
(BgL_iz00_1847+3L); 
{ /* Llib/hash.scm 483 */
 obj_t BgL_arg1532z00_1856;
{ /* Llib/hash.scm 483 */
 obj_t BgL_arg1534z00_1857; obj_t BgL_arg1535z00_1858;
{ /* Llib/hash.scm 483 */
 obj_t BgL_vectorz00_3659;
if(
VECTORP(BgL_bucketsz00_1844))
{ /* Llib/hash.scm 483 */
BgL_vectorz00_3659 = BgL_bucketsz00_1844; }  else 
{ 
 obj_t BgL_auxz00_8897;
BgL_auxz00_8897 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18778L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1844); 
FAILURE(BgL_auxz00_8897,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 483 */
 bool_t BgL_test4612z00_8901;
{ /* Llib/hash.scm 483 */
 long BgL_tmpz00_8902;
BgL_tmpz00_8902 = 
VECTOR_LENGTH(BgL_vectorz00_3659); 
BgL_test4612z00_8901 = 
BOUND_CHECK(BgL_iz00_1847, BgL_tmpz00_8902); } 
if(BgL_test4612z00_8901)
{ /* Llib/hash.scm 483 */
BgL_arg1534z00_1857 = 
VECTOR_REF(BgL_vectorz00_3659,BgL_iz00_1847); }  else 
{ 
 obj_t BgL_auxz00_8906;
BgL_auxz00_8906 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18766L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3659, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3659)), 
(int)(BgL_iz00_1847)); 
FAILURE(BgL_auxz00_8906,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 483 */
 long BgL_arg1536z00_1859;
BgL_arg1536z00_1859 = 
(BgL_iz00_1847+1L); 
{ /* Llib/hash.scm 483 */
 obj_t BgL_vectorz00_3662;
if(
VECTORP(BgL_bucketsz00_1844))
{ /* Llib/hash.scm 483 */
BgL_vectorz00_3662 = BgL_bucketsz00_1844; }  else 
{ 
 obj_t BgL_auxz00_8916;
BgL_auxz00_8916 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18801L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1844); 
FAILURE(BgL_auxz00_8916,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 483 */
 bool_t BgL_test4614z00_8920;
{ /* Llib/hash.scm 483 */
 long BgL_tmpz00_8921;
BgL_tmpz00_8921 = 
VECTOR_LENGTH(BgL_vectorz00_3662); 
BgL_test4614z00_8920 = 
BOUND_CHECK(BgL_arg1536z00_1859, BgL_tmpz00_8921); } 
if(BgL_test4614z00_8920)
{ /* Llib/hash.scm 483 */
BgL_arg1535z00_1858 = 
VECTOR_REF(BgL_vectorz00_3662,BgL_arg1536z00_1859); }  else 
{ 
 obj_t BgL_auxz00_8925;
BgL_auxz00_8925 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18789L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3662, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3662)), 
(int)(BgL_arg1536z00_1859)); 
FAILURE(BgL_auxz00_8925,BFALSE,BFALSE);} } } } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_72, 2L))
{ /* Llib/hash.scm 483 */
BgL_arg1532z00_1856 = 
(VA_PROCEDUREP( BgL_funz00_72 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_72))(BgL_funz00_72, BgL_arg1534z00_1857, BgL_arg1535z00_1858, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_72))(BgL_funz00_72, BgL_arg1534z00_1857, BgL_arg1535z00_1858) ); }  else 
{ /* Llib/hash.scm 483 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list3938z00zz__hashz00,BgL_funz00_72);} } 
BgL_arg1531z00_1855 = 
MAKE_YOUNG_PAIR(BgL_arg1532z00_1856, BgL_resz00_1848); } 
{ 
 obj_t BgL_resz00_8942; long BgL_iz00_8941;
BgL_iz00_8941 = BgL_arg1528z00_1854; 
BgL_resz00_8942 = BgL_arg1531z00_1855; 
BgL_resz00_1848 = BgL_resz00_8942; 
BgL_iz00_1847 = BgL_iz00_8941; 
goto BgL_zc3z04anonymousza31523ze3z87_1849;} }  else 
{ 
 long BgL_iz00_8943;
BgL_iz00_8943 = 
(BgL_iz00_1847+3L); 
BgL_iz00_1847 = BgL_iz00_8943; 
goto BgL_zc3z04anonymousza31523ze3z87_1849;} } } } } } } } 

}



/* &open-string-hashtable-map */
obj_t BGl_z62openzd2stringzd2hashtablezd2mapzb0zz__hashz00(obj_t BgL_envz00_5436, obj_t BgL_tablez00_5437, obj_t BgL_funz00_5438)
{
{ /* Llib/hash.scm 472 */
{ /* Llib/hash.scm 473 */
 obj_t BgL_auxz00_8952; obj_t BgL_auxz00_8945;
if(
PROCEDUREP(BgL_funz00_5438))
{ /* Llib/hash.scm 473 */
BgL_auxz00_8952 = BgL_funz00_5438
; }  else 
{ 
 obj_t BgL_auxz00_8955;
BgL_auxz00_8955 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18471L), BGl_string3945z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5438); 
FAILURE(BgL_auxz00_8955,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5437))
{ /* Llib/hash.scm 473 */
BgL_auxz00_8945 = BgL_tablez00_5437
; }  else 
{ 
 obj_t BgL_auxz00_8948;
BgL_auxz00_8948 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(18471L), BGl_string3945z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5437); 
FAILURE(BgL_auxz00_8948,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2mapzd2zz__hashz00(BgL_auxz00_8945, BgL_auxz00_8952);} } 

}



/* plain-hashtable-map */
obj_t BGl_plainzd2hashtablezd2mapz00zz__hashz00(obj_t BgL_tablez00_73, obj_t BgL_funz00_74)
{
{ /* Llib/hash.scm 490 */
{ /* Llib/hash.scm 491 */
 obj_t BgL_bucketsz00_1864;
{ /* Llib/hash.scm 491 */
 bool_t BgL_test4618z00_8960;
{ /* Llib/hash.scm 491 */
 obj_t BgL_tmpz00_8961;
{ /* Llib/hash.scm 491 */
 obj_t BgL_res2557z00_3668;
{ /* Llib/hash.scm 491 */
 obj_t BgL_aux3161z00_6038;
BgL_aux3161z00_6038 = 
STRUCT_KEY(BgL_tablez00_73); 
if(
SYMBOLP(BgL_aux3161z00_6038))
{ /* Llib/hash.scm 491 */
BgL_res2557z00_3668 = BgL_aux3161z00_6038; }  else 
{ 
 obj_t BgL_auxz00_8965;
BgL_auxz00_8965 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19166L), BGl_string3946z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3161z00_6038); 
FAILURE(BgL_auxz00_8965,BFALSE,BFALSE);} } 
BgL_tmpz00_8961 = BgL_res2557z00_3668; } 
BgL_test4618z00_8960 = 
(BgL_tmpz00_8961==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4618z00_8960)
{ /* Llib/hash.scm 491 */
 int BgL_tmpz00_8970;
BgL_tmpz00_8970 = 
(int)(2L); 
BgL_bucketsz00_1864 = 
STRUCT_REF(BgL_tablez00_73, BgL_tmpz00_8970); }  else 
{ /* Llib/hash.scm 491 */
BgL_bucketsz00_1864 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_73); } } 
{ /* Llib/hash.scm 491 */
 long BgL_bucketszd2lenzd2_1865;
{ /* Llib/hash.scm 492 */
 obj_t BgL_vectorz00_3669;
if(
VECTORP(BgL_bucketsz00_1864))
{ /* Llib/hash.scm 492 */
BgL_vectorz00_3669 = BgL_bucketsz00_1864; }  else 
{ 
 obj_t BgL_auxz00_8976;
BgL_auxz00_8976 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19225L), BGl_string3946z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1864); 
FAILURE(BgL_auxz00_8976,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1865 = 
VECTOR_LENGTH(BgL_vectorz00_3669); } 
{ /* Llib/hash.scm 492 */

{ 
 long BgL_iz00_1868; obj_t BgL_resz00_1869;
BgL_iz00_1868 = 0L; 
BgL_resz00_1869 = BNIL; 
BgL_zc3z04anonymousza31543ze3z87_1870:
if(
(BgL_iz00_1868<BgL_bucketszd2lenzd2_1865))
{ /* Llib/hash.scm 496 */
 obj_t BgL_g1067z00_1872;
{ /* Llib/hash.scm 496 */
 obj_t BgL_vectorz00_3672;
if(
VECTORP(BgL_bucketsz00_1864))
{ /* Llib/hash.scm 496 */
BgL_vectorz00_3672 = BgL_bucketsz00_1864; }  else 
{ 
 obj_t BgL_auxz00_8985;
BgL_auxz00_8985 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19336L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1864); 
FAILURE(BgL_auxz00_8985,BFALSE,BFALSE);} 
BgL_g1067z00_1872 = 
VECTOR_REF(BgL_vectorz00_3672,BgL_iz00_1868); } 
{ 
 obj_t BgL_lstz00_1874; obj_t BgL_resz00_1875;
BgL_lstz00_1874 = BgL_g1067z00_1872; 
BgL_resz00_1875 = BgL_resz00_1869; 
BgL_zc3z04anonymousza31545ze3z87_1876:
if(
NULLP(BgL_lstz00_1874))
{ 
 obj_t BgL_resz00_8994; long BgL_iz00_8992;
BgL_iz00_8992 = 
(BgL_iz00_1868+1L); 
BgL_resz00_8994 = BgL_resz00_1875; 
BgL_resz00_1869 = BgL_resz00_8994; 
BgL_iz00_1868 = BgL_iz00_8992; 
goto BgL_zc3z04anonymousza31543ze3z87_1870;}  else 
{ /* Llib/hash.scm 500 */
 obj_t BgL_cellz00_1879;
{ /* Llib/hash.scm 500 */
 obj_t BgL_pairz00_3675;
if(
PAIRP(BgL_lstz00_1874))
{ /* Llib/hash.scm 500 */
BgL_pairz00_3675 = BgL_lstz00_1874; }  else 
{ 
 obj_t BgL_auxz00_8997;
BgL_auxz00_8997 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19430L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_lstz00_1874); 
FAILURE(BgL_auxz00_8997,BFALSE,BFALSE);} 
BgL_cellz00_1879 = 
CAR(BgL_pairz00_3675); } 
{ /* Llib/hash.scm 501 */
 obj_t BgL_arg1548z00_1880; obj_t BgL_arg1550z00_1881;
{ /* Llib/hash.scm 501 */
 obj_t BgL_pairz00_3676;
if(
PAIRP(BgL_lstz00_1874))
{ /* Llib/hash.scm 501 */
BgL_pairz00_3676 = BgL_lstz00_1874; }  else 
{ 
 obj_t BgL_auxz00_9004;
BgL_auxz00_9004 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19457L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_lstz00_1874); 
FAILURE(BgL_auxz00_9004,BFALSE,BFALSE);} 
BgL_arg1548z00_1880 = 
CDR(BgL_pairz00_3676); } 
{ /* Llib/hash.scm 502 */
 obj_t BgL_arg1552z00_1882;
{ /* Llib/hash.scm 502 */
 obj_t BgL_arg1553z00_1883; obj_t BgL_arg1554z00_1884;
{ /* Llib/hash.scm 502 */
 obj_t BgL_pairz00_3677;
if(
PAIRP(BgL_cellz00_1879))
{ /* Llib/hash.scm 502 */
BgL_pairz00_3677 = BgL_cellz00_1879; }  else 
{ 
 obj_t BgL_auxz00_9011;
BgL_auxz00_9011 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19486L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_1879); 
FAILURE(BgL_auxz00_9011,BFALSE,BFALSE);} 
BgL_arg1553z00_1883 = 
CAR(BgL_pairz00_3677); } 
{ /* Llib/hash.scm 502 */
 obj_t BgL_pairz00_3678;
if(
PAIRP(BgL_cellz00_1879))
{ /* Llib/hash.scm 502 */
BgL_pairz00_3678 = BgL_cellz00_1879; }  else 
{ 
 obj_t BgL_auxz00_9018;
BgL_auxz00_9018 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19497L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_1879); 
FAILURE(BgL_auxz00_9018,BFALSE,BFALSE);} 
BgL_arg1554z00_1884 = 
CDR(BgL_pairz00_3678); } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_74, 2L))
{ /* Llib/hash.scm 502 */
BgL_arg1552z00_1882 = 
(VA_PROCEDUREP( BgL_funz00_74 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_74))(BgL_funz00_74, BgL_arg1553z00_1883, BgL_arg1554z00_1884, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_74))(BgL_funz00_74, BgL_arg1553z00_1883, BgL_arg1554z00_1884) ); }  else 
{ /* Llib/hash.scm 502 */
FAILURE(BGl_string3947z00zz__hashz00,BGl_list3948z00zz__hashz00,BgL_funz00_74);} } 
BgL_arg1550z00_1881 = 
MAKE_YOUNG_PAIR(BgL_arg1552z00_1882, BgL_resz00_1875); } 
{ 
 obj_t BgL_resz00_9033; obj_t BgL_lstz00_9032;
BgL_lstz00_9032 = BgL_arg1548z00_1880; 
BgL_resz00_9033 = BgL_arg1550z00_1881; 
BgL_resz00_1875 = BgL_resz00_9033; 
BgL_lstz00_1874 = BgL_lstz00_9032; 
goto BgL_zc3z04anonymousza31545ze3z87_1876;} } } } }  else 
{ /* Llib/hash.scm 495 */
return BgL_resz00_1869;} } } } } } 

}



/* hashtable-for-each */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2forzd2eachz00zz__hashz00(obj_t BgL_tablez00_75, obj_t BgL_funz00_76)
{
{ /* Llib/hash.scm 508 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_75))
{ /* Llib/hash.scm 510 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2forzd2eachz00zz__hashz00(BgL_tablez00_75, BgL_funz00_76);}  else 
{ /* Llib/hash.scm 510 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_75))
{ /* Llib/hash.scm 512 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2forzd2eachzd2zz__weakhashz00(BgL_tablez00_75, BgL_funz00_76);}  else 
{ /* Llib/hash.scm 512 */
return 
BBOOL(
BGl_plainzd2hashtablezd2forzd2eachzd2zz__hashz00(BgL_tablez00_75, BgL_funz00_76));} } } 

}



/* &hashtable-for-each */
obj_t BGl_z62hashtablezd2forzd2eachz62zz__hashz00(obj_t BgL_envz00_5439, obj_t BgL_tablez00_5440, obj_t BgL_funz00_5441)
{
{ /* Llib/hash.scm 508 */
{ /* Llib/hash.scm 510 */
 obj_t BgL_auxz00_9049; obj_t BgL_auxz00_9042;
if(
PROCEDUREP(BgL_funz00_5441))
{ /* Llib/hash.scm 510 */
BgL_auxz00_9049 = BgL_funz00_5441
; }  else 
{ 
 obj_t BgL_auxz00_9052;
BgL_auxz00_9052 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19823L), BGl_string3953z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5441); 
FAILURE(BgL_auxz00_9052,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5440))
{ /* Llib/hash.scm 510 */
BgL_auxz00_9042 = BgL_tablez00_5440
; }  else 
{ 
 obj_t BgL_auxz00_9045;
BgL_auxz00_9045 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(19823L), BGl_string3953z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5440); 
FAILURE(BgL_auxz00_9045,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2forzd2eachz00zz__hashz00(BgL_auxz00_9042, BgL_auxz00_9049);} } 

}



/* open-string-hashtable-for-each */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2forzd2eachz00zz__hashz00(obj_t BgL_tablez00_77, obj_t BgL_funz00_78)
{
{ /* Llib/hash.scm 520 */
{ /* Llib/hash.scm 521 */
 obj_t BgL_siza7eza7_1889;
{ /* Llib/hash.scm 521 */
 bool_t BgL_test4633z00_9057;
{ /* Llib/hash.scm 521 */
 obj_t BgL_tmpz00_9058;
{ /* Llib/hash.scm 521 */
 obj_t BgL_res2558z00_3684;
{ /* Llib/hash.scm 521 */
 obj_t BgL_aux3180z00_6058;
BgL_aux3180z00_6058 = 
STRUCT_KEY(BgL_tablez00_77); 
if(
SYMBOLP(BgL_aux3180z00_6058))
{ /* Llib/hash.scm 521 */
BgL_res2558z00_3684 = BgL_aux3180z00_6058; }  else 
{ 
 obj_t BgL_auxz00_9062;
BgL_auxz00_9062 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20338L), BGl_string3954z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3180z00_6058); 
FAILURE(BgL_auxz00_9062,BFALSE,BFALSE);} } 
BgL_tmpz00_9058 = BgL_res2558z00_3684; } 
BgL_test4633z00_9057 = 
(BgL_tmpz00_9058==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4633z00_9057)
{ /* Llib/hash.scm 521 */
 int BgL_tmpz00_9067;
BgL_tmpz00_9067 = 
(int)(1L); 
BgL_siza7eza7_1889 = 
STRUCT_REF(BgL_tablez00_77, BgL_tmpz00_9067); }  else 
{ /* Llib/hash.scm 521 */
BgL_siza7eza7_1889 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_77); } } 
{ /* Llib/hash.scm 521 */
 long BgL_siza7e3za7_1890;
{ /* Llib/hash.scm 522 */
 long BgL_za72za7_3685;
{ /* Llib/hash.scm 522 */
 obj_t BgL_tmpz00_9071;
if(
INTEGERP(BgL_siza7eza7_1889))
{ /* Llib/hash.scm 522 */
BgL_tmpz00_9071 = BgL_siza7eza7_1889
; }  else 
{ 
 obj_t BgL_auxz00_9074;
BgL_auxz00_9074 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20390L), BGl_string3954z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1889); 
FAILURE(BgL_auxz00_9074,BFALSE,BFALSE);} 
BgL_za72za7_3685 = 
(long)CINT(BgL_tmpz00_9071); } 
BgL_siza7e3za7_1890 = 
(3L*BgL_za72za7_3685); } 
{ /* Llib/hash.scm 522 */
 obj_t BgL_bucketsz00_1891;
{ /* Llib/hash.scm 523 */
 bool_t BgL_test4636z00_9080;
{ /* Llib/hash.scm 523 */
 obj_t BgL_tmpz00_9081;
{ /* Llib/hash.scm 523 */
 obj_t BgL_res2559z00_3689;
{ /* Llib/hash.scm 523 */
 obj_t BgL_aux3183z00_6061;
BgL_aux3183z00_6061 = 
STRUCT_KEY(BgL_tablez00_77); 
if(
SYMBOLP(BgL_aux3183z00_6061))
{ /* Llib/hash.scm 523 */
BgL_res2559z00_3689 = BgL_aux3183z00_6061; }  else 
{ 
 obj_t BgL_auxz00_9085;
BgL_auxz00_9085 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20409L), BGl_string3954z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3183z00_6061); 
FAILURE(BgL_auxz00_9085,BFALSE,BFALSE);} } 
BgL_tmpz00_9081 = BgL_res2559z00_3689; } 
BgL_test4636z00_9080 = 
(BgL_tmpz00_9081==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4636z00_9080)
{ /* Llib/hash.scm 523 */
 int BgL_tmpz00_9090;
BgL_tmpz00_9090 = 
(int)(2L); 
BgL_bucketsz00_1891 = 
STRUCT_REF(BgL_tablez00_77, BgL_tmpz00_9090); }  else 
{ /* Llib/hash.scm 523 */
BgL_bucketsz00_1891 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_77); } } 
{ /* Llib/hash.scm 523 */

{ 
 long BgL_iz00_1893;
{ /* Llib/hash.scm 524 */
 bool_t BgL_tmpz00_9094;
BgL_iz00_1893 = 0L; 
BgL_zc3z04anonymousza31557ze3z87_1894:
if(
(BgL_iz00_1893==BgL_siza7e3za7_1890))
{ /* Llib/hash.scm 525 */
BgL_tmpz00_9094 = ((bool_t)0)
; }  else 
{ /* Llib/hash.scm 525 */
{ /* Llib/hash.scm 526 */
 bool_t BgL_test4639z00_9097;
{ /* Llib/hash.scm 526 */
 bool_t BgL_test4640z00_9098;
{ /* Llib/hash.scm 526 */
 obj_t BgL_vectorz00_3692;
if(
VECTORP(BgL_bucketsz00_1891))
{ /* Llib/hash.scm 526 */
BgL_vectorz00_3692 = BgL_bucketsz00_1891; }  else 
{ 
 obj_t BgL_auxz00_9101;
BgL_auxz00_9101 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20514L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1891); 
FAILURE(BgL_auxz00_9101,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 526 */
 bool_t BgL_test4642z00_9105;
{ /* Llib/hash.scm 526 */
 long BgL_tmpz00_9106;
BgL_tmpz00_9106 = 
VECTOR_LENGTH(BgL_vectorz00_3692); 
BgL_test4642z00_9105 = 
BOUND_CHECK(BgL_iz00_1893, BgL_tmpz00_9106); } 
if(BgL_test4642z00_9105)
{ /* Llib/hash.scm 526 */
BgL_test4640z00_9098 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3692,BgL_iz00_1893))
; }  else 
{ 
 obj_t BgL_auxz00_9111;
BgL_auxz00_9111 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20502L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3692, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3692)), 
(int)(BgL_iz00_1893)); 
FAILURE(BgL_auxz00_9111,BFALSE,BFALSE);} } } 
if(BgL_test4640z00_9098)
{ /* Llib/hash.scm 526 */
 long BgL_arg1567z00_1903;
BgL_arg1567z00_1903 = 
(BgL_iz00_1893+2L); 
{ /* Llib/hash.scm 526 */
 obj_t BgL_vectorz00_3695;
if(
VECTORP(BgL_bucketsz00_1891))
{ /* Llib/hash.scm 526 */
BgL_vectorz00_3695 = BgL_bucketsz00_1891; }  else 
{ 
 obj_t BgL_auxz00_9121;
BgL_auxz00_9121 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20537L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1891); 
FAILURE(BgL_auxz00_9121,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 526 */
 bool_t BgL_test4644z00_9125;
{ /* Llib/hash.scm 526 */
 long BgL_tmpz00_9126;
BgL_tmpz00_9126 = 
VECTOR_LENGTH(BgL_vectorz00_3695); 
BgL_test4644z00_9125 = 
BOUND_CHECK(BgL_arg1567z00_1903, BgL_tmpz00_9126); } 
if(BgL_test4644z00_9125)
{ /* Llib/hash.scm 526 */
BgL_test4639z00_9097 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3695,BgL_arg1567z00_1903))
; }  else 
{ 
 obj_t BgL_auxz00_9131;
BgL_auxz00_9131 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20525L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3695, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3695)), 
(int)(BgL_arg1567z00_1903)); 
FAILURE(BgL_auxz00_9131,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 526 */
BgL_test4639z00_9097 = ((bool_t)0)
; } } 
if(BgL_test4639z00_9097)
{ /* Llib/hash.scm 527 */
 obj_t BgL_arg1563z00_1899; obj_t BgL_arg1564z00_1900;
{ /* Llib/hash.scm 527 */
 obj_t BgL_vectorz00_3697;
if(
VECTORP(BgL_bucketsz00_1891))
{ /* Llib/hash.scm 527 */
BgL_vectorz00_3697 = BgL_bucketsz00_1891; }  else 
{ 
 obj_t BgL_auxz00_9140;
BgL_auxz00_9140 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20582L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1891); 
FAILURE(BgL_auxz00_9140,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 527 */
 bool_t BgL_test4646z00_9144;
{ /* Llib/hash.scm 527 */
 long BgL_tmpz00_9145;
BgL_tmpz00_9145 = 
VECTOR_LENGTH(BgL_vectorz00_3697); 
BgL_test4646z00_9144 = 
BOUND_CHECK(BgL_iz00_1893, BgL_tmpz00_9145); } 
if(BgL_test4646z00_9144)
{ /* Llib/hash.scm 527 */
BgL_arg1563z00_1899 = 
VECTOR_REF(BgL_vectorz00_3697,BgL_iz00_1893); }  else 
{ 
 obj_t BgL_auxz00_9149;
BgL_auxz00_9149 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20570L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3697, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3697)), 
(int)(BgL_iz00_1893)); 
FAILURE(BgL_auxz00_9149,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 527 */
 long BgL_arg1565z00_1901;
BgL_arg1565z00_1901 = 
(BgL_iz00_1893+1L); 
{ /* Llib/hash.scm 527 */
 obj_t BgL_vectorz00_3700;
if(
VECTORP(BgL_bucketsz00_1891))
{ /* Llib/hash.scm 527 */
BgL_vectorz00_3700 = BgL_bucketsz00_1891; }  else 
{ 
 obj_t BgL_auxz00_9159;
BgL_auxz00_9159 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20605L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1891); 
FAILURE(BgL_auxz00_9159,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 527 */
 bool_t BgL_test4648z00_9163;
{ /* Llib/hash.scm 527 */
 long BgL_tmpz00_9164;
BgL_tmpz00_9164 = 
VECTOR_LENGTH(BgL_vectorz00_3700); 
BgL_test4648z00_9163 = 
BOUND_CHECK(BgL_arg1565z00_1901, BgL_tmpz00_9164); } 
if(BgL_test4648z00_9163)
{ /* Llib/hash.scm 527 */
BgL_arg1564z00_1900 = 
VECTOR_REF(BgL_vectorz00_3700,BgL_arg1565z00_1901); }  else 
{ 
 obj_t BgL_auxz00_9168;
BgL_auxz00_9168 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20593L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3700, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3700)), 
(int)(BgL_arg1565z00_1901)); 
FAILURE(BgL_auxz00_9168,BFALSE,BFALSE);} } } } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_78, 2L))
{ /* Llib/hash.scm 527 */
(VA_PROCEDUREP( BgL_funz00_78 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_78))(BgL_funz00_78, BgL_arg1563z00_1899, BgL_arg1564z00_1900, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_78))(BgL_funz00_78, BgL_arg1563z00_1899, BgL_arg1564z00_1900) ); }  else 
{ /* Llib/hash.scm 527 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list3955z00zz__hashz00,BgL_funz00_78);} }  else 
{ /* Llib/hash.scm 526 */BFALSE; } } 
{ 
 long BgL_iz00_9183;
BgL_iz00_9183 = 
(BgL_iz00_1893+3L); 
BgL_iz00_1893 = BgL_iz00_9183; 
goto BgL_zc3z04anonymousza31557ze3z87_1894;} } 
return 
BBOOL(BgL_tmpz00_9094);} } } } } } } 

}



/* &open-string-hashtable-for-each */
obj_t BGl_z62openzd2stringzd2hashtablezd2forzd2eachz62zz__hashz00(obj_t BgL_envz00_5442, obj_t BgL_tablez00_5443, obj_t BgL_funz00_5444)
{
{ /* Llib/hash.scm 520 */
{ /* Llib/hash.scm 521 */
 obj_t BgL_auxz00_9193; obj_t BgL_auxz00_9186;
if(
PROCEDUREP(BgL_funz00_5444))
{ /* Llib/hash.scm 521 */
BgL_auxz00_9193 = BgL_funz00_5444
; }  else 
{ 
 obj_t BgL_auxz00_9196;
BgL_auxz00_9196 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20325L), BGl_string3960z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5444); 
FAILURE(BgL_auxz00_9196,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5443))
{ /* Llib/hash.scm 521 */
BgL_auxz00_9186 = BgL_tablez00_5443
; }  else 
{ 
 obj_t BgL_auxz00_9189;
BgL_auxz00_9189 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20325L), BGl_string3960z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5443); 
FAILURE(BgL_auxz00_9189,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2forzd2eachz00zz__hashz00(BgL_auxz00_9186, BgL_auxz00_9193);} } 

}



/* plain-hashtable-for-each */
bool_t BGl_plainzd2hashtablezd2forzd2eachzd2zz__hashz00(obj_t BgL_tablez00_79, obj_t BgL_funz00_80)
{
{ /* Llib/hash.scm 533 */
{ /* Llib/hash.scm 534 */
 obj_t BgL_bucketsz00_1906;
{ /* Llib/hash.scm 534 */
 bool_t BgL_test4652z00_9201;
{ /* Llib/hash.scm 534 */
 obj_t BgL_tmpz00_9202;
{ /* Llib/hash.scm 534 */
 obj_t BgL_res2560z00_3706;
{ /* Llib/hash.scm 534 */
 obj_t BgL_aux3198z00_6077;
BgL_aux3198z00_6077 = 
STRUCT_KEY(BgL_tablez00_79); 
if(
SYMBOLP(BgL_aux3198z00_6077))
{ /* Llib/hash.scm 534 */
BgL_res2560z00_3706 = BgL_aux3198z00_6077; }  else 
{ 
 obj_t BgL_auxz00_9206;
BgL_auxz00_9206 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(20958L), BGl_string3961z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3198z00_6077); 
FAILURE(BgL_auxz00_9206,BFALSE,BFALSE);} } 
BgL_tmpz00_9202 = BgL_res2560z00_3706; } 
BgL_test4652z00_9201 = 
(BgL_tmpz00_9202==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4652z00_9201)
{ /* Llib/hash.scm 534 */
 int BgL_tmpz00_9211;
BgL_tmpz00_9211 = 
(int)(2L); 
BgL_bucketsz00_1906 = 
STRUCT_REF(BgL_tablez00_79, BgL_tmpz00_9211); }  else 
{ /* Llib/hash.scm 534 */
BgL_bucketsz00_1906 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_79); } } 
{ /* Llib/hash.scm 534 */
 long BgL_bucketszd2lenzd2_1907;
{ /* Llib/hash.scm 535 */
 obj_t BgL_vectorz00_3707;
if(
VECTORP(BgL_bucketsz00_1906))
{ /* Llib/hash.scm 535 */
BgL_vectorz00_3707 = BgL_bucketsz00_1906; }  else 
{ 
 obj_t BgL_auxz00_9217;
BgL_auxz00_9217 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21017L), BGl_string3961z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1906); 
FAILURE(BgL_auxz00_9217,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1907 = 
VECTOR_LENGTH(BgL_vectorz00_3707); } 
{ /* Llib/hash.scm 535 */

{ 
 long BgL_iz00_1909;
BgL_iz00_1909 = 0L; 
BgL_zc3z04anonymousza31569ze3z87_1910:
if(
(BgL_iz00_1909<BgL_bucketszd2lenzd2_1907))
{ /* Llib/hash.scm 537 */
{ /* Llib/hash.scm 539 */
 obj_t BgL_g1137z00_1912;
{ /* Llib/hash.scm 541 */
 obj_t BgL_vectorz00_3710;
if(
VECTORP(BgL_bucketsz00_1906))
{ /* Llib/hash.scm 541 */
BgL_vectorz00_3710 = BgL_bucketsz00_1906; }  else 
{ 
 obj_t BgL_auxz00_9226;
BgL_auxz00_9226 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21175L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1906); 
FAILURE(BgL_auxz00_9226,BFALSE,BFALSE);} 
BgL_g1137z00_1912 = 
VECTOR_REF(BgL_vectorz00_3710,BgL_iz00_1909); } 
{ 
 obj_t BgL_l1135z00_1914;
BgL_l1135z00_1914 = BgL_g1137z00_1912; 
BgL_zc3z04anonymousza31571ze3z87_1915:
if(
PAIRP(BgL_l1135z00_1914))
{ /* Llib/hash.scm 541 */
{ /* Llib/hash.scm 540 */
 obj_t BgL_cellz00_1917;
BgL_cellz00_1917 = 
CAR(BgL_l1135z00_1914); 
{ /* Llib/hash.scm 540 */
 obj_t BgL_arg1575z00_1918; obj_t BgL_arg1576z00_1919;
{ /* Llib/hash.scm 540 */
 obj_t BgL_pairz00_3713;
if(
PAIRP(BgL_cellz00_1917))
{ /* Llib/hash.scm 540 */
BgL_pairz00_3713 = BgL_cellz00_1917; }  else 
{ 
 obj_t BgL_auxz00_9236;
BgL_auxz00_9236 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21136L), BGl_string3962z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_1917); 
FAILURE(BgL_auxz00_9236,BFALSE,BFALSE);} 
BgL_arg1575z00_1918 = 
CAR(BgL_pairz00_3713); } 
{ /* Llib/hash.scm 540 */
 obj_t BgL_pairz00_3714;
if(
PAIRP(BgL_cellz00_1917))
{ /* Llib/hash.scm 540 */
BgL_pairz00_3714 = BgL_cellz00_1917; }  else 
{ 
 obj_t BgL_auxz00_9243;
BgL_auxz00_9243 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21147L), BGl_string3962z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_1917); 
FAILURE(BgL_auxz00_9243,BFALSE,BFALSE);} 
BgL_arg1576z00_1919 = 
CDR(BgL_pairz00_3714); } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_80, 2L))
{ /* Llib/hash.scm 540 */
(VA_PROCEDUREP( BgL_funz00_80 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_80))(BgL_funz00_80, BgL_arg1575z00_1918, BgL_arg1576z00_1919, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_80))(BgL_funz00_80, BgL_arg1575z00_1918, BgL_arg1576z00_1919) ); }  else 
{ /* Llib/hash.scm 540 */
FAILURE(BGl_string3963z00zz__hashz00,BGl_list3964z00zz__hashz00,BgL_funz00_80);} } } 
{ 
 obj_t BgL_l1135z00_9256;
BgL_l1135z00_9256 = 
CDR(BgL_l1135z00_1914); 
BgL_l1135z00_1914 = BgL_l1135z00_9256; 
goto BgL_zc3z04anonymousza31571ze3z87_1915;} }  else 
{ /* Llib/hash.scm 541 */
if(
NULLP(BgL_l1135z00_1914))
{ /* Llib/hash.scm 541 */BTRUE; }  else 
{ /* Llib/hash.scm 541 */
BGl_bigloozd2typezd2errorzf2locationzf2zz__errorz00(BGl_string3969z00zz__hashz00, BGl_string3970z00zz__hashz00, BgL_l1135z00_1914, BGl_string3867z00zz__hashz00, 
BINT(21093L)); } } } } 
{ 
 long BgL_iz00_9262;
BgL_iz00_9262 = 
(BgL_iz00_1909+1L); 
BgL_iz00_1909 = BgL_iz00_9262; 
goto BgL_zc3z04anonymousza31569ze3z87_1910;} }  else 
{ /* Llib/hash.scm 537 */
return ((bool_t)0);} } } } } } 

}



/* hashtable-filter! */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2filterz12zc0zz__hashz00(obj_t BgL_tablez00_81, obj_t BgL_funz00_82)
{
{ /* Llib/hash.scm 547 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_81))
{ /* Llib/hash.scm 549 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2filterz12zc0zz__hashz00(BgL_tablez00_81, BgL_funz00_82);}  else 
{ /* Llib/hash.scm 549 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_81))
{ /* Llib/hash.scm 551 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2filterz12z12zz__weakhashz00(BgL_tablez00_81, BgL_funz00_82);}  else 
{ /* Llib/hash.scm 551 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2filterz12z12zz__hashz00(BgL_tablez00_81, BgL_funz00_82);} } } 

}



/* &hashtable-filter! */
obj_t BGl_z62hashtablezd2filterz12za2zz__hashz00(obj_t BgL_envz00_5445, obj_t BgL_tablez00_5446, obj_t BgL_funz00_5447)
{
{ /* Llib/hash.scm 547 */
{ /* Llib/hash.scm 549 */
 obj_t BgL_auxz00_9278; obj_t BgL_auxz00_9271;
if(
PROCEDUREP(BgL_funz00_5447))
{ /* Llib/hash.scm 549 */
BgL_auxz00_9278 = BgL_funz00_5447
; }  else 
{ 
 obj_t BgL_auxz00_9281;
BgL_auxz00_9281 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21506L), BGl_string3971z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5447); 
FAILURE(BgL_auxz00_9281,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5446))
{ /* Llib/hash.scm 549 */
BgL_auxz00_9271 = BgL_tablez00_5446
; }  else 
{ 
 obj_t BgL_auxz00_9274;
BgL_auxz00_9274 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(21506L), BGl_string3971z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5446); 
FAILURE(BgL_auxz00_9274,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2filterz12zc0zz__hashz00(BgL_auxz00_9271, BgL_auxz00_9278);} } 

}



/* open-string-hashtable-filter! */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2filterz12zc0zz__hashz00(obj_t BgL_tablez00_83, obj_t BgL_funz00_84)
{
{ /* Llib/hash.scm 559 */
{ /* Llib/hash.scm 560 */
 obj_t BgL_siza7eza7_1927;
{ /* Llib/hash.scm 560 */
 bool_t BgL_test4666z00_9286;
{ /* Llib/hash.scm 560 */
 obj_t BgL_tmpz00_9287;
{ /* Llib/hash.scm 560 */
 obj_t BgL_res2561z00_3722;
{ /* Llib/hash.scm 560 */
 obj_t BgL_aux3213z00_6093;
BgL_aux3213z00_6093 = 
STRUCT_KEY(BgL_tablez00_83); 
if(
SYMBOLP(BgL_aux3213z00_6093))
{ /* Llib/hash.scm 560 */
BgL_res2561z00_3722 = BgL_aux3213z00_6093; }  else 
{ 
 obj_t BgL_auxz00_9291;
BgL_auxz00_9291 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22017L), BGl_string3972z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3213z00_6093); 
FAILURE(BgL_auxz00_9291,BFALSE,BFALSE);} } 
BgL_tmpz00_9287 = BgL_res2561z00_3722; } 
BgL_test4666z00_9286 = 
(BgL_tmpz00_9287==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4666z00_9286)
{ /* Llib/hash.scm 560 */
 int BgL_tmpz00_9296;
BgL_tmpz00_9296 = 
(int)(1L); 
BgL_siza7eza7_1927 = 
STRUCT_REF(BgL_tablez00_83, BgL_tmpz00_9296); }  else 
{ /* Llib/hash.scm 560 */
BgL_siza7eza7_1927 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_83); } } 
{ /* Llib/hash.scm 560 */
 long BgL_siza7e3za7_1928;
{ /* Llib/hash.scm 561 */
 long BgL_za72za7_3723;
{ /* Llib/hash.scm 561 */
 obj_t BgL_tmpz00_9300;
if(
INTEGERP(BgL_siza7eza7_1927))
{ /* Llib/hash.scm 561 */
BgL_tmpz00_9300 = BgL_siza7eza7_1927
; }  else 
{ 
 obj_t BgL_auxz00_9303;
BgL_auxz00_9303 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22069L), BGl_string3972z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1927); 
FAILURE(BgL_auxz00_9303,BFALSE,BFALSE);} 
BgL_za72za7_3723 = 
(long)CINT(BgL_tmpz00_9300); } 
BgL_siza7e3za7_1928 = 
(3L*BgL_za72za7_3723); } 
{ /* Llib/hash.scm 561 */
 obj_t BgL_bucketsz00_1929;
{ /* Llib/hash.scm 562 */
 bool_t BgL_test4669z00_9309;
{ /* Llib/hash.scm 562 */
 obj_t BgL_tmpz00_9310;
{ /* Llib/hash.scm 562 */
 obj_t BgL_res2562z00_3727;
{ /* Llib/hash.scm 562 */
 obj_t BgL_aux3216z00_6096;
BgL_aux3216z00_6096 = 
STRUCT_KEY(BgL_tablez00_83); 
if(
SYMBOLP(BgL_aux3216z00_6096))
{ /* Llib/hash.scm 562 */
BgL_res2562z00_3727 = BgL_aux3216z00_6096; }  else 
{ 
 obj_t BgL_auxz00_9314;
BgL_auxz00_9314 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22088L), BGl_string3972z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3216z00_6096); 
FAILURE(BgL_auxz00_9314,BFALSE,BFALSE);} } 
BgL_tmpz00_9310 = BgL_res2562z00_3727; } 
BgL_test4669z00_9309 = 
(BgL_tmpz00_9310==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4669z00_9309)
{ /* Llib/hash.scm 562 */
 int BgL_tmpz00_9319;
BgL_tmpz00_9319 = 
(int)(2L); 
BgL_bucketsz00_1929 = 
STRUCT_REF(BgL_tablez00_83, BgL_tmpz00_9319); }  else 
{ /* Llib/hash.scm 562 */
BgL_bucketsz00_1929 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_83); } } 
{ /* Llib/hash.scm 562 */

{ 
 long BgL_iz00_1931;
{ /* Llib/hash.scm 563 */
 bool_t BgL_tmpz00_9323;
BgL_iz00_1931 = 0L; 
BgL_zc3z04anonymousza31582ze3z87_1932:
if(
(BgL_iz00_1931==BgL_siza7e3za7_1928))
{ /* Llib/hash.scm 564 */
BgL_tmpz00_9323 = ((bool_t)0)
; }  else 
{ /* Llib/hash.scm 564 */
{ /* Llib/hash.scm 565 */
 bool_t BgL_test4672z00_9326;
{ /* Llib/hash.scm 565 */
 bool_t BgL_test4673z00_9327;
{ /* Llib/hash.scm 565 */
 obj_t BgL_vectorz00_3730;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 565 */
BgL_vectorz00_3730 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9330;
BgL_auxz00_9330 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22193L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9330,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 565 */
 bool_t BgL_test4675z00_9334;
{ /* Llib/hash.scm 565 */
 long BgL_tmpz00_9335;
BgL_tmpz00_9335 = 
VECTOR_LENGTH(BgL_vectorz00_3730); 
BgL_test4675z00_9334 = 
BOUND_CHECK(BgL_iz00_1931, BgL_tmpz00_9335); } 
if(BgL_test4675z00_9334)
{ /* Llib/hash.scm 565 */
BgL_test4673z00_9327 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3730,BgL_iz00_1931))
; }  else 
{ 
 obj_t BgL_auxz00_9340;
BgL_auxz00_9340 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22181L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3730, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3730)), 
(int)(BgL_iz00_1931)); 
FAILURE(BgL_auxz00_9340,BFALSE,BFALSE);} } } 
if(BgL_test4673z00_9327)
{ /* Llib/hash.scm 565 */
 long BgL_arg1603z00_1947;
BgL_arg1603z00_1947 = 
(BgL_iz00_1931+2L); 
{ /* Llib/hash.scm 565 */
 obj_t BgL_vectorz00_3733;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 565 */
BgL_vectorz00_3733 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9350;
BgL_auxz00_9350 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22216L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9350,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 565 */
 bool_t BgL_test4677z00_9354;
{ /* Llib/hash.scm 565 */
 long BgL_tmpz00_9355;
BgL_tmpz00_9355 = 
VECTOR_LENGTH(BgL_vectorz00_3733); 
BgL_test4677z00_9354 = 
BOUND_CHECK(BgL_arg1603z00_1947, BgL_tmpz00_9355); } 
if(BgL_test4677z00_9354)
{ /* Llib/hash.scm 565 */
BgL_test4672z00_9326 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3733,BgL_arg1603z00_1947))
; }  else 
{ 
 obj_t BgL_auxz00_9360;
BgL_auxz00_9360 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22204L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3733, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3733)), 
(int)(BgL_arg1603z00_1947)); 
FAILURE(BgL_auxz00_9360,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 565 */
BgL_test4672z00_9326 = ((bool_t)0)
; } } 
if(BgL_test4672z00_9326)
{ /* Llib/hash.scm 566 */
 bool_t BgL_test4678z00_9367;
{ /* Llib/hash.scm 566 */
 obj_t BgL_arg1598z00_1943; obj_t BgL_arg1600z00_1944;
{ /* Llib/hash.scm 566 */
 obj_t BgL_vectorz00_3735;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 566 */
BgL_vectorz00_3735 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9370;
BgL_auxz00_9370 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22269L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9370,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 566 */
 bool_t BgL_test4680z00_9374;
{ /* Llib/hash.scm 566 */
 long BgL_tmpz00_9375;
BgL_tmpz00_9375 = 
VECTOR_LENGTH(BgL_vectorz00_3735); 
BgL_test4680z00_9374 = 
BOUND_CHECK(BgL_iz00_1931, BgL_tmpz00_9375); } 
if(BgL_test4680z00_9374)
{ /* Llib/hash.scm 566 */
BgL_arg1598z00_1943 = 
VECTOR_REF(BgL_vectorz00_3735,BgL_iz00_1931); }  else 
{ 
 obj_t BgL_auxz00_9379;
BgL_auxz00_9379 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22257L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3735, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3735)), 
(int)(BgL_iz00_1931)); 
FAILURE(BgL_auxz00_9379,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 566 */
 long BgL_arg1602z00_1945;
BgL_arg1602z00_1945 = 
(BgL_iz00_1931+1L); 
{ /* Llib/hash.scm 566 */
 obj_t BgL_vectorz00_3738;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 566 */
BgL_vectorz00_3738 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9389;
BgL_auxz00_9389 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22292L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9389,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 566 */
 bool_t BgL_test4682z00_9393;
{ /* Llib/hash.scm 566 */
 long BgL_tmpz00_9394;
BgL_tmpz00_9394 = 
VECTOR_LENGTH(BgL_vectorz00_3738); 
BgL_test4682z00_9393 = 
BOUND_CHECK(BgL_arg1602z00_1945, BgL_tmpz00_9394); } 
if(BgL_test4682z00_9393)
{ /* Llib/hash.scm 566 */
BgL_arg1600z00_1944 = 
VECTOR_REF(BgL_vectorz00_3738,BgL_arg1602z00_1945); }  else 
{ 
 obj_t BgL_auxz00_9398;
BgL_auxz00_9398 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22280L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3738, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3738)), 
(int)(BgL_arg1602z00_1945)); 
FAILURE(BgL_auxz00_9398,BFALSE,BFALSE);} } } } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_84, 2L))
{ /* Llib/hash.scm 566 */
BgL_test4678z00_9367 = 
CBOOL(
(VA_PROCEDUREP( BgL_funz00_84 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_84))(BgL_funz00_84, BgL_arg1598z00_1943, BgL_arg1600z00_1944, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_84))(BgL_funz00_84, BgL_arg1598z00_1943, BgL_arg1600z00_1944) ))
; }  else 
{ /* Llib/hash.scm 566 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list3973z00zz__hashz00,BgL_funz00_84);} } 
if(BgL_test4678z00_9367)
{ /* Llib/hash.scm 566 */BFALSE; }  else 
{ /* Llib/hash.scm 566 */
{ /* Llib/hash.scm 567 */
 long BgL_arg1595z00_1941;
BgL_arg1595z00_1941 = 
(BgL_iz00_1931+1L); 
{ /* Llib/hash.scm 567 */
 obj_t BgL_vectorz00_3741;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 567 */
BgL_vectorz00_3741 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9417;
BgL_auxz00_9417 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22329L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9417,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 567 */
 bool_t BgL_test4685z00_9421;
{ /* Llib/hash.scm 567 */
 long BgL_tmpz00_9422;
BgL_tmpz00_9422 = 
VECTOR_LENGTH(BgL_vectorz00_3741); 
BgL_test4685z00_9421 = 
BOUND_CHECK(BgL_arg1595z00_1941, BgL_tmpz00_9422); } 
if(BgL_test4685z00_9421)
{ /* Llib/hash.scm 567 */
VECTOR_SET(BgL_vectorz00_3741,BgL_arg1595z00_1941,BFALSE); }  else 
{ 
 obj_t BgL_auxz00_9426;
BgL_auxz00_9426 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22316L), BGl_string3924z00zz__hashz00, BgL_vectorz00_3741, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3741)), 
(int)(BgL_arg1595z00_1941)); 
FAILURE(BgL_auxz00_9426,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 568 */
 long BgL_arg1597z00_1942;
BgL_arg1597z00_1942 = 
(BgL_iz00_1931+2L); 
{ /* Llib/hash.scm 568 */
 obj_t BgL_vectorz00_3744;
if(
VECTORP(BgL_bucketsz00_1929))
{ /* Llib/hash.scm 568 */
BgL_vectorz00_3744 = BgL_bucketsz00_1929; }  else 
{ 
 obj_t BgL_auxz00_9436;
BgL_auxz00_9436 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22368L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1929); 
FAILURE(BgL_auxz00_9436,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 568 */
 bool_t BgL_test4687z00_9440;
{ /* Llib/hash.scm 568 */
 long BgL_tmpz00_9441;
BgL_tmpz00_9441 = 
VECTOR_LENGTH(BgL_vectorz00_3744); 
BgL_test4687z00_9440 = 
BOUND_CHECK(BgL_arg1597z00_1942, BgL_tmpz00_9441); } 
if(BgL_test4687z00_9440)
{ /* Llib/hash.scm 568 */
VECTOR_SET(BgL_vectorz00_3744,BgL_arg1597z00_1942,BFALSE); }  else 
{ 
 obj_t BgL_auxz00_9445;
BgL_auxz00_9445 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22355L), BGl_string3924z00zz__hashz00, BgL_vectorz00_3744, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3744)), 
(int)(BgL_arg1597z00_1942)); 
FAILURE(BgL_auxz00_9445,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 1303 */
 long BgL_arg2042z00_3746;
{ /* Llib/hash.scm 1303 */
 obj_t BgL_arg2043z00_3747;
{ /* Llib/hash.scm 1272 */
 bool_t BgL_test4688z00_9452;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_tmpz00_9453;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_res2563z00_3751;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_aux3231z00_6112;
BgL_aux3231z00_6112 = 
STRUCT_KEY(BgL_tablez00_83); 
if(
SYMBOLP(BgL_aux3231z00_6112))
{ /* Llib/hash.scm 1272 */
BgL_res2563z00_3751 = BgL_aux3231z00_6112; }  else 
{ 
 obj_t BgL_auxz00_9457;
BgL_auxz00_9457 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50571L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3231z00_6112); 
FAILURE(BgL_auxz00_9457,BFALSE,BFALSE);} } 
BgL_tmpz00_9453 = BgL_res2563z00_3751; } 
BgL_test4688z00_9452 = 
(BgL_tmpz00_9453==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4688z00_9452)
{ /* Llib/hash.scm 1272 */
 int BgL_tmpz00_9462;
BgL_tmpz00_9462 = 
(int)(6L); 
BgL_arg2043z00_3747 = 
STRUCT_REF(BgL_tablez00_83, BgL_tmpz00_9462); }  else 
{ /* Llib/hash.scm 1272 */
BgL_arg2043z00_3747 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_83); } } 
{ /* Llib/hash.scm 1303 */
 long BgL_za71za7_3752;
{ /* Llib/hash.scm 1303 */
 obj_t BgL_tmpz00_9466;
if(
INTEGERP(BgL_arg2043z00_3747))
{ /* Llib/hash.scm 1303 */
BgL_tmpz00_9466 = BgL_arg2043z00_3747
; }  else 
{ 
 obj_t BgL_auxz00_9469;
BgL_auxz00_9469 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51912L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2043z00_3747); 
FAILURE(BgL_auxz00_9469,BFALSE,BFALSE);} 
BgL_za71za7_3752 = 
(long)CINT(BgL_tmpz00_9466); } 
BgL_arg2042z00_3746 = 
(BgL_za71za7_3752+1L); } } 
{ /* Llib/hash.scm 1273 */
 bool_t BgL_test4691z00_9475;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_tmpz00_9476;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_res2564z00_3756;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_aux3234z00_6115;
BgL_aux3234z00_6115 = 
STRUCT_KEY(BgL_tablez00_83); 
if(
SYMBOLP(BgL_aux3234z00_6115))
{ /* Llib/hash.scm 1273 */
BgL_res2564z00_3756 = BgL_aux3234z00_6115; }  else 
{ 
 obj_t BgL_auxz00_9480;
BgL_auxz00_9480 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50639L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3234z00_6115); 
FAILURE(BgL_auxz00_9480,BFALSE,BFALSE);} } 
BgL_tmpz00_9476 = BgL_res2564z00_3756; } 
BgL_test4691z00_9475 = 
(BgL_tmpz00_9476==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4691z00_9475)
{ /* Llib/hash.scm 1273 */
 obj_t BgL_auxz00_9487; int BgL_tmpz00_9485;
BgL_auxz00_9487 = 
BINT(BgL_arg2042z00_3746); 
BgL_tmpz00_9485 = 
(int)(6L); 
STRUCT_SET(BgL_tablez00_83, BgL_tmpz00_9485, BgL_auxz00_9487); }  else 
{ /* Llib/hash.scm 1273 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_83); } } } } }  else 
{ /* Llib/hash.scm 565 */BFALSE; } } 
{ 
 long BgL_iz00_9491;
BgL_iz00_9491 = 
(BgL_iz00_1931+3L); 
BgL_iz00_1931 = BgL_iz00_9491; 
goto BgL_zc3z04anonymousza31582ze3z87_1932;} } 
return 
BBOOL(BgL_tmpz00_9323);} } } } } } } 

}



/* &open-string-hashtable-filter! */
obj_t BGl_z62openzd2stringzd2hashtablezd2filterz12za2zz__hashz00(obj_t BgL_envz00_5448, obj_t BgL_tablez00_5449, obj_t BgL_funz00_5450)
{
{ /* Llib/hash.scm 559 */
{ /* Llib/hash.scm 560 */
 obj_t BgL_auxz00_9501; obj_t BgL_auxz00_9494;
if(
PROCEDUREP(BgL_funz00_5450))
{ /* Llib/hash.scm 560 */
BgL_auxz00_9501 = BgL_funz00_5450
; }  else 
{ 
 obj_t BgL_auxz00_9504;
BgL_auxz00_9504 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22004L), BGl_string3978z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_funz00_5450); 
FAILURE(BgL_auxz00_9504,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5449))
{ /* Llib/hash.scm 560 */
BgL_auxz00_9494 = BgL_tablez00_5449
; }  else 
{ 
 obj_t BgL_auxz00_9497;
BgL_auxz00_9497 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22004L), BGl_string3978z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5449); 
FAILURE(BgL_auxz00_9497,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2filterz12zc0zz__hashz00(BgL_auxz00_9494, BgL_auxz00_9501);} } 

}



/* plain-hashtable-filter! */
obj_t BGl_plainzd2hashtablezd2filterz12z12zz__hashz00(obj_t BgL_tablez00_85, obj_t BgL_funz00_86)
{
{ /* Llib/hash.scm 575 */
{ /* Llib/hash.scm 576 */
 obj_t BgL_bucketsz00_1950;
{ /* Llib/hash.scm 576 */
 bool_t BgL_test4695z00_9509;
{ /* Llib/hash.scm 576 */
 obj_t BgL_tmpz00_9510;
{ /* Llib/hash.scm 576 */
 obj_t BgL_res2565z00_3761;
{ /* Llib/hash.scm 576 */
 obj_t BgL_aux3240z00_6121;
BgL_aux3240z00_6121 = 
STRUCT_KEY(BgL_tablez00_85); 
if(
SYMBOLP(BgL_aux3240z00_6121))
{ /* Llib/hash.scm 576 */
BgL_res2565z00_3761 = BgL_aux3240z00_6121; }  else 
{ 
 obj_t BgL_auxz00_9514;
BgL_auxz00_9514 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22773L), BGl_string3979z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3240z00_6121); 
FAILURE(BgL_auxz00_9514,BFALSE,BFALSE);} } 
BgL_tmpz00_9510 = BgL_res2565z00_3761; } 
BgL_test4695z00_9509 = 
(BgL_tmpz00_9510==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4695z00_9509)
{ /* Llib/hash.scm 576 */
 int BgL_tmpz00_9519;
BgL_tmpz00_9519 = 
(int)(2L); 
BgL_bucketsz00_1950 = 
STRUCT_REF(BgL_tablez00_85, BgL_tmpz00_9519); }  else 
{ /* Llib/hash.scm 576 */
BgL_bucketsz00_1950 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_85); } } 
{ /* Llib/hash.scm 576 */
 long BgL_bucketszd2lenzd2_1951;
{ /* Llib/hash.scm 577 */
 obj_t BgL_vectorz00_3762;
if(
VECTORP(BgL_bucketsz00_1950))
{ /* Llib/hash.scm 577 */
BgL_vectorz00_3762 = BgL_bucketsz00_1950; }  else 
{ 
 obj_t BgL_auxz00_9525;
BgL_auxz00_9525 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22832L), BGl_string3979z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1950); 
FAILURE(BgL_auxz00_9525,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1951 = 
VECTOR_LENGTH(BgL_vectorz00_3762); } 
{ /* Llib/hash.scm 577 */

{ 
 long BgL_iz00_1953; long BgL_deltaz00_1954;
BgL_iz00_1953 = 0L; 
BgL_deltaz00_1954 = 0L; 
BgL_zc3z04anonymousza31605ze3z87_1955:
if(
(BgL_iz00_1953<BgL_bucketszd2lenzd2_1951))
{ /* Llib/hash.scm 580 */
 obj_t BgL_lz00_1957;
{ /* Llib/hash.scm 580 */
 obj_t BgL_vectorz00_3765;
if(
VECTORP(BgL_bucketsz00_1950))
{ /* Llib/hash.scm 580 */
BgL_vectorz00_3765 = BgL_bucketsz00_1950; }  else 
{ 
 obj_t BgL_auxz00_9534;
BgL_auxz00_9534 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22934L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1950); 
FAILURE(BgL_auxz00_9534,BFALSE,BFALSE);} 
BgL_lz00_1957 = 
VECTOR_REF(BgL_vectorz00_3765,BgL_iz00_1953); } 
{ /* Llib/hash.scm 580 */
 long BgL_oldzd2lenzd2_1958;
{ /* Llib/hash.scm 581 */
 obj_t BgL_auxz00_9539;
{ /* Llib/hash.scm 581 */
 bool_t BgL_test4700z00_9540;
if(
PAIRP(BgL_lz00_1957))
{ /* Llib/hash.scm 581 */
BgL_test4700z00_9540 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 581 */
BgL_test4700z00_9540 = 
NULLP(BgL_lz00_1957)
; } 
if(BgL_test4700z00_9540)
{ /* Llib/hash.scm 581 */
BgL_auxz00_9539 = BgL_lz00_1957
; }  else 
{ 
 obj_t BgL_auxz00_9544;
BgL_auxz00_9544 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(22983L), BGl_string3922z00zz__hashz00, BGl_string3980z00zz__hashz00, BgL_lz00_1957); 
FAILURE(BgL_auxz00_9544,BFALSE,BFALSE);} } 
BgL_oldzd2lenzd2_1958 = 
bgl_list_length(BgL_auxz00_9539); } 
{ /* Llib/hash.scm 581 */
 obj_t BgL_newlz00_1959;
{ /* Llib/hash.scm 583 */
 obj_t BgL_zc3z04anonymousza31611ze3z87_5451;
BgL_zc3z04anonymousza31611ze3z87_5451 = 
MAKE_FX_PROCEDURE(BGl_z62zc3z04anonymousza31611ze3ze5zz__hashz00, 
(int)(1L), 
(int)(1L)); 
PROCEDURE_SET(BgL_zc3z04anonymousza31611ze3z87_5451, 
(int)(0L), BgL_funz00_86); 
{ /* Llib/hash.scm 582 */
 obj_t BgL_auxz00_9554;
{ /* Llib/hash.scm 584 */
 bool_t BgL_test4702z00_9555;
if(
PAIRP(BgL_lz00_1957))
{ /* Llib/hash.scm 584 */
BgL_test4702z00_9555 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 584 */
BgL_test4702z00_9555 = 
NULLP(BgL_lz00_1957)
; } 
if(BgL_test4702z00_9555)
{ /* Llib/hash.scm 584 */
BgL_auxz00_9554 = BgL_lz00_1957
; }  else 
{ 
 obj_t BgL_auxz00_9559;
BgL_auxz00_9559 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23084L), BGl_string3922z00zz__hashz00, BGl_string3980z00zz__hashz00, BgL_lz00_1957); 
FAILURE(BgL_auxz00_9559,BFALSE,BFALSE);} } 
BgL_newlz00_1959 = 
BGl_filterz12z12zz__r4_control_features_6_9z00(BgL_zc3z04anonymousza31611ze3z87_5451, BgL_auxz00_9554); } } 
{ /* Llib/hash.scm 582 */
 long BgL_newzd2lenzd2_1960;
BgL_newzd2lenzd2_1960 = 
bgl_list_length(BgL_newlz00_1959); 
{ /* Llib/hash.scm 585 */

{ /* Llib/hash.scm 586 */
 obj_t BgL_vectorz00_3771;
if(
VECTORP(BgL_bucketsz00_1950))
{ /* Llib/hash.scm 586 */
BgL_vectorz00_3771 = BgL_bucketsz00_1950; }  else 
{ 
 obj_t BgL_auxz00_9567;
BgL_auxz00_9567 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23151L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1950); 
FAILURE(BgL_auxz00_9567,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_3771,BgL_iz00_1953,BgL_newlz00_1959); } 
{ 
 long BgL_deltaz00_9574; long BgL_iz00_9572;
BgL_iz00_9572 = 
(BgL_iz00_1953+1L); 
BgL_deltaz00_9574 = 
(BgL_deltaz00_1954+
(BgL_newzd2lenzd2_1960-BgL_oldzd2lenzd2_1958)); 
BgL_deltaz00_1954 = BgL_deltaz00_9574; 
BgL_iz00_1953 = BgL_iz00_9572; 
goto BgL_zc3z04anonymousza31605ze3z87_1955;} } } } } }  else 
{ /* Llib/hash.scm 589 */
 long BgL_arg1615z00_1970;
{ /* Llib/hash.scm 589 */
 obj_t BgL_arg1616z00_1971;
{ /* Llib/hash.scm 589 */
 bool_t BgL_test4705z00_9577;
{ /* Llib/hash.scm 589 */
 obj_t BgL_tmpz00_9578;
{ /* Llib/hash.scm 589 */
 obj_t BgL_res2566z00_3781;
{ /* Llib/hash.scm 589 */
 obj_t BgL_aux3252z00_6133;
BgL_aux3252z00_6133 = 
STRUCT_KEY(BgL_tablez00_85); 
if(
SYMBOLP(BgL_aux3252z00_6133))
{ /* Llib/hash.scm 589 */
BgL_res2566z00_3781 = BgL_aux3252z00_6133; }  else 
{ 
 obj_t BgL_auxz00_9582;
BgL_auxz00_9582 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23275L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3252z00_6133); 
FAILURE(BgL_auxz00_9582,BFALSE,BFALSE);} } 
BgL_tmpz00_9578 = BgL_res2566z00_3781; } 
BgL_test4705z00_9577 = 
(BgL_tmpz00_9578==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4705z00_9577)
{ /* Llib/hash.scm 589 */
 int BgL_tmpz00_9587;
BgL_tmpz00_9587 = 
(int)(0L); 
BgL_arg1616z00_1971 = 
STRUCT_REF(BgL_tablez00_85, BgL_tmpz00_9587); }  else 
{ /* Llib/hash.scm 589 */
BgL_arg1616z00_1971 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_85); } } 
{ /* Llib/hash.scm 589 */
 long BgL_za72za7_3783;
{ /* Llib/hash.scm 589 */
 obj_t BgL_tmpz00_9591;
if(
INTEGERP(BgL_arg1616z00_1971))
{ /* Llib/hash.scm 589 */
BgL_tmpz00_9591 = BgL_arg1616z00_1971
; }  else 
{ 
 obj_t BgL_auxz00_9594;
BgL_auxz00_9594 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23297L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1616z00_1971); 
FAILURE(BgL_auxz00_9594,BFALSE,BFALSE);} 
BgL_za72za7_3783 = 
(long)CINT(BgL_tmpz00_9591); } 
BgL_arg1615z00_1970 = 
(BgL_deltaz00_1954+BgL_za72za7_3783); } } 
{ /* Llib/hash.scm 588 */
 bool_t BgL_test4708z00_9600;
{ /* Llib/hash.scm 588 */
 obj_t BgL_tmpz00_9601;
{ /* Llib/hash.scm 588 */
 obj_t BgL_res2567z00_3787;
{ /* Llib/hash.scm 588 */
 obj_t BgL_aux3255z00_6136;
BgL_aux3255z00_6136 = 
STRUCT_KEY(BgL_tablez00_85); 
if(
SYMBOLP(BgL_aux3255z00_6136))
{ /* Llib/hash.scm 588 */
BgL_res2567z00_3787 = BgL_aux3255z00_6136; }  else 
{ 
 obj_t BgL_auxz00_9605;
BgL_auxz00_9605 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23234L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3255z00_6136); 
FAILURE(BgL_auxz00_9605,BFALSE,BFALSE);} } 
BgL_tmpz00_9601 = BgL_res2567z00_3787; } 
BgL_test4708z00_9600 = 
(BgL_tmpz00_9601==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4708z00_9600)
{ /* Llib/hash.scm 588 */
 obj_t BgL_auxz00_9612; int BgL_tmpz00_9610;
BgL_auxz00_9612 = 
BINT(BgL_arg1615z00_1970); 
BgL_tmpz00_9610 = 
(int)(0L); 
return 
STRUCT_SET(BgL_tablez00_85, BgL_tmpz00_9610, BgL_auxz00_9612);}  else 
{ /* Llib/hash.scm 588 */
return 
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_85);} } } } } } } } 

}



/* &<@anonymous:1611> */
obj_t BGl_z62zc3z04anonymousza31611ze3ze5zz__hashz00(obj_t BgL_envz00_5452, obj_t BgL_cellz00_5454)
{
{ /* Llib/hash.scm 582 */
{ /* Llib/hash.scm 583 */
 obj_t BgL_funz00_5453;
BgL_funz00_5453 = 
((obj_t)
PROCEDURE_REF(BgL_envz00_5452, 
(int)(0L))); 
{ /* Llib/hash.scm 583 */
 obj_t BgL_arg1613z00_6748; obj_t BgL_arg1614z00_6749;
{ /* Llib/hash.scm 583 */
 obj_t BgL_pairz00_6750;
if(
PAIRP(BgL_cellz00_5454))
{ /* Llib/hash.scm 583 */
BgL_pairz00_6750 = BgL_cellz00_5454; }  else 
{ 
 obj_t BgL_auxz00_9621;
BgL_auxz00_9621 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23057L), BGl_string3981z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_5454); 
FAILURE(BgL_auxz00_9621,BFALSE,BFALSE);} 
BgL_arg1613z00_6748 = 
CAR(BgL_pairz00_6750); } 
{ /* Llib/hash.scm 583 */
 obj_t BgL_pairz00_6751;
if(
PAIRP(BgL_cellz00_5454))
{ /* Llib/hash.scm 583 */
BgL_pairz00_6751 = BgL_cellz00_5454; }  else 
{ 
 obj_t BgL_auxz00_9628;
BgL_auxz00_9628 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23068L), BGl_string3981z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_5454); 
FAILURE(BgL_auxz00_9628,BFALSE,BFALSE);} 
BgL_arg1614z00_6749 = 
CDR(BgL_pairz00_6751); } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_5453, 2L))
{ /* Llib/hash.scm 583 */
return 
(VA_PROCEDUREP( BgL_funz00_5453 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_5453))(BgL_funz00_5453, BgL_arg1613z00_6748, BgL_arg1614z00_6749, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_5453))(BgL_funz00_5453, BgL_arg1613z00_6748, BgL_arg1614z00_6749) );}  else 
{ /* Llib/hash.scm 583 */
FAILURE(BGl_string3982z00zz__hashz00,BGl_list3983z00zz__hashz00,BgL_funz00_5453);} } } } 

}



/* hashtable-clear! */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2clearz12zc0zz__hashz00(obj_t BgL_tablez00_87)
{
{ /* Llib/hash.scm 594 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_87))
{ /* Llib/hash.scm 596 */
BGL_TAIL return 
BGl_openzd2stringzd2hashtablezd2clearz12zc0zz__hashz00(BgL_tablez00_87);}  else 
{ /* Llib/hash.scm 596 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_87))
{ /* Llib/hash.scm 598 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2clearz12z12zz__weakhashz00(BgL_tablez00_87);}  else 
{ /* Llib/hash.scm 598 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2clearz12z12zz__hashz00(BgL_tablez00_87);} } } 

}



/* &hashtable-clear! */
obj_t BGl_z62hashtablezd2clearz12za2zz__hashz00(obj_t BgL_envz00_5455, obj_t BgL_tablez00_5456)
{
{ /* Llib/hash.scm 594 */
{ /* Llib/hash.scm 596 */
 obj_t BgL_auxz00_9648;
if(
STRUCTP(BgL_tablez00_5456))
{ /* Llib/hash.scm 596 */
BgL_auxz00_9648 = BgL_tablez00_5456
; }  else 
{ 
 obj_t BgL_auxz00_9651;
BgL_auxz00_9651 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(23584L), BGl_string3988z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5456); 
FAILURE(BgL_auxz00_9651,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2clearz12zc0zz__hashz00(BgL_auxz00_9648);} } 

}



/* open-string-hashtable-clear! */
obj_t BGl_openzd2stringzd2hashtablezd2clearz12zc0zz__hashz00(obj_t BgL_tablez00_88)
{
{ /* Llib/hash.scm 606 */
{ /* Llib/hash.scm 607 */
 obj_t BgL_arg1619z00_1975;
{ /* Llib/hash.scm 607 */
 bool_t BgL_test4716z00_9656;
{ /* Llib/hash.scm 607 */
 obj_t BgL_tmpz00_9657;
{ /* Llib/hash.scm 607 */
 obj_t BgL_res2568z00_3791;
{ /* Llib/hash.scm 607 */
 obj_t BgL_aux3264z00_6146;
BgL_aux3264z00_6146 = 
STRUCT_KEY(BgL_tablez00_88); 
if(
SYMBOLP(BgL_aux3264z00_6146))
{ /* Llib/hash.scm 607 */
BgL_res2568z00_3791 = BgL_aux3264z00_6146; }  else 
{ 
 obj_t BgL_auxz00_9661;
BgL_auxz00_9661 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24068L), BGl_string3989z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3264z00_6146); 
FAILURE(BgL_auxz00_9661,BFALSE,BFALSE);} } 
BgL_tmpz00_9657 = BgL_res2568z00_3791; } 
BgL_test4716z00_9656 = 
(BgL_tmpz00_9657==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4716z00_9656)
{ /* Llib/hash.scm 607 */
 int BgL_tmpz00_9666;
BgL_tmpz00_9666 = 
(int)(2L); 
BgL_arg1619z00_1975 = 
STRUCT_REF(BgL_tablez00_88, BgL_tmpz00_9666); }  else 
{ /* Llib/hash.scm 607 */
BgL_arg1619z00_1975 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_88); } } 
{ /* Ieee/vector.scm 105 */
 long BgL_endz00_1979;
{ /* Ieee/vector.scm 105 */
 obj_t BgL_vectorz00_3792;
if(
VECTORP(BgL_arg1619z00_1975))
{ /* Ieee/vector.scm 105 */
BgL_vectorz00_3792 = BgL_arg1619z00_1975; }  else 
{ 
 obj_t BgL_auxz00_9672;
BgL_auxz00_9672 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3990z00zz__hashz00, 
BINT(4906L), BGl_string3989z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_arg1619z00_1975); 
FAILURE(BgL_auxz00_9672,BFALSE,BFALSE);} 
BgL_endz00_1979 = 
VECTOR_LENGTH(BgL_vectorz00_3792); } 
{ /* Ieee/vector.scm 105 */

{ /* Ieee/vector.scm 105 */
 obj_t BgL_auxz00_9677;
if(
VECTORP(BgL_arg1619z00_1975))
{ /* Llib/hash.scm 607 */
BgL_auxz00_9677 = BgL_arg1619z00_1975
; }  else 
{ 
 obj_t BgL_auxz00_9680;
BgL_auxz00_9680 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24093L), BGl_string3989z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_arg1619z00_1975); 
FAILURE(BgL_auxz00_9680,BFALSE,BFALSE);} 
BGl_vectorzd2fillz12zc0zz__r4_vectors_6_8z00(BgL_auxz00_9677, BFALSE, 0L, BgL_endz00_1979); } } } } 
{ /* Llib/hash.scm 1273 */
 bool_t BgL_test4720z00_9685;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_tmpz00_9686;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_res2569z00_3796;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_aux3270z00_6152;
BgL_aux3270z00_6152 = 
STRUCT_KEY(BgL_tablez00_88); 
if(
SYMBOLP(BgL_aux3270z00_6152))
{ /* Llib/hash.scm 1273 */
BgL_res2569z00_3796 = BgL_aux3270z00_6152; }  else 
{ 
 obj_t BgL_auxz00_9690;
BgL_auxz00_9690 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50639L), BGl_string3989z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3270z00_6152); 
FAILURE(BgL_auxz00_9690,BFALSE,BFALSE);} } 
BgL_tmpz00_9686 = BgL_res2569z00_3796; } 
BgL_test4720z00_9685 = 
(BgL_tmpz00_9686==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4720z00_9685)
{ /* Llib/hash.scm 1273 */
 obj_t BgL_auxz00_9697; int BgL_tmpz00_9695;
BgL_auxz00_9697 = 
BINT(0L); 
BgL_tmpz00_9695 = 
(int)(6L); 
STRUCT_SET(BgL_tablez00_88, BgL_tmpz00_9695, BgL_auxz00_9697); }  else 
{ /* Llib/hash.scm 1273 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_88); } } 
{ /* Llib/hash.scm 609 */
 bool_t BgL_test4722z00_9701;
{ /* Llib/hash.scm 609 */
 obj_t BgL_tmpz00_9702;
{ /* Llib/hash.scm 609 */
 obj_t BgL_res2570z00_3800;
{ /* Llib/hash.scm 609 */
 obj_t BgL_aux3272z00_6154;
BgL_aux3272z00_6154 = 
STRUCT_KEY(BgL_tablez00_88); 
if(
SYMBOLP(BgL_aux3272z00_6154))
{ /* Llib/hash.scm 609 */
BgL_res2570z00_3800 = BgL_aux3272z00_6154; }  else 
{ 
 obj_t BgL_auxz00_9706;
BgL_auxz00_9706 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24142L), BGl_string3989z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3272z00_6154); 
FAILURE(BgL_auxz00_9706,BFALSE,BFALSE);} } 
BgL_tmpz00_9702 = BgL_res2570z00_3800; } 
BgL_test4722z00_9701 = 
(BgL_tmpz00_9702==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4722z00_9701)
{ /* Llib/hash.scm 609 */
 obj_t BgL_auxz00_9713; int BgL_tmpz00_9711;
BgL_auxz00_9713 = 
BINT(0L); 
BgL_tmpz00_9711 = 
(int)(0L); 
return 
STRUCT_SET(BgL_tablez00_88, BgL_tmpz00_9711, BgL_auxz00_9713);}  else 
{ /* Llib/hash.scm 609 */
return 
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_88);} } } 

}



/* plain-hashtable-clear! */
obj_t BGl_plainzd2hashtablezd2clearz12z12zz__hashz00(obj_t BgL_tablez00_89)
{
{ /* Llib/hash.scm 614 */
{ /* Llib/hash.scm 615 */
 obj_t BgL_bucketsz00_1980;
{ /* Llib/hash.scm 615 */
 bool_t BgL_test4724z00_9717;
{ /* Llib/hash.scm 615 */
 obj_t BgL_tmpz00_9718;
{ /* Llib/hash.scm 615 */
 obj_t BgL_res2571z00_3804;
{ /* Llib/hash.scm 615 */
 obj_t BgL_aux3274z00_6156;
BgL_aux3274z00_6156 = 
STRUCT_KEY(BgL_tablez00_89); 
if(
SYMBOLP(BgL_aux3274z00_6156))
{ /* Llib/hash.scm 615 */
BgL_res2571z00_3804 = BgL_aux3274z00_6156; }  else 
{ 
 obj_t BgL_auxz00_9722;
BgL_auxz00_9722 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24466L), BGl_string3991z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3274z00_6156); 
FAILURE(BgL_auxz00_9722,BFALSE,BFALSE);} } 
BgL_tmpz00_9718 = BgL_res2571z00_3804; } 
BgL_test4724z00_9717 = 
(BgL_tmpz00_9718==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4724z00_9717)
{ /* Llib/hash.scm 615 */
 int BgL_tmpz00_9727;
BgL_tmpz00_9727 = 
(int)(2L); 
BgL_bucketsz00_1980 = 
STRUCT_REF(BgL_tablez00_89, BgL_tmpz00_9727); }  else 
{ /* Llib/hash.scm 615 */
BgL_bucketsz00_1980 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_89); } } 
{ /* Llib/hash.scm 615 */
 long BgL_bucketszd2lenzd2_1981;
{ /* Llib/hash.scm 616 */
 obj_t BgL_vectorz00_3805;
if(
VECTORP(BgL_bucketsz00_1980))
{ /* Llib/hash.scm 616 */
BgL_vectorz00_3805 = BgL_bucketsz00_1980; }  else 
{ 
 obj_t BgL_auxz00_9733;
BgL_auxz00_9733 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24525L), BGl_string3991z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1980); 
FAILURE(BgL_auxz00_9733,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_1981 = 
VECTOR_LENGTH(BgL_vectorz00_3805); } 
{ /* Llib/hash.scm 616 */

{ 
 long BgL_iz00_3816;
BgL_iz00_3816 = 0L; 
BgL_loopz00_3815:
if(
(BgL_iz00_3816<BgL_bucketszd2lenzd2_1981))
{ /* Llib/hash.scm 618 */
{ /* Llib/hash.scm 620 */
 obj_t BgL_vectorz00_3820;
if(
VECTORP(BgL_bucketsz00_1980))
{ /* Llib/hash.scm 620 */
BgL_vectorz00_3820 = BgL_bucketsz00_1980; }  else 
{ 
 obj_t BgL_auxz00_9742;
BgL_auxz00_9742 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24617L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1980); 
FAILURE(BgL_auxz00_9742,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_3820,BgL_iz00_3816,BNIL); } 
{ 
 long BgL_iz00_9747;
BgL_iz00_9747 = 
(BgL_iz00_3816+1L); 
BgL_iz00_3816 = BgL_iz00_9747; 
goto BgL_loopz00_3815;} }  else 
{ /* Llib/hash.scm 622 */
 bool_t BgL_test4729z00_9749;
{ /* Llib/hash.scm 622 */
 obj_t BgL_tmpz00_9750;
{ /* Llib/hash.scm 622 */
 obj_t BgL_res2572z00_3826;
{ /* Llib/hash.scm 622 */
 obj_t BgL_aux3280z00_6162;
BgL_aux3280z00_6162 = 
STRUCT_KEY(BgL_tablez00_89); 
if(
SYMBOLP(BgL_aux3280z00_6162))
{ /* Llib/hash.scm 622 */
BgL_res2572z00_3826 = BgL_aux3280z00_6162; }  else 
{ 
 obj_t BgL_auxz00_9754;
BgL_auxz00_9754 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24665L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3280z00_6162); 
FAILURE(BgL_auxz00_9754,BFALSE,BFALSE);} } 
BgL_tmpz00_9750 = BgL_res2572z00_3826; } 
BgL_test4729z00_9749 = 
(BgL_tmpz00_9750==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4729z00_9749)
{ /* Llib/hash.scm 622 */
 obj_t BgL_auxz00_9761; int BgL_tmpz00_9759;
BgL_auxz00_9761 = 
BINT(0L); 
BgL_tmpz00_9759 = 
(int)(0L); 
return 
STRUCT_SET(BgL_tablez00_89, BgL_tmpz00_9759, BgL_auxz00_9761);}  else 
{ /* Llib/hash.scm 622 */
return 
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_89);} } } } } } } 

}



/* hashtable-contains? */
BGL_EXPORTED_DEF bool_t BGl_hashtablezd2containszf3z21zz__hashz00(obj_t BgL_tablez00_90, obj_t BgL_keyz00_91)
{
{ /* Llib/hash.scm 627 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_90))
{ /* Llib/hash.scm 630 */
 obj_t BgL_tmpz00_9767;
{ /* Llib/hash.scm 630 */
 obj_t BgL_auxz00_9768;
if(
STRINGP(BgL_keyz00_91))
{ /* Llib/hash.scm 630 */
BgL_auxz00_9768 = BgL_keyz00_91
; }  else 
{ 
 obj_t BgL_auxz00_9771;
BgL_auxz00_9771 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25069L), BGl_string3992z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_91); 
FAILURE(BgL_auxz00_9771,BFALSE,BFALSE);} 
BgL_tmpz00_9767 = 
BGl_openzd2stringzd2hashtablezd2containszf3z21zz__hashz00(BgL_tablez00_90, BgL_auxz00_9768); } 
return 
CBOOL(BgL_tmpz00_9767);}  else 
{ /* Llib/hash.scm 629 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_90))
{ /* Llib/hash.scm 631 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2containszf3zf3zz__weakhashz00(BgL_tablez00_90, BgL_keyz00_91);}  else 
{ /* Llib/hash.scm 631 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2containszf3zf3zz__hashz00(BgL_tablez00_90, BgL_keyz00_91);} } } 

}



/* &hashtable-contains? */
obj_t BGl_z62hashtablezd2containszf3z43zz__hashz00(obj_t BgL_envz00_5457, obj_t BgL_tablez00_5458, obj_t BgL_keyz00_5459)
{
{ /* Llib/hash.scm 627 */
{ /* Llib/hash.scm 629 */
 bool_t BgL_tmpz00_9781;
{ /* Llib/hash.scm 629 */
 obj_t BgL_auxz00_9782;
if(
STRUCTP(BgL_tablez00_5458))
{ /* Llib/hash.scm 629 */
BgL_auxz00_9782 = BgL_tablez00_5458
; }  else 
{ 
 obj_t BgL_auxz00_9785;
BgL_auxz00_9785 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(24991L), BGl_string3993z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5458); 
FAILURE(BgL_auxz00_9785,BFALSE,BFALSE);} 
BgL_tmpz00_9781 = 
BGl_hashtablezd2containszf3z21zz__hashz00(BgL_auxz00_9782, BgL_keyz00_5459); } 
return 
BBOOL(BgL_tmpz00_9781);} } 

}



/* open-string-hashtable-contains? */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2containszf3z21zz__hashz00(obj_t BgL_tz00_92, obj_t BgL_keyz00_93)
{
{ /* Llib/hash.scm 639 */
{ /* Llib/hash.scm 640 */
 obj_t BgL_siza7eza7_1990;
{ /* Llib/hash.scm 640 */
 bool_t BgL_test4735z00_9791;
{ /* Llib/hash.scm 640 */
 obj_t BgL_tmpz00_9792;
{ /* Llib/hash.scm 640 */
 obj_t BgL_res2573z00_3833;
{ /* Llib/hash.scm 640 */
 obj_t BgL_aux3286z00_6168;
BgL_aux3286z00_6168 = 
STRUCT_KEY(BgL_tz00_92); 
if(
SYMBOLP(BgL_aux3286z00_6168))
{ /* Llib/hash.scm 640 */
BgL_res2573z00_3833 = BgL_aux3286z00_6168; }  else 
{ 
 obj_t BgL_auxz00_9796;
BgL_auxz00_9796 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25498L), BGl_string3994z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3286z00_6168); 
FAILURE(BgL_auxz00_9796,BFALSE,BFALSE);} } 
BgL_tmpz00_9792 = BgL_res2573z00_3833; } 
BgL_test4735z00_9791 = 
(BgL_tmpz00_9792==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4735z00_9791)
{ /* Llib/hash.scm 640 */
 int BgL_tmpz00_9801;
BgL_tmpz00_9801 = 
(int)(1L); 
BgL_siza7eza7_1990 = 
STRUCT_REF(BgL_tz00_92, BgL_tmpz00_9801); }  else 
{ /* Llib/hash.scm 640 */
BgL_siza7eza7_1990 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_92); } } 
{ /* Llib/hash.scm 640 */
 obj_t BgL_bucketsz00_1991;
{ /* Llib/hash.scm 641 */
 bool_t BgL_test4737z00_9805;
{ /* Llib/hash.scm 641 */
 obj_t BgL_tmpz00_9806;
{ /* Llib/hash.scm 641 */
 obj_t BgL_res2574z00_3837;
{ /* Llib/hash.scm 641 */
 obj_t BgL_aux3288z00_6170;
BgL_aux3288z00_6170 = 
STRUCT_KEY(BgL_tz00_92); 
if(
SYMBOLP(BgL_aux3288z00_6170))
{ /* Llib/hash.scm 641 */
BgL_res2574z00_3837 = BgL_aux3288z00_6170; }  else 
{ 
 obj_t BgL_auxz00_9810;
BgL_auxz00_9810 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25541L), BGl_string3994z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3288z00_6170); 
FAILURE(BgL_auxz00_9810,BFALSE,BFALSE);} } 
BgL_tmpz00_9806 = BgL_res2574z00_3837; } 
BgL_test4737z00_9805 = 
(BgL_tmpz00_9806==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4737z00_9805)
{ /* Llib/hash.scm 641 */
 int BgL_tmpz00_9815;
BgL_tmpz00_9815 = 
(int)(2L); 
BgL_bucketsz00_1991 = 
STRUCT_REF(BgL_tz00_92, BgL_tmpz00_9815); }  else 
{ /* Llib/hash.scm 641 */
BgL_bucketsz00_1991 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_92); } } 
{ /* Llib/hash.scm 641 */
 long BgL_hashz00_1992;
{ /* Llib/hash.scm 642 */
 long BgL_arg1640z00_2014;
BgL_arg1640z00_2014 = 
STRING_LENGTH(BgL_keyz00_93); 
BgL_hashz00_1992 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_93), 
(int)(0L), 
(int)(BgL_arg1640z00_2014)); } 
{ /* Llib/hash.scm 642 */

{ /* Llib/hash.scm 644 */
 long BgL_g1068z00_1993;
{ /* Llib/hash.scm 644 */
 long BgL_n1z00_3839; long BgL_n2z00_3840;
BgL_n1z00_3839 = BgL_hashz00_1992; 
{ /* Llib/hash.scm 644 */
 obj_t BgL_tmpz00_9824;
if(
INTEGERP(BgL_siza7eza7_1990))
{ /* Llib/hash.scm 644 */
BgL_tmpz00_9824 = BgL_siza7eza7_1990
; }  else 
{ 
 obj_t BgL_auxz00_9827;
BgL_auxz00_9827 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25679L), BGl_string3994z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1990); 
FAILURE(BgL_auxz00_9827,BFALSE,BFALSE);} 
BgL_n2z00_3840 = 
(long)CINT(BgL_tmpz00_9824); } 
{ /* Llib/hash.scm 644 */
 bool_t BgL_test4740z00_9832;
{ /* Llib/hash.scm 644 */
 long BgL_arg2216z00_3842;
BgL_arg2216z00_3842 = 
(((BgL_n1z00_3839) | (BgL_n2z00_3840)) & -2147483648); 
BgL_test4740z00_9832 = 
(BgL_arg2216z00_3842==0L); } 
if(BgL_test4740z00_9832)
{ /* Llib/hash.scm 644 */
 int32_t BgL_arg2213z00_3843;
{ /* Llib/hash.scm 644 */
 int32_t BgL_arg2214z00_3844; int32_t BgL_arg2215z00_3845;
BgL_arg2214z00_3844 = 
(int32_t)(BgL_n1z00_3839); 
BgL_arg2215z00_3845 = 
(int32_t)(BgL_n2z00_3840); 
BgL_arg2213z00_3843 = 
(BgL_arg2214z00_3844%BgL_arg2215z00_3845); } 
{ /* Llib/hash.scm 644 */
 long BgL_arg2320z00_3850;
BgL_arg2320z00_3850 = 
(long)(BgL_arg2213z00_3843); 
BgL_g1068z00_1993 = 
(long)(BgL_arg2320z00_3850); } }  else 
{ /* Llib/hash.scm 644 */
BgL_g1068z00_1993 = 
(BgL_n1z00_3839%BgL_n2z00_3840); } } } 
{ 
 long BgL_offz00_1995; long BgL_iz00_1996;
BgL_offz00_1995 = BgL_g1068z00_1993; 
BgL_iz00_1996 = 1L; 
BgL_zc3z04anonymousza31625ze3z87_1997:
{ /* Llib/hash.scm 646 */
 long BgL_off3z00_1998;
BgL_off3z00_1998 = 
(BgL_offz00_1995*3L); 
{ /* Llib/hash.scm 647 */
 bool_t BgL_test4741z00_9842;
{ /* Llib/hash.scm 647 */
 obj_t BgL_vectorz00_3853;
if(
VECTORP(BgL_bucketsz00_1991))
{ /* Llib/hash.scm 647 */
BgL_vectorz00_3853 = BgL_bucketsz00_1991; }  else 
{ 
 obj_t BgL_auxz00_9845;
BgL_auxz00_9845 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25747L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1991); 
FAILURE(BgL_auxz00_9845,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 647 */
 bool_t BgL_test4743z00_9849;
{ /* Llib/hash.scm 647 */
 long BgL_tmpz00_9850;
BgL_tmpz00_9850 = 
VECTOR_LENGTH(BgL_vectorz00_3853); 
BgL_test4743z00_9849 = 
BOUND_CHECK(BgL_off3z00_1998, BgL_tmpz00_9850); } 
if(BgL_test4743z00_9849)
{ /* Llib/hash.scm 647 */
BgL_test4741z00_9842 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3853,BgL_off3z00_1998))
; }  else 
{ 
 obj_t BgL_auxz00_9855;
BgL_auxz00_9855 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25735L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3853, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3853)), 
(int)(BgL_off3z00_1998)); 
FAILURE(BgL_auxz00_9855,BFALSE,BFALSE);} } } 
if(BgL_test4741z00_9842)
{ /* Llib/hash.scm 648 */
 bool_t BgL_test4744z00_9862;
{ /* Llib/hash.scm 648 */
 obj_t BgL_arg1639z00_2012;
{ /* Llib/hash.scm 648 */
 obj_t BgL_vectorz00_3855;
if(
VECTORP(BgL_bucketsz00_1991))
{ /* Llib/hash.scm 648 */
BgL_vectorz00_3855 = BgL_bucketsz00_1991; }  else 
{ 
 obj_t BgL_auxz00_9865;
BgL_auxz00_9865 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25795L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1991); 
FAILURE(BgL_auxz00_9865,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 648 */
 bool_t BgL_test4746z00_9869;
{ /* Llib/hash.scm 648 */
 long BgL_tmpz00_9870;
BgL_tmpz00_9870 = 
VECTOR_LENGTH(BgL_vectorz00_3855); 
BgL_test4746z00_9869 = 
BOUND_CHECK(BgL_off3z00_1998, BgL_tmpz00_9870); } 
if(BgL_test4746z00_9869)
{ /* Llib/hash.scm 648 */
BgL_arg1639z00_2012 = 
VECTOR_REF(BgL_vectorz00_3855,BgL_off3z00_1998); }  else 
{ 
 obj_t BgL_auxz00_9874;
BgL_auxz00_9874 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25783L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3855, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3855)), 
(int)(BgL_off3z00_1998)); 
FAILURE(BgL_auxz00_9874,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 648 */
 obj_t BgL_string1z00_3857;
if(
STRINGP(BgL_arg1639z00_2012))
{ /* Llib/hash.scm 648 */
BgL_string1z00_3857 = BgL_arg1639z00_2012; }  else 
{ 
 obj_t BgL_auxz00_9883;
BgL_auxz00_9883 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25807L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1639z00_2012); 
FAILURE(BgL_auxz00_9883,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 648 */
 long BgL_l1z00_3859;
BgL_l1z00_3859 = 
STRING_LENGTH(BgL_string1z00_3857); 
if(
(BgL_l1z00_3859==
STRING_LENGTH(BgL_keyz00_93)))
{ /* Llib/hash.scm 648 */
 int BgL_arg2110z00_3862;
{ /* Llib/hash.scm 648 */
 char * BgL_auxz00_9893; char * BgL_tmpz00_9891;
BgL_auxz00_9893 = 
BSTRING_TO_STRING(BgL_keyz00_93); 
BgL_tmpz00_9891 = 
BSTRING_TO_STRING(BgL_string1z00_3857); 
BgL_arg2110z00_3862 = 
memcmp(BgL_tmpz00_9891, BgL_auxz00_9893, BgL_l1z00_3859); } 
BgL_test4744z00_9862 = 
(
(long)(BgL_arg2110z00_3862)==0L); }  else 
{ /* Llib/hash.scm 648 */
BgL_test4744z00_9862 = ((bool_t)0)
; } } } } 
if(BgL_test4744z00_9862)
{ /* Llib/hash.scm 649 */
 bool_t BgL_test4749z00_9898;
{ /* Llib/hash.scm 649 */
 long BgL_arg1633z00_2005;
BgL_arg1633z00_2005 = 
(BgL_off3z00_1998+1L); 
{ /* Llib/hash.scm 649 */
 obj_t BgL_vectorz00_3869;
if(
VECTORP(BgL_bucketsz00_1991))
{ /* Llib/hash.scm 649 */
BgL_vectorz00_3869 = BgL_bucketsz00_1991; }  else 
{ 
 obj_t BgL_auxz00_9902;
BgL_auxz00_9902 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25837L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1991); 
FAILURE(BgL_auxz00_9902,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 649 */
 bool_t BgL_test4751z00_9906;
{ /* Llib/hash.scm 649 */
 long BgL_tmpz00_9907;
BgL_tmpz00_9907 = 
VECTOR_LENGTH(BgL_vectorz00_3869); 
BgL_test4751z00_9906 = 
BOUND_CHECK(BgL_arg1633z00_2005, BgL_tmpz00_9907); } 
if(BgL_test4751z00_9906)
{ /* Llib/hash.scm 649 */
BgL_test4749z00_9898 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_3869,BgL_arg1633z00_2005))
; }  else 
{ 
 obj_t BgL_auxz00_9912;
BgL_auxz00_9912 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25825L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3869, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3869)), 
(int)(BgL_arg1633z00_2005)); 
FAILURE(BgL_auxz00_9912,BFALSE,BFALSE);} } } } 
if(BgL_test4749z00_9898)
{ /* Llib/hash.scm 650 */
 long BgL_arg1632z00_2004;
BgL_arg1632z00_2004 = 
(BgL_off3z00_1998+1L); 
{ /* Llib/hash.scm 650 */
 obj_t BgL_vectorz00_3872;
if(
VECTORP(BgL_bucketsz00_1991))
{ /* Llib/hash.scm 650 */
BgL_vectorz00_3872 = BgL_bucketsz00_1991; }  else 
{ 
 obj_t BgL_auxz00_9922;
BgL_auxz00_9922 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25879L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_1991); 
FAILURE(BgL_auxz00_9922,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 650 */
 bool_t BgL_test4753z00_9926;
{ /* Llib/hash.scm 650 */
 long BgL_tmpz00_9927;
BgL_tmpz00_9927 = 
VECTOR_LENGTH(BgL_vectorz00_3872); 
BgL_test4753z00_9926 = 
BOUND_CHECK(BgL_arg1632z00_2004, BgL_tmpz00_9927); } 
if(BgL_test4753z00_9926)
{ /* Llib/hash.scm 650 */
return 
VECTOR_REF(BgL_vectorz00_3872,BgL_arg1632z00_2004);}  else 
{ 
 obj_t BgL_auxz00_9931;
BgL_auxz00_9931 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25867L), BGl_string3872z00zz__hashz00, BgL_vectorz00_3872, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_3872)), 
(int)(BgL_arg1632z00_2004)); 
FAILURE(BgL_auxz00_9931,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 649 */
return BFALSE;} }  else 
{ /* Llib/hash.scm 651 */
 long BgL_noffz00_2006;
BgL_noffz00_2006 = 
(BgL_offz00_1995+
(BgL_iz00_1996*BgL_iz00_1996)); 
{ /* Llib/hash.scm 652 */
 bool_t BgL_test4754z00_9940;
{ /* Llib/hash.scm 652 */
 long BgL_n2z00_3879;
{ /* Llib/hash.scm 652 */
 obj_t BgL_tmpz00_9941;
if(
INTEGERP(BgL_siza7eza7_1990))
{ /* Llib/hash.scm 652 */
BgL_tmpz00_9941 = BgL_siza7eza7_1990
; }  else 
{ 
 obj_t BgL_auxz00_9944;
BgL_auxz00_9944 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25964L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1990); 
FAILURE(BgL_auxz00_9944,BFALSE,BFALSE);} 
BgL_n2z00_3879 = 
(long)CINT(BgL_tmpz00_9941); } 
BgL_test4754z00_9940 = 
(BgL_noffz00_2006>=BgL_n2z00_3879); } 
if(BgL_test4754z00_9940)
{ /* Llib/hash.scm 653 */
 long BgL_arg1635z00_2008; long BgL_arg1636z00_2009;
{ /* Llib/hash.scm 653 */
 long BgL_n1z00_3880; long BgL_n2z00_3881;
BgL_n1z00_3880 = BgL_noffz00_2006; 
{ /* Llib/hash.scm 653 */
 obj_t BgL_tmpz00_9950;
if(
INTEGERP(BgL_siza7eza7_1990))
{ /* Llib/hash.scm 653 */
BgL_tmpz00_9950 = BgL_siza7eza7_1990
; }  else 
{ 
 obj_t BgL_auxz00_9953;
BgL_auxz00_9953 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25999L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_1990); 
FAILURE(BgL_auxz00_9953,BFALSE,BFALSE);} 
BgL_n2z00_3881 = 
(long)CINT(BgL_tmpz00_9950); } 
{ /* Llib/hash.scm 653 */
 bool_t BgL_test4757z00_9958;
{ /* Llib/hash.scm 653 */
 long BgL_arg2216z00_3883;
BgL_arg2216z00_3883 = 
(((BgL_n1z00_3880) | (BgL_n2z00_3881)) & -2147483648); 
BgL_test4757z00_9958 = 
(BgL_arg2216z00_3883==0L); } 
if(BgL_test4757z00_9958)
{ /* Llib/hash.scm 653 */
 int32_t BgL_arg2213z00_3884;
{ /* Llib/hash.scm 653 */
 int32_t BgL_arg2214z00_3885; int32_t BgL_arg2215z00_3886;
BgL_arg2214z00_3885 = 
(int32_t)(BgL_n1z00_3880); 
BgL_arg2215z00_3886 = 
(int32_t)(BgL_n2z00_3881); 
BgL_arg2213z00_3884 = 
(BgL_arg2214z00_3885%BgL_arg2215z00_3886); } 
{ /* Llib/hash.scm 653 */
 long BgL_arg2320z00_3891;
BgL_arg2320z00_3891 = 
(long)(BgL_arg2213z00_3884); 
BgL_arg1635z00_2008 = 
(long)(BgL_arg2320z00_3891); } }  else 
{ /* Llib/hash.scm 653 */
BgL_arg1635z00_2008 = 
(BgL_n1z00_3880%BgL_n2z00_3881); } } } 
BgL_arg1636z00_2009 = 
(BgL_iz00_1996+1L); 
{ 
 long BgL_iz00_9969; long BgL_offz00_9968;
BgL_offz00_9968 = BgL_arg1635z00_2008; 
BgL_iz00_9969 = BgL_arg1636z00_2009; 
BgL_iz00_1996 = BgL_iz00_9969; 
BgL_offz00_1995 = BgL_offz00_9968; 
goto BgL_zc3z04anonymousza31625ze3z87_1997;} }  else 
{ 
 long BgL_iz00_9971; long BgL_offz00_9970;
BgL_offz00_9970 = BgL_noffz00_2006; 
BgL_iz00_9971 = 
(BgL_iz00_1996+1L); 
BgL_iz00_1996 = BgL_iz00_9971; 
BgL_offz00_1995 = BgL_offz00_9970; 
goto BgL_zc3z04anonymousza31625ze3z87_1997;} } } }  else 
{ /* Llib/hash.scm 647 */
return BFALSE;} } } } } } } } } } 

}



/* &open-string-hashtable-contains? */
obj_t BGl_z62openzd2stringzd2hashtablezd2containszf3z43zz__hashz00(obj_t BgL_envz00_5460, obj_t BgL_tz00_5461, obj_t BgL_keyz00_5462)
{
{ /* Llib/hash.scm 639 */
{ /* Llib/hash.scm 640 */
 obj_t BgL_auxz00_9980; obj_t BgL_auxz00_9973;
if(
STRINGP(BgL_keyz00_5462))
{ /* Llib/hash.scm 640 */
BgL_auxz00_9980 = BgL_keyz00_5462
; }  else 
{ 
 obj_t BgL_auxz00_9983;
BgL_auxz00_9983 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25485L), BGl_string3995z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5462); 
FAILURE(BgL_auxz00_9983,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tz00_5461))
{ /* Llib/hash.scm 640 */
BgL_auxz00_9973 = BgL_tz00_5461
; }  else 
{ 
 obj_t BgL_auxz00_9976;
BgL_auxz00_9976 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(25485L), BGl_string3995z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tz00_5461); 
FAILURE(BgL_auxz00_9976,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2containszf3z21zz__hashz00(BgL_auxz00_9973, BgL_auxz00_9980);} } 

}



/* plain-hashtable-contains? */
bool_t BGl_plainzd2hashtablezd2containszf3zf3zz__hashz00(obj_t BgL_tablez00_94, obj_t BgL_keyz00_95)
{
{ /* Llib/hash.scm 659 */
{ /* Llib/hash.scm 660 */
 obj_t BgL_bucketsz00_2015;
{ /* Llib/hash.scm 660 */
 bool_t BgL_test4760z00_9988;
{ /* Llib/hash.scm 660 */
 obj_t BgL_tmpz00_9989;
{ /* Llib/hash.scm 660 */
 obj_t BgL_res2575z00_3898;
{ /* Llib/hash.scm 660 */
 obj_t BgL_aux3307z00_6189;
BgL_aux3307z00_6189 = 
STRUCT_KEY(BgL_tablez00_94); 
if(
SYMBOLP(BgL_aux3307z00_6189))
{ /* Llib/hash.scm 660 */
BgL_res2575z00_3898 = BgL_aux3307z00_6189; }  else 
{ 
 obj_t BgL_auxz00_9993;
BgL_auxz00_9993 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26352L), BGl_string3996z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3307z00_6189); 
FAILURE(BgL_auxz00_9993,BFALSE,BFALSE);} } 
BgL_tmpz00_9989 = BgL_res2575z00_3898; } 
BgL_test4760z00_9988 = 
(BgL_tmpz00_9989==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4760z00_9988)
{ /* Llib/hash.scm 660 */
 int BgL_tmpz00_9998;
BgL_tmpz00_9998 = 
(int)(2L); 
BgL_bucketsz00_2015 = 
STRUCT_REF(BgL_tablez00_94, BgL_tmpz00_9998); }  else 
{ /* Llib/hash.scm 660 */
BgL_bucketsz00_2015 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_94); } } 
{ /* Llib/hash.scm 660 */
 long BgL_bucketzd2lenzd2_2016;
{ /* Llib/hash.scm 661 */
 obj_t BgL_vectorz00_3899;
if(
VECTORP(BgL_bucketsz00_2015))
{ /* Llib/hash.scm 661 */
BgL_vectorz00_3899 = BgL_bucketsz00_2015; }  else 
{ 
 obj_t BgL_auxz00_10004;
BgL_auxz00_10004 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26410L), BGl_string3996z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2015); 
FAILURE(BgL_auxz00_10004,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2016 = 
VECTOR_LENGTH(BgL_vectorz00_3899); } 
{ /* Llib/hash.scm 661 */
 long BgL_bucketzd2numzd2_2017;
{ /* Llib/hash.scm 662 */
 long BgL_arg1651z00_2028;
BgL_arg1651z00_2028 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_94, BgL_keyz00_95); 
{ /* Llib/hash.scm 662 */
 long BgL_n1z00_3900; long BgL_n2z00_3901;
BgL_n1z00_3900 = BgL_arg1651z00_2028; 
BgL_n2z00_3901 = BgL_bucketzd2lenzd2_2016; 
{ /* Llib/hash.scm 662 */
 bool_t BgL_test4763z00_10010;
{ /* Llib/hash.scm 662 */
 long BgL_arg2216z00_3903;
BgL_arg2216z00_3903 = 
(((BgL_n1z00_3900) | (BgL_n2z00_3901)) & -2147483648); 
BgL_test4763z00_10010 = 
(BgL_arg2216z00_3903==0L); } 
if(BgL_test4763z00_10010)
{ /* Llib/hash.scm 662 */
 int32_t BgL_arg2213z00_3904;
{ /* Llib/hash.scm 662 */
 int32_t BgL_arg2214z00_3905; int32_t BgL_arg2215z00_3906;
BgL_arg2214z00_3905 = 
(int32_t)(BgL_n1z00_3900); 
BgL_arg2215z00_3906 = 
(int32_t)(BgL_n2z00_3901); 
BgL_arg2213z00_3904 = 
(BgL_arg2214z00_3905%BgL_arg2215z00_3906); } 
{ /* Llib/hash.scm 662 */
 long BgL_arg2320z00_3911;
BgL_arg2320z00_3911 = 
(long)(BgL_arg2213z00_3904); 
BgL_bucketzd2numzd2_2017 = 
(long)(BgL_arg2320z00_3911); } }  else 
{ /* Llib/hash.scm 662 */
BgL_bucketzd2numzd2_2017 = 
(BgL_n1z00_3900%BgL_n2z00_3901); } } } } 
{ /* Llib/hash.scm 662 */
 obj_t BgL_bucketz00_2018;
{ /* Llib/hash.scm 663 */
 obj_t BgL_vectorz00_3913;
if(
VECTORP(BgL_bucketsz00_2015))
{ /* Llib/hash.scm 663 */
BgL_vectorz00_3913 = BgL_bucketsz00_2015; }  else 
{ 
 obj_t BgL_auxz00_10021;
BgL_auxz00_10021 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26520L), BGl_string3996z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2015); 
FAILURE(BgL_auxz00_10021,BFALSE,BFALSE);} 
BgL_bucketz00_2018 = 
VECTOR_REF(BgL_vectorz00_3913,BgL_bucketzd2numzd2_2017); } 
{ /* Llib/hash.scm 663 */

{ 
 obj_t BgL_bucketz00_2020;
BgL_bucketz00_2020 = BgL_bucketz00_2018; 
BgL_zc3z04anonymousza31641ze3z87_2021:
if(
NULLP(BgL_bucketz00_2020))
{ /* Llib/hash.scm 666 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 668 */
 bool_t BgL_test4766z00_10028;
{ /* Llib/hash.scm 668 */
 obj_t BgL_arg1649z00_2026;
{ /* Llib/hash.scm 668 */
 obj_t BgL_pairz00_3915;
if(
PAIRP(BgL_bucketz00_2020))
{ /* Llib/hash.scm 668 */
BgL_pairz00_3915 = BgL_bucketz00_2020; }  else 
{ 
 obj_t BgL_auxz00_10031;
BgL_auxz00_10031 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26651L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2020); 
FAILURE(BgL_auxz00_10031,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 668 */
 obj_t BgL_pairz00_3918;
{ /* Llib/hash.scm 668 */
 obj_t BgL_aux3315z00_6197;
BgL_aux3315z00_6197 = 
CAR(BgL_pairz00_3915); 
if(
PAIRP(BgL_aux3315z00_6197))
{ /* Llib/hash.scm 668 */
BgL_pairz00_3918 = BgL_aux3315z00_6197; }  else 
{ 
 obj_t BgL_auxz00_10038;
BgL_auxz00_10038 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26645L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3315z00_6197); 
FAILURE(BgL_auxz00_10038,BFALSE,BFALSE);} } 
BgL_arg1649z00_2026 = 
CAR(BgL_pairz00_3918); } } 
{ /* Llib/hash.scm 668 */
 obj_t BgL_eqtz00_3919;
{ /* Llib/hash.scm 668 */
 bool_t BgL_test4769z00_10043;
{ /* Llib/hash.scm 668 */
 obj_t BgL_tmpz00_10044;
{ /* Llib/hash.scm 668 */
 obj_t BgL_res2576z00_3926;
{ /* Llib/hash.scm 668 */
 obj_t BgL_aux3317z00_6199;
BgL_aux3317z00_6199 = 
STRUCT_KEY(BgL_tablez00_94); 
if(
SYMBOLP(BgL_aux3317z00_6199))
{ /* Llib/hash.scm 668 */
BgL_res2576z00_3926 = BgL_aux3317z00_6199; }  else 
{ 
 obj_t BgL_auxz00_10048;
BgL_auxz00_10048 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26621L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3317z00_6199); 
FAILURE(BgL_auxz00_10048,BFALSE,BFALSE);} } 
BgL_tmpz00_10044 = BgL_res2576z00_3926; } 
BgL_test4769z00_10043 = 
(BgL_tmpz00_10044==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4769z00_10043)
{ /* Llib/hash.scm 668 */
 int BgL_tmpz00_10053;
BgL_tmpz00_10053 = 
(int)(3L); 
BgL_eqtz00_3919 = 
STRUCT_REF(BgL_tablez00_94, BgL_tmpz00_10053); }  else 
{ /* Llib/hash.scm 668 */
BgL_eqtz00_3919 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_94); } } 
if(
PROCEDUREP(BgL_eqtz00_3919))
{ /* Llib/hash.scm 668 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_3919, 2L))
{ /* Llib/hash.scm 668 */
BgL_test4766z00_10028 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_3919 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_3919))(BgL_eqtz00_3919, BgL_arg1649z00_2026, BgL_keyz00_95, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_3919))(BgL_eqtz00_3919, BgL_arg1649z00_2026, BgL_keyz00_95) ))
; }  else 
{ /* Llib/hash.scm 668 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list3997z00zz__hashz00,BgL_eqtz00_3919);} }  else 
{ /* Llib/hash.scm 668 */
if(
(BgL_arg1649z00_2026==BgL_keyz00_95))
{ /* Llib/hash.scm 668 */
BgL_test4766z00_10028 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 668 */
if(
STRINGP(BgL_arg1649z00_2026))
{ /* Llib/hash.scm 668 */
if(
STRINGP(BgL_keyz00_95))
{ /* Llib/hash.scm 668 */
 long BgL_l1z00_3929;
BgL_l1z00_3929 = 
STRING_LENGTH(BgL_arg1649z00_2026); 
if(
(BgL_l1z00_3929==
STRING_LENGTH(BgL_keyz00_95)))
{ /* Llib/hash.scm 668 */
 int BgL_arg2110z00_3932;
{ /* Llib/hash.scm 668 */
 char * BgL_auxz00_10080; char * BgL_tmpz00_10078;
BgL_auxz00_10080 = 
BSTRING_TO_STRING(BgL_keyz00_95); 
BgL_tmpz00_10078 = 
BSTRING_TO_STRING(BgL_arg1649z00_2026); 
BgL_arg2110z00_3932 = 
memcmp(BgL_tmpz00_10078, BgL_auxz00_10080, BgL_l1z00_3929); } 
BgL_test4766z00_10028 = 
(
(long)(BgL_arg2110z00_3932)==0L); }  else 
{ /* Llib/hash.scm 668 */
BgL_test4766z00_10028 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 668 */
BgL_test4766z00_10028 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 668 */
BgL_test4766z00_10028 = ((bool_t)0)
; } } } } } 
if(BgL_test4766z00_10028)
{ /* Llib/hash.scm 668 */
return ((bool_t)1);}  else 
{ /* Llib/hash.scm 671 */
 obj_t BgL_arg1645z00_2025;
{ /* Llib/hash.scm 671 */
 obj_t BgL_pairz00_3938;
if(
PAIRP(BgL_bucketz00_2020))
{ /* Llib/hash.scm 671 */
BgL_pairz00_3938 = BgL_bucketz00_2020; }  else 
{ 
 obj_t BgL_auxz00_10087;
BgL_auxz00_10087 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(26702L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2020); 
FAILURE(BgL_auxz00_10087,BFALSE,BFALSE);} 
BgL_arg1645z00_2025 = 
CDR(BgL_pairz00_3938); } 
{ 
 obj_t BgL_bucketz00_10092;
BgL_bucketz00_10092 = BgL_arg1645z00_2025; 
BgL_bucketz00_2020 = BgL_bucketz00_10092; 
goto BgL_zc3z04anonymousza31641ze3z87_2021;} } } } } } } } } } 

}



/* hashtable-get */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2getzd2zz__hashz00(obj_t BgL_tablez00_96, obj_t BgL_keyz00_97)
{
{ /* Llib/hash.scm 676 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_96))
{ /* Llib/hash.scm 678 */
 obj_t BgL_auxz00_10095;
if(
STRINGP(BgL_keyz00_97))
{ /* Llib/hash.scm 678 */
BgL_auxz00_10095 = BgL_keyz00_97
; }  else 
{ 
 obj_t BgL_auxz00_10098;
BgL_auxz00_10098 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27066L), BGl_string4002z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_97); 
FAILURE(BgL_auxz00_10098,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2getzd2zz__hashz00(BgL_tablez00_96, BgL_auxz00_10095);}  else 
{ /* Llib/hash.scm 679 */
 bool_t BgL_test4780z00_10103;
{ /* Llib/hash.scm 300 */
 obj_t BgL_arg1432z00_3940;
{ /* Llib/hash.scm 300 */
 bool_t BgL_test4781z00_10104;
{ /* Llib/hash.scm 300 */
 obj_t BgL_tmpz00_10105;
{ /* Llib/hash.scm 300 */
 obj_t BgL_res2577z00_3944;
{ /* Llib/hash.scm 300 */
 obj_t BgL_aux3324z00_6207;
BgL_aux3324z00_6207 = 
STRUCT_KEY(BgL_tablez00_96); 
if(
SYMBOLP(BgL_aux3324z00_6207))
{ /* Llib/hash.scm 300 */
BgL_res2577z00_3944 = BgL_aux3324z00_6207; }  else 
{ 
 obj_t BgL_auxz00_10109;
BgL_auxz00_10109 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11344L), BGl_string4002z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3324z00_6207); 
FAILURE(BgL_auxz00_10109,BFALSE,BFALSE);} } 
BgL_tmpz00_10105 = BgL_res2577z00_3944; } 
BgL_test4781z00_10104 = 
(BgL_tmpz00_10105==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4781z00_10104)
{ /* Llib/hash.scm 300 */
 int BgL_tmpz00_10114;
BgL_tmpz00_10114 = 
(int)(5L); 
BgL_arg1432z00_3940 = 
STRUCT_REF(BgL_tablez00_96, BgL_tmpz00_10114); }  else 
{ /* Llib/hash.scm 300 */
BgL_arg1432z00_3940 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_96); } } 
{ /* Llib/hash.scm 300 */
 long BgL_n1z00_3945;
{ /* Llib/hash.scm 300 */
 obj_t BgL_tmpz00_10118;
if(
INTEGERP(BgL_arg1432z00_3940))
{ /* Llib/hash.scm 300 */
BgL_tmpz00_10118 = BgL_arg1432z00_3940
; }  else 
{ 
 obj_t BgL_auxz00_10121;
BgL_auxz00_10121 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11366L), BGl_string4002z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1432z00_3940); 
FAILURE(BgL_auxz00_10121,BFALSE,BFALSE);} 
BgL_n1z00_3945 = 
(long)CINT(BgL_tmpz00_10118); } 
BgL_test4780z00_10103 = 
(BgL_n1z00_3945==4L); } } 
if(BgL_test4780z00_10103)
{ /* Llib/hash.scm 679 */
 obj_t BgL_auxz00_10127;
if(
STRINGP(BgL_keyz00_97))
{ /* Llib/hash.scm 679 */
BgL_auxz00_10127 = BgL_keyz00_97
; }  else 
{ 
 obj_t BgL_auxz00_10130;
BgL_auxz00_10130 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27133L), BGl_string4002z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_97); 
FAILURE(BgL_auxz00_10130,BFALSE,BFALSE);} 
return 
BGl_stringzd2hashtablezd2getz00zz__hashz00(BgL_tablez00_96, BgL_auxz00_10127);}  else 
{ /* Llib/hash.scm 679 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_96))
{ /* Llib/hash.scm 680 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2getz00zz__weakhashz00(BgL_tablez00_96, BgL_keyz00_97);}  else 
{ /* Llib/hash.scm 680 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2getz00zz__hashz00(BgL_tablez00_96, BgL_keyz00_97);} } } } 

}



/* &hashtable-get */
obj_t BGl_z62hashtablezd2getzb0zz__hashz00(obj_t BgL_envz00_5463, obj_t BgL_tablez00_5464, obj_t BgL_keyz00_5465)
{
{ /* Llib/hash.scm 676 */
{ /* Llib/hash.scm 678 */
 obj_t BgL_auxz00_10139;
if(
STRUCTP(BgL_tablez00_5464))
{ /* Llib/hash.scm 678 */
BgL_auxz00_10139 = BgL_tablez00_5464
; }  else 
{ 
 obj_t BgL_auxz00_10142;
BgL_auxz00_10142 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27001L), BGl_string4003z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5464); 
FAILURE(BgL_auxz00_10142,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2getzd2zz__hashz00(BgL_auxz00_10139, BgL_keyz00_5465);} } 

}



/* plain-hashtable-get */
obj_t BGl_plainzd2hashtablezd2getz00zz__hashz00(obj_t BgL_tablez00_98, obj_t BgL_keyz00_99)
{
{ /* Llib/hash.scm 686 */
{ /* Llib/hash.scm 687 */
 obj_t BgL_bucketsz00_2032;
{ /* Llib/hash.scm 687 */
 bool_t BgL_test4787z00_10147;
{ /* Llib/hash.scm 687 */
 obj_t BgL_tmpz00_10148;
{ /* Llib/hash.scm 687 */
 obj_t BgL_res2578z00_3949;
{ /* Llib/hash.scm 687 */
 obj_t BgL_aux3331z00_6214;
BgL_aux3331z00_6214 = 
STRUCT_KEY(BgL_tablez00_98); 
if(
SYMBOLP(BgL_aux3331z00_6214))
{ /* Llib/hash.scm 687 */
BgL_res2578z00_3949 = BgL_aux3331z00_6214; }  else 
{ 
 obj_t BgL_auxz00_10152;
BgL_auxz00_10152 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27544L), BGl_string4004z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3331z00_6214); 
FAILURE(BgL_auxz00_10152,BFALSE,BFALSE);} } 
BgL_tmpz00_10148 = BgL_res2578z00_3949; } 
BgL_test4787z00_10147 = 
(BgL_tmpz00_10148==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4787z00_10147)
{ /* Llib/hash.scm 687 */
 int BgL_tmpz00_10157;
BgL_tmpz00_10157 = 
(int)(2L); 
BgL_bucketsz00_2032 = 
STRUCT_REF(BgL_tablez00_98, BgL_tmpz00_10157); }  else 
{ /* Llib/hash.scm 687 */
BgL_bucketsz00_2032 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_98); } } 
{ /* Llib/hash.scm 687 */
 long BgL_bucketzd2lenzd2_2033;
{ /* Llib/hash.scm 688 */
 obj_t BgL_vectorz00_3950;
if(
VECTORP(BgL_bucketsz00_2032))
{ /* Llib/hash.scm 688 */
BgL_vectorz00_3950 = BgL_bucketsz00_2032; }  else 
{ 
 obj_t BgL_auxz00_10163;
BgL_auxz00_10163 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27602L), BGl_string4004z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2032); 
FAILURE(BgL_auxz00_10163,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2033 = 
VECTOR_LENGTH(BgL_vectorz00_3950); } 
{ /* Llib/hash.scm 688 */
 long BgL_bucketzd2numzd2_2034;
{ /* Llib/hash.scm 689 */
 long BgL_arg1663z00_2045;
BgL_arg1663z00_2045 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_98, BgL_keyz00_99); 
{ /* Llib/hash.scm 689 */
 long BgL_n1z00_3951; long BgL_n2z00_3952;
BgL_n1z00_3951 = BgL_arg1663z00_2045; 
BgL_n2z00_3952 = BgL_bucketzd2lenzd2_2033; 
{ /* Llib/hash.scm 689 */
 bool_t BgL_test4790z00_10169;
{ /* Llib/hash.scm 689 */
 long BgL_arg2216z00_3954;
BgL_arg2216z00_3954 = 
(((BgL_n1z00_3951) | (BgL_n2z00_3952)) & -2147483648); 
BgL_test4790z00_10169 = 
(BgL_arg2216z00_3954==0L); } 
if(BgL_test4790z00_10169)
{ /* Llib/hash.scm 689 */
 int32_t BgL_arg2213z00_3955;
{ /* Llib/hash.scm 689 */
 int32_t BgL_arg2214z00_3956; int32_t BgL_arg2215z00_3957;
BgL_arg2214z00_3956 = 
(int32_t)(BgL_n1z00_3951); 
BgL_arg2215z00_3957 = 
(int32_t)(BgL_n2z00_3952); 
BgL_arg2213z00_3955 = 
(BgL_arg2214z00_3956%BgL_arg2215z00_3957); } 
{ /* Llib/hash.scm 689 */
 long BgL_arg2320z00_3962;
BgL_arg2320z00_3962 = 
(long)(BgL_arg2213z00_3955); 
BgL_bucketzd2numzd2_2034 = 
(long)(BgL_arg2320z00_3962); } }  else 
{ /* Llib/hash.scm 689 */
BgL_bucketzd2numzd2_2034 = 
(BgL_n1z00_3951%BgL_n2z00_3952); } } } } 
{ /* Llib/hash.scm 689 */
 obj_t BgL_bucketz00_2035;
{ /* Llib/hash.scm 690 */
 obj_t BgL_vectorz00_3964;
if(
VECTORP(BgL_bucketsz00_2032))
{ /* Llib/hash.scm 690 */
BgL_vectorz00_3964 = BgL_bucketsz00_2032; }  else 
{ 
 obj_t BgL_auxz00_10180;
BgL_auxz00_10180 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27712L), BGl_string4004z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2032); 
FAILURE(BgL_auxz00_10180,BFALSE,BFALSE);} 
BgL_bucketz00_2035 = 
VECTOR_REF(BgL_vectorz00_3964,BgL_bucketzd2numzd2_2034); } 
{ /* Llib/hash.scm 690 */

{ 
 obj_t BgL_bucketz00_2037;
BgL_bucketz00_2037 = BgL_bucketz00_2035; 
BgL_zc3z04anonymousza31655ze3z87_2038:
if(
NULLP(BgL_bucketz00_2037))
{ /* Llib/hash.scm 693 */
return BFALSE;}  else 
{ /* Llib/hash.scm 695 */
 bool_t BgL_test4793z00_10187;
{ /* Llib/hash.scm 695 */
 obj_t BgL_arg1662z00_2043;
{ /* Llib/hash.scm 695 */
 obj_t BgL_pairz00_3966;
if(
PAIRP(BgL_bucketz00_2037))
{ /* Llib/hash.scm 695 */
BgL_pairz00_3966 = BgL_bucketz00_2037; }  else 
{ 
 obj_t BgL_auxz00_10190;
BgL_auxz00_10190 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27843L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2037); 
FAILURE(BgL_auxz00_10190,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 695 */
 obj_t BgL_pairz00_3969;
{ /* Llib/hash.scm 695 */
 obj_t BgL_aux3339z00_6222;
BgL_aux3339z00_6222 = 
CAR(BgL_pairz00_3966); 
if(
PAIRP(BgL_aux3339z00_6222))
{ /* Llib/hash.scm 695 */
BgL_pairz00_3969 = BgL_aux3339z00_6222; }  else 
{ 
 obj_t BgL_auxz00_10197;
BgL_auxz00_10197 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27837L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3339z00_6222); 
FAILURE(BgL_auxz00_10197,BFALSE,BFALSE);} } 
BgL_arg1662z00_2043 = 
CAR(BgL_pairz00_3969); } } 
{ /* Llib/hash.scm 695 */
 obj_t BgL_eqtz00_3970;
{ /* Llib/hash.scm 695 */
 bool_t BgL_test4796z00_10202;
{ /* Llib/hash.scm 695 */
 obj_t BgL_tmpz00_10203;
{ /* Llib/hash.scm 695 */
 obj_t BgL_res2579z00_3977;
{ /* Llib/hash.scm 695 */
 obj_t BgL_aux3341z00_6224;
BgL_aux3341z00_6224 = 
STRUCT_KEY(BgL_tablez00_98); 
if(
SYMBOLP(BgL_aux3341z00_6224))
{ /* Llib/hash.scm 695 */
BgL_res2579z00_3977 = BgL_aux3341z00_6224; }  else 
{ 
 obj_t BgL_auxz00_10207;
BgL_auxz00_10207 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27813L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3341z00_6224); 
FAILURE(BgL_auxz00_10207,BFALSE,BFALSE);} } 
BgL_tmpz00_10203 = BgL_res2579z00_3977; } 
BgL_test4796z00_10202 = 
(BgL_tmpz00_10203==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4796z00_10202)
{ /* Llib/hash.scm 695 */
 int BgL_tmpz00_10212;
BgL_tmpz00_10212 = 
(int)(3L); 
BgL_eqtz00_3970 = 
STRUCT_REF(BgL_tablez00_98, BgL_tmpz00_10212); }  else 
{ /* Llib/hash.scm 695 */
BgL_eqtz00_3970 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_98); } } 
if(
PROCEDUREP(BgL_eqtz00_3970))
{ /* Llib/hash.scm 695 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_3970, 2L))
{ /* Llib/hash.scm 695 */
BgL_test4793z00_10187 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_3970 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_3970))(BgL_eqtz00_3970, BgL_arg1662z00_2043, BgL_keyz00_99, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_3970))(BgL_eqtz00_3970, BgL_arg1662z00_2043, BgL_keyz00_99) ))
; }  else 
{ /* Llib/hash.scm 695 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4005z00zz__hashz00,BgL_eqtz00_3970);} }  else 
{ /* Llib/hash.scm 695 */
if(
(BgL_arg1662z00_2043==BgL_keyz00_99))
{ /* Llib/hash.scm 695 */
BgL_test4793z00_10187 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 695 */
if(
STRINGP(BgL_arg1662z00_2043))
{ /* Llib/hash.scm 695 */
if(
STRINGP(BgL_keyz00_99))
{ /* Llib/hash.scm 695 */
 long BgL_l1z00_3980;
BgL_l1z00_3980 = 
STRING_LENGTH(BgL_arg1662z00_2043); 
if(
(BgL_l1z00_3980==
STRING_LENGTH(BgL_keyz00_99)))
{ /* Llib/hash.scm 695 */
 int BgL_arg2110z00_3983;
{ /* Llib/hash.scm 695 */
 char * BgL_auxz00_10239; char * BgL_tmpz00_10237;
BgL_auxz00_10239 = 
BSTRING_TO_STRING(BgL_keyz00_99); 
BgL_tmpz00_10237 = 
BSTRING_TO_STRING(BgL_arg1662z00_2043); 
BgL_arg2110z00_3983 = 
memcmp(BgL_tmpz00_10237, BgL_auxz00_10239, BgL_l1z00_3980); } 
BgL_test4793z00_10187 = 
(
(long)(BgL_arg2110z00_3983)==0L); }  else 
{ /* Llib/hash.scm 695 */
BgL_test4793z00_10187 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 695 */
BgL_test4793z00_10187 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 695 */
BgL_test4793z00_10187 = ((bool_t)0)
; } } } } } 
if(BgL_test4793z00_10187)
{ /* Llib/hash.scm 696 */
 obj_t BgL_pairz00_3989;
if(
PAIRP(BgL_bucketz00_2037))
{ /* Llib/hash.scm 696 */
BgL_pairz00_3989 = BgL_bucketz00_2037; }  else 
{ 
 obj_t BgL_auxz00_10246;
BgL_auxz00_10246 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27868L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2037); 
FAILURE(BgL_auxz00_10246,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 696 */
 obj_t BgL_pairz00_3992;
{ /* Llib/hash.scm 696 */
 obj_t BgL_aux3346z00_6230;
BgL_aux3346z00_6230 = 
CAR(BgL_pairz00_3989); 
if(
PAIRP(BgL_aux3346z00_6230))
{ /* Llib/hash.scm 696 */
BgL_pairz00_3992 = BgL_aux3346z00_6230; }  else 
{ 
 obj_t BgL_auxz00_10253;
BgL_auxz00_10253 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27862L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3346z00_6230); 
FAILURE(BgL_auxz00_10253,BFALSE,BFALSE);} } 
return 
CDR(BgL_pairz00_3992);} }  else 
{ /* Llib/hash.scm 698 */
 obj_t BgL_arg1661z00_2042;
{ /* Llib/hash.scm 698 */
 obj_t BgL_pairz00_3993;
if(
PAIRP(BgL_bucketz00_2037))
{ /* Llib/hash.scm 698 */
BgL_pairz00_3993 = BgL_bucketz00_2037; }  else 
{ 
 obj_t BgL_auxz00_10260;
BgL_auxz00_10260 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(27905L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2037); 
FAILURE(BgL_auxz00_10260,BFALSE,BFALSE);} 
BgL_arg1661z00_2042 = 
CDR(BgL_pairz00_3993); } 
{ 
 obj_t BgL_bucketz00_10265;
BgL_bucketz00_10265 = BgL_arg1661z00_2042; 
BgL_bucketz00_2037 = BgL_bucketz00_10265; 
goto BgL_zc3z04anonymousza31655ze3z87_2038;} } } } } } } } } } 

}



/* string-hashtable-get */
BGL_EXPORTED_DEF obj_t BGl_stringzd2hashtablezd2getz00zz__hashz00(obj_t BgL_tablez00_100, obj_t BgL_keyz00_101)
{
{ /* Llib/hash.scm 703 */
{ /* Llib/hash.scm 704 */
 obj_t BgL_bucketsz00_2046;
{ /* Llib/hash.scm 704 */
 bool_t BgL_test4807z00_10266;
{ /* Llib/hash.scm 704 */
 obj_t BgL_tmpz00_10267;
{ /* Llib/hash.scm 704 */
 obj_t BgL_res2580z00_3997;
{ /* Llib/hash.scm 704 */
 obj_t BgL_aux3350z00_6234;
BgL_aux3350z00_6234 = 
STRUCT_KEY(BgL_tablez00_100); 
if(
SYMBOLP(BgL_aux3350z00_6234))
{ /* Llib/hash.scm 704 */
BgL_res2580z00_3997 = BgL_aux3350z00_6234; }  else 
{ 
 obj_t BgL_auxz00_10271;
BgL_auxz00_10271 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28219L), BGl_string4008z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3350z00_6234); 
FAILURE(BgL_auxz00_10271,BFALSE,BFALSE);} } 
BgL_tmpz00_10267 = BgL_res2580z00_3997; } 
BgL_test4807z00_10266 = 
(BgL_tmpz00_10267==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4807z00_10266)
{ /* Llib/hash.scm 704 */
 int BgL_tmpz00_10276;
BgL_tmpz00_10276 = 
(int)(2L); 
BgL_bucketsz00_2046 = 
STRUCT_REF(BgL_tablez00_100, BgL_tmpz00_10276); }  else 
{ /* Llib/hash.scm 704 */
BgL_bucketsz00_2046 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_100); } } 
{ /* Llib/hash.scm 704 */
 long BgL_bucketzd2lenzd2_2047;
{ /* Llib/hash.scm 705 */
 obj_t BgL_vectorz00_3998;
if(
VECTORP(BgL_bucketsz00_2046))
{ /* Llib/hash.scm 705 */
BgL_vectorz00_3998 = BgL_bucketsz00_2046; }  else 
{ 
 obj_t BgL_auxz00_10282;
BgL_auxz00_10282 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28277L), BGl_string4008z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2046); 
FAILURE(BgL_auxz00_10282,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2047 = 
VECTOR_LENGTH(BgL_vectorz00_3998); } 
{ /* Llib/hash.scm 705 */
 long BgL_bucketzd2numzd2_2048;
{ /* Llib/hash.scm 706 */
 long BgL_arg1672z00_2059;
{ /* Llib/hash.scm 706 */
 long BgL_arg1673z00_2060;
BgL_arg1673z00_2060 = 
STRING_LENGTH(BgL_keyz00_101); 
BgL_arg1672z00_2059 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_101), 
(int)(0L), 
(int)(BgL_arg1673z00_2060)); } 
{ /* Llib/hash.scm 706 */
 long BgL_n1z00_4000; long BgL_n2z00_4001;
BgL_n1z00_4000 = BgL_arg1672z00_2059; 
BgL_n2z00_4001 = BgL_bucketzd2lenzd2_2047; 
{ /* Llib/hash.scm 706 */
 bool_t BgL_test4810z00_10292;
{ /* Llib/hash.scm 706 */
 long BgL_arg2216z00_4003;
BgL_arg2216z00_4003 = 
(((BgL_n1z00_4000) | (BgL_n2z00_4001)) & -2147483648); 
BgL_test4810z00_10292 = 
(BgL_arg2216z00_4003==0L); } 
if(BgL_test4810z00_10292)
{ /* Llib/hash.scm 706 */
 int32_t BgL_arg2213z00_4004;
{ /* Llib/hash.scm 706 */
 int32_t BgL_arg2214z00_4005; int32_t BgL_arg2215z00_4006;
BgL_arg2214z00_4005 = 
(int32_t)(BgL_n1z00_4000); 
BgL_arg2215z00_4006 = 
(int32_t)(BgL_n2z00_4001); 
BgL_arg2213z00_4004 = 
(BgL_arg2214z00_4005%BgL_arg2215z00_4006); } 
{ /* Llib/hash.scm 706 */
 long BgL_arg2320z00_4011;
BgL_arg2320z00_4011 = 
(long)(BgL_arg2213z00_4004); 
BgL_bucketzd2numzd2_2048 = 
(long)(BgL_arg2320z00_4011); } }  else 
{ /* Llib/hash.scm 706 */
BgL_bucketzd2numzd2_2048 = 
(BgL_n1z00_4000%BgL_n2z00_4001); } } } } 
{ /* Llib/hash.scm 706 */
 obj_t BgL_bucketz00_2049;
{ /* Llib/hash.scm 707 */
 obj_t BgL_vectorz00_4013;
if(
VECTORP(BgL_bucketsz00_2046))
{ /* Llib/hash.scm 707 */
BgL_vectorz00_4013 = BgL_bucketsz00_2046; }  else 
{ 
 obj_t BgL_auxz00_10303;
BgL_auxz00_10303 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28395L), BGl_string4008z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2046); 
FAILURE(BgL_auxz00_10303,BFALSE,BFALSE);} 
BgL_bucketz00_2049 = 
VECTOR_REF(BgL_vectorz00_4013,BgL_bucketzd2numzd2_2048); } 
{ /* Llib/hash.scm 707 */

{ 
 obj_t BgL_bucketz00_2051;
BgL_bucketz00_2051 = BgL_bucketz00_2049; 
BgL_zc3z04anonymousza31664ze3z87_2052:
if(
NULLP(BgL_bucketz00_2051))
{ /* Llib/hash.scm 710 */
return BFALSE;}  else 
{ /* Llib/hash.scm 712 */
 bool_t BgL_test4813z00_10310;
{ /* Llib/hash.scm 712 */
 obj_t BgL_arg1671z00_2057;
{ /* Llib/hash.scm 712 */
 obj_t BgL_pairz00_4015;
if(
PAIRP(BgL_bucketz00_2051))
{ /* Llib/hash.scm 712 */
BgL_pairz00_4015 = BgL_bucketz00_2051; }  else 
{ 
 obj_t BgL_auxz00_10313;
BgL_auxz00_10313 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28512L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2051); 
FAILURE(BgL_auxz00_10313,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 712 */
 obj_t BgL_pairz00_4018;
{ /* Llib/hash.scm 712 */
 obj_t BgL_aux3358z00_6242;
BgL_aux3358z00_6242 = 
CAR(BgL_pairz00_4015); 
if(
PAIRP(BgL_aux3358z00_6242))
{ /* Llib/hash.scm 712 */
BgL_pairz00_4018 = BgL_aux3358z00_6242; }  else 
{ 
 obj_t BgL_auxz00_10320;
BgL_auxz00_10320 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28506L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3358z00_6242); 
FAILURE(BgL_auxz00_10320,BFALSE,BFALSE);} } 
BgL_arg1671z00_2057 = 
CAR(BgL_pairz00_4018); } } 
{ /* Llib/hash.scm 712 */
 obj_t BgL_string1z00_4019;
if(
STRINGP(BgL_arg1671z00_2057))
{ /* Llib/hash.scm 712 */
BgL_string1z00_4019 = BgL_arg1671z00_2057; }  else 
{ 
 obj_t BgL_auxz00_10327;
BgL_auxz00_10327 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28518L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1671z00_2057); 
FAILURE(BgL_auxz00_10327,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 712 */
 long BgL_l1z00_4021;
BgL_l1z00_4021 = 
STRING_LENGTH(BgL_string1z00_4019); 
if(
(BgL_l1z00_4021==
STRING_LENGTH(BgL_keyz00_101)))
{ /* Llib/hash.scm 712 */
 int BgL_arg2110z00_4024;
{ /* Llib/hash.scm 712 */
 char * BgL_auxz00_10337; char * BgL_tmpz00_10335;
BgL_auxz00_10337 = 
BSTRING_TO_STRING(BgL_keyz00_101); 
BgL_tmpz00_10335 = 
BSTRING_TO_STRING(BgL_string1z00_4019); 
BgL_arg2110z00_4024 = 
memcmp(BgL_tmpz00_10335, BgL_auxz00_10337, BgL_l1z00_4021); } 
BgL_test4813z00_10310 = 
(
(long)(BgL_arg2110z00_4024)==0L); }  else 
{ /* Llib/hash.scm 712 */
BgL_test4813z00_10310 = ((bool_t)0)
; } } } } 
if(BgL_test4813z00_10310)
{ /* Llib/hash.scm 713 */
 obj_t BgL_pairz00_4030;
if(
PAIRP(BgL_bucketz00_2051))
{ /* Llib/hash.scm 713 */
BgL_pairz00_4030 = BgL_bucketz00_2051; }  else 
{ 
 obj_t BgL_auxz00_10344;
BgL_auxz00_10344 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28537L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2051); 
FAILURE(BgL_auxz00_10344,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 713 */
 obj_t BgL_pairz00_4033;
{ /* Llib/hash.scm 713 */
 obj_t BgL_aux3364z00_6248;
BgL_aux3364z00_6248 = 
CAR(BgL_pairz00_4030); 
if(
PAIRP(BgL_aux3364z00_6248))
{ /* Llib/hash.scm 713 */
BgL_pairz00_4033 = BgL_aux3364z00_6248; }  else 
{ 
 obj_t BgL_auxz00_10351;
BgL_auxz00_10351 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28531L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3364z00_6248); 
FAILURE(BgL_auxz00_10351,BFALSE,BFALSE);} } 
return 
CDR(BgL_pairz00_4033);} }  else 
{ /* Llib/hash.scm 715 */
 obj_t BgL_arg1670z00_2056;
{ /* Llib/hash.scm 715 */
 obj_t BgL_pairz00_4034;
if(
PAIRP(BgL_bucketz00_2051))
{ /* Llib/hash.scm 715 */
BgL_pairz00_4034 = BgL_bucketz00_2051; }  else 
{ 
 obj_t BgL_auxz00_10358;
BgL_auxz00_10358 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28574L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2051); 
FAILURE(BgL_auxz00_10358,BFALSE,BFALSE);} 
BgL_arg1670z00_2056 = 
CDR(BgL_pairz00_4034); } 
{ 
 obj_t BgL_bucketz00_10363;
BgL_bucketz00_10363 = BgL_arg1670z00_2056; 
BgL_bucketz00_2051 = BgL_bucketz00_10363; 
goto BgL_zc3z04anonymousza31664ze3z87_2052;} } } } } } } } } } 

}



/* &string-hashtable-get */
obj_t BGl_z62stringzd2hashtablezd2getz62zz__hashz00(obj_t BgL_envz00_5466, obj_t BgL_tablez00_5467, obj_t BgL_keyz00_5468)
{
{ /* Llib/hash.scm 703 */
{ /* Llib/hash.scm 704 */
 obj_t BgL_auxz00_10371; obj_t BgL_auxz00_10364;
if(
STRINGP(BgL_keyz00_5468))
{ /* Llib/hash.scm 704 */
BgL_auxz00_10371 = BgL_keyz00_5468
; }  else 
{ 
 obj_t BgL_auxz00_10374;
BgL_auxz00_10374 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28203L), BGl_string4009z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5468); 
FAILURE(BgL_auxz00_10374,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5467))
{ /* Llib/hash.scm 704 */
BgL_auxz00_10364 = BgL_tablez00_5467
; }  else 
{ 
 obj_t BgL_auxz00_10367;
BgL_auxz00_10367 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28203L), BGl_string4009z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5467); 
FAILURE(BgL_auxz00_10367,BFALSE,BFALSE);} 
return 
BGl_stringzd2hashtablezd2getz00zz__hashz00(BgL_auxz00_10364, BgL_auxz00_10371);} } 

}



/* open-string-hashtable-get */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2getzd2zz__hashz00(obj_t BgL_tz00_102, obj_t BgL_keyz00_103)
{
{ /* Llib/hash.scm 720 */
{ /* Llib/hash.scm 721 */
 obj_t BgL_siza7eza7_2061;
{ /* Llib/hash.scm 721 */
 bool_t BgL_test4823z00_10379;
{ /* Llib/hash.scm 721 */
 obj_t BgL_tmpz00_10380;
{ /* Llib/hash.scm 721 */
 obj_t BgL_res2581z00_4038;
{ /* Llib/hash.scm 721 */
 obj_t BgL_aux3372z00_6256;
BgL_aux3372z00_6256 = 
STRUCT_KEY(BgL_tz00_102); 
if(
SYMBOLP(BgL_aux3372z00_6256))
{ /* Llib/hash.scm 721 */
BgL_res2581z00_4038 = BgL_aux3372z00_6256; }  else 
{ 
 obj_t BgL_auxz00_10384;
BgL_auxz00_10384 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28869L), BGl_string4010z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3372z00_6256); 
FAILURE(BgL_auxz00_10384,BFALSE,BFALSE);} } 
BgL_tmpz00_10380 = BgL_res2581z00_4038; } 
BgL_test4823z00_10379 = 
(BgL_tmpz00_10380==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4823z00_10379)
{ /* Llib/hash.scm 721 */
 int BgL_tmpz00_10389;
BgL_tmpz00_10389 = 
(int)(1L); 
BgL_siza7eza7_2061 = 
STRUCT_REF(BgL_tz00_102, BgL_tmpz00_10389); }  else 
{ /* Llib/hash.scm 721 */
BgL_siza7eza7_2061 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_102); } } 
{ /* Llib/hash.scm 721 */
 obj_t BgL_bucketsz00_2062;
{ /* Llib/hash.scm 722 */
 bool_t BgL_test4825z00_10393;
{ /* Llib/hash.scm 722 */
 obj_t BgL_tmpz00_10394;
{ /* Llib/hash.scm 722 */
 obj_t BgL_res2582z00_4042;
{ /* Llib/hash.scm 722 */
 obj_t BgL_aux3374z00_6258;
BgL_aux3374z00_6258 = 
STRUCT_KEY(BgL_tz00_102); 
if(
SYMBOLP(BgL_aux3374z00_6258))
{ /* Llib/hash.scm 722 */
BgL_res2582z00_4042 = BgL_aux3374z00_6258; }  else 
{ 
 obj_t BgL_auxz00_10398;
BgL_auxz00_10398 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28912L), BGl_string4010z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3374z00_6258); 
FAILURE(BgL_auxz00_10398,BFALSE,BFALSE);} } 
BgL_tmpz00_10394 = BgL_res2582z00_4042; } 
BgL_test4825z00_10393 = 
(BgL_tmpz00_10394==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4825z00_10393)
{ /* Llib/hash.scm 722 */
 int BgL_tmpz00_10403;
BgL_tmpz00_10403 = 
(int)(2L); 
BgL_bucketsz00_2062 = 
STRUCT_REF(BgL_tz00_102, BgL_tmpz00_10403); }  else 
{ /* Llib/hash.scm 722 */
BgL_bucketsz00_2062 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_102); } } 
{ /* Llib/hash.scm 722 */
 long BgL_hashz00_2063;
{ /* Llib/hash.scm 723 */
 long BgL_arg1698z00_2085;
BgL_arg1698z00_2085 = 
STRING_LENGTH(BgL_keyz00_103); 
BgL_hashz00_2063 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_103), 
(int)(0L), 
(int)(BgL_arg1698z00_2085)); } 
{ /* Llib/hash.scm 723 */

{ /* Llib/hash.scm 724 */
 long BgL_g1069z00_2064;
{ /* Llib/hash.scm 724 */
 long BgL_n1z00_4044; long BgL_n2z00_4045;
BgL_n1z00_4044 = BgL_hashz00_2063; 
{ /* Llib/hash.scm 724 */
 obj_t BgL_tmpz00_10412;
if(
INTEGERP(BgL_siza7eza7_2061))
{ /* Llib/hash.scm 724 */
BgL_tmpz00_10412 = BgL_siza7eza7_2061
; }  else 
{ 
 obj_t BgL_auxz00_10415;
BgL_auxz00_10415 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29028L), BGl_string4010z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2061); 
FAILURE(BgL_auxz00_10415,BFALSE,BFALSE);} 
BgL_n2z00_4045 = 
(long)CINT(BgL_tmpz00_10412); } 
{ /* Llib/hash.scm 724 */
 bool_t BgL_test4828z00_10420;
{ /* Llib/hash.scm 724 */
 long BgL_arg2216z00_4047;
BgL_arg2216z00_4047 = 
(((BgL_n1z00_4044) | (BgL_n2z00_4045)) & -2147483648); 
BgL_test4828z00_10420 = 
(BgL_arg2216z00_4047==0L); } 
if(BgL_test4828z00_10420)
{ /* Llib/hash.scm 724 */
 int32_t BgL_arg2213z00_4048;
{ /* Llib/hash.scm 724 */
 int32_t BgL_arg2214z00_4049; int32_t BgL_arg2215z00_4050;
BgL_arg2214z00_4049 = 
(int32_t)(BgL_n1z00_4044); 
BgL_arg2215z00_4050 = 
(int32_t)(BgL_n2z00_4045); 
BgL_arg2213z00_4048 = 
(BgL_arg2214z00_4049%BgL_arg2215z00_4050); } 
{ /* Llib/hash.scm 724 */
 long BgL_arg2320z00_4055;
BgL_arg2320z00_4055 = 
(long)(BgL_arg2213z00_4048); 
BgL_g1069z00_2064 = 
(long)(BgL_arg2320z00_4055); } }  else 
{ /* Llib/hash.scm 724 */
BgL_g1069z00_2064 = 
(BgL_n1z00_4044%BgL_n2z00_4045); } } } 
{ 
 long BgL_offz00_2066; long BgL_iz00_2067;
BgL_offz00_2066 = BgL_g1069z00_2064; 
BgL_iz00_2067 = 1L; 
BgL_zc3z04anonymousza31674ze3z87_2068:
{ /* Llib/hash.scm 726 */
 long BgL_off3z00_2069;
BgL_off3z00_2069 = 
(BgL_offz00_2066*3L); 
{ /* Llib/hash.scm 727 */
 bool_t BgL_test4829z00_10430;
{ /* Llib/hash.scm 727 */
 obj_t BgL_vectorz00_4058;
if(
VECTORP(BgL_bucketsz00_2062))
{ /* Llib/hash.scm 727 */
BgL_vectorz00_4058 = BgL_bucketsz00_2062; }  else 
{ 
 obj_t BgL_auxz00_10433;
BgL_auxz00_10433 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29096L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2062); 
FAILURE(BgL_auxz00_10433,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 727 */
 bool_t BgL_test4831z00_10437;
{ /* Llib/hash.scm 727 */
 long BgL_tmpz00_10438;
BgL_tmpz00_10438 = 
VECTOR_LENGTH(BgL_vectorz00_4058); 
BgL_test4831z00_10437 = 
BOUND_CHECK(BgL_off3z00_2069, BgL_tmpz00_10438); } 
if(BgL_test4831z00_10437)
{ /* Llib/hash.scm 727 */
BgL_test4829z00_10430 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4058,BgL_off3z00_2069))
; }  else 
{ 
 obj_t BgL_auxz00_10443;
BgL_auxz00_10443 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29084L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4058, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4058)), 
(int)(BgL_off3z00_2069)); 
FAILURE(BgL_auxz00_10443,BFALSE,BFALSE);} } } 
if(BgL_test4829z00_10430)
{ /* Llib/hash.scm 728 */
 bool_t BgL_test4832z00_10450;
{ /* Llib/hash.scm 728 */
 obj_t BgL_arg1696z00_2083;
{ /* Llib/hash.scm 728 */
 obj_t BgL_vectorz00_4060;
if(
VECTORP(BgL_bucketsz00_2062))
{ /* Llib/hash.scm 728 */
BgL_vectorz00_4060 = BgL_bucketsz00_2062; }  else 
{ 
 obj_t BgL_auxz00_10453;
BgL_auxz00_10453 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29144L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2062); 
FAILURE(BgL_auxz00_10453,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 728 */
 bool_t BgL_test4834z00_10457;
{ /* Llib/hash.scm 728 */
 long BgL_tmpz00_10458;
BgL_tmpz00_10458 = 
VECTOR_LENGTH(BgL_vectorz00_4060); 
BgL_test4834z00_10457 = 
BOUND_CHECK(BgL_off3z00_2069, BgL_tmpz00_10458); } 
if(BgL_test4834z00_10457)
{ /* Llib/hash.scm 728 */
BgL_arg1696z00_2083 = 
VECTOR_REF(BgL_vectorz00_4060,BgL_off3z00_2069); }  else 
{ 
 obj_t BgL_auxz00_10462;
BgL_auxz00_10462 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29132L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4060, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4060)), 
(int)(BgL_off3z00_2069)); 
FAILURE(BgL_auxz00_10462,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 728 */
 obj_t BgL_string1z00_4062;
if(
STRINGP(BgL_arg1696z00_2083))
{ /* Llib/hash.scm 728 */
BgL_string1z00_4062 = BgL_arg1696z00_2083; }  else 
{ 
 obj_t BgL_auxz00_10471;
BgL_auxz00_10471 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29156L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1696z00_2083); 
FAILURE(BgL_auxz00_10471,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 728 */
 long BgL_l1z00_4064;
BgL_l1z00_4064 = 
STRING_LENGTH(BgL_string1z00_4062); 
if(
(BgL_l1z00_4064==
STRING_LENGTH(BgL_keyz00_103)))
{ /* Llib/hash.scm 728 */
 int BgL_arg2110z00_4067;
{ /* Llib/hash.scm 728 */
 char * BgL_auxz00_10481; char * BgL_tmpz00_10479;
BgL_auxz00_10481 = 
BSTRING_TO_STRING(BgL_keyz00_103); 
BgL_tmpz00_10479 = 
BSTRING_TO_STRING(BgL_string1z00_4062); 
BgL_arg2110z00_4067 = 
memcmp(BgL_tmpz00_10479, BgL_auxz00_10481, BgL_l1z00_4064); } 
BgL_test4832z00_10450 = 
(
(long)(BgL_arg2110z00_4067)==0L); }  else 
{ /* Llib/hash.scm 728 */
BgL_test4832z00_10450 = ((bool_t)0)
; } } } } 
if(BgL_test4832z00_10450)
{ /* Llib/hash.scm 729 */
 bool_t BgL_test4837z00_10486;
{ /* Llib/hash.scm 729 */
 long BgL_arg1685z00_2076;
BgL_arg1685z00_2076 = 
(BgL_off3z00_2069+2L); 
{ /* Llib/hash.scm 729 */
 obj_t BgL_vectorz00_4074;
if(
VECTORP(BgL_bucketsz00_2062))
{ /* Llib/hash.scm 729 */
BgL_vectorz00_4074 = BgL_bucketsz00_2062; }  else 
{ 
 obj_t BgL_auxz00_10490;
BgL_auxz00_10490 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29186L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2062); 
FAILURE(BgL_auxz00_10490,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 729 */
 bool_t BgL_test4839z00_10494;
{ /* Llib/hash.scm 729 */
 long BgL_tmpz00_10495;
BgL_tmpz00_10495 = 
VECTOR_LENGTH(BgL_vectorz00_4074); 
BgL_test4839z00_10494 = 
BOUND_CHECK(BgL_arg1685z00_2076, BgL_tmpz00_10495); } 
if(BgL_test4839z00_10494)
{ /* Llib/hash.scm 729 */
BgL_test4837z00_10486 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4074,BgL_arg1685z00_2076))
; }  else 
{ 
 obj_t BgL_auxz00_10500;
BgL_auxz00_10500 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29174L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4074, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4074)), 
(int)(BgL_arg1685z00_2076)); 
FAILURE(BgL_auxz00_10500,BFALSE,BFALSE);} } } } 
if(BgL_test4837z00_10486)
{ /* Llib/hash.scm 730 */
 long BgL_arg1684z00_2075;
BgL_arg1684z00_2075 = 
(BgL_off3z00_2069+1L); 
{ /* Llib/hash.scm 730 */
 obj_t BgL_vectorz00_4077;
if(
VECTORP(BgL_bucketsz00_2062))
{ /* Llib/hash.scm 730 */
BgL_vectorz00_4077 = BgL_bucketsz00_2062; }  else 
{ 
 obj_t BgL_auxz00_10510;
BgL_auxz00_10510 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29228L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2062); 
FAILURE(BgL_auxz00_10510,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 730 */
 bool_t BgL_test4841z00_10514;
{ /* Llib/hash.scm 730 */
 long BgL_tmpz00_10515;
BgL_tmpz00_10515 = 
VECTOR_LENGTH(BgL_vectorz00_4077); 
BgL_test4841z00_10514 = 
BOUND_CHECK(BgL_arg1684z00_2075, BgL_tmpz00_10515); } 
if(BgL_test4841z00_10514)
{ /* Llib/hash.scm 730 */
return 
VECTOR_REF(BgL_vectorz00_4077,BgL_arg1684z00_2075);}  else 
{ 
 obj_t BgL_auxz00_10519;
BgL_auxz00_10519 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29216L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4077, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4077)), 
(int)(BgL_arg1684z00_2075)); 
FAILURE(BgL_auxz00_10519,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 729 */
return BFALSE;} }  else 
{ /* Llib/hash.scm 731 */
 long BgL_noffz00_2077;
BgL_noffz00_2077 = 
(BgL_offz00_2066+
(BgL_iz00_2067*BgL_iz00_2067)); 
{ /* Llib/hash.scm 732 */
 bool_t BgL_test4842z00_10528;
{ /* Llib/hash.scm 732 */
 long BgL_n2z00_4084;
{ /* Llib/hash.scm 732 */
 obj_t BgL_tmpz00_10529;
if(
INTEGERP(BgL_siza7eza7_2061))
{ /* Llib/hash.scm 732 */
BgL_tmpz00_10529 = BgL_siza7eza7_2061
; }  else 
{ 
 obj_t BgL_auxz00_10532;
BgL_auxz00_10532 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29313L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2061); 
FAILURE(BgL_auxz00_10532,BFALSE,BFALSE);} 
BgL_n2z00_4084 = 
(long)CINT(BgL_tmpz00_10529); } 
BgL_test4842z00_10528 = 
(BgL_noffz00_2077>=BgL_n2z00_4084); } 
if(BgL_test4842z00_10528)
{ /* Llib/hash.scm 733 */
 long BgL_arg1689z00_2079; long BgL_arg1690z00_2080;
{ /* Llib/hash.scm 733 */
 long BgL_n1z00_4085; long BgL_n2z00_4086;
BgL_n1z00_4085 = BgL_noffz00_2077; 
{ /* Llib/hash.scm 733 */
 obj_t BgL_tmpz00_10538;
if(
INTEGERP(BgL_siza7eza7_2061))
{ /* Llib/hash.scm 733 */
BgL_tmpz00_10538 = BgL_siza7eza7_2061
; }  else 
{ 
 obj_t BgL_auxz00_10541;
BgL_auxz00_10541 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29348L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2061); 
FAILURE(BgL_auxz00_10541,BFALSE,BFALSE);} 
BgL_n2z00_4086 = 
(long)CINT(BgL_tmpz00_10538); } 
{ /* Llib/hash.scm 733 */
 bool_t BgL_test4845z00_10546;
{ /* Llib/hash.scm 733 */
 long BgL_arg2216z00_4088;
BgL_arg2216z00_4088 = 
(((BgL_n1z00_4085) | (BgL_n2z00_4086)) & -2147483648); 
BgL_test4845z00_10546 = 
(BgL_arg2216z00_4088==0L); } 
if(BgL_test4845z00_10546)
{ /* Llib/hash.scm 733 */
 int32_t BgL_arg2213z00_4089;
{ /* Llib/hash.scm 733 */
 int32_t BgL_arg2214z00_4090; int32_t BgL_arg2215z00_4091;
BgL_arg2214z00_4090 = 
(int32_t)(BgL_n1z00_4085); 
BgL_arg2215z00_4091 = 
(int32_t)(BgL_n2z00_4086); 
BgL_arg2213z00_4089 = 
(BgL_arg2214z00_4090%BgL_arg2215z00_4091); } 
{ /* Llib/hash.scm 733 */
 long BgL_arg2320z00_4096;
BgL_arg2320z00_4096 = 
(long)(BgL_arg2213z00_4089); 
BgL_arg1689z00_2079 = 
(long)(BgL_arg2320z00_4096); } }  else 
{ /* Llib/hash.scm 733 */
BgL_arg1689z00_2079 = 
(BgL_n1z00_4085%BgL_n2z00_4086); } } } 
BgL_arg1690z00_2080 = 
(BgL_iz00_2067+1L); 
{ 
 long BgL_iz00_10557; long BgL_offz00_10556;
BgL_offz00_10556 = BgL_arg1689z00_2079; 
BgL_iz00_10557 = BgL_arg1690z00_2080; 
BgL_iz00_2067 = BgL_iz00_10557; 
BgL_offz00_2066 = BgL_offz00_10556; 
goto BgL_zc3z04anonymousza31674ze3z87_2068;} }  else 
{ 
 long BgL_iz00_10559; long BgL_offz00_10558;
BgL_offz00_10558 = BgL_noffz00_2077; 
BgL_iz00_10559 = 
(BgL_iz00_2067+1L); 
BgL_iz00_2067 = BgL_iz00_10559; 
BgL_offz00_2066 = BgL_offz00_10558; 
goto BgL_zc3z04anonymousza31674ze3z87_2068;} } } }  else 
{ /* Llib/hash.scm 727 */
return BFALSE;} } } } } } } } } } 

}



/* &open-string-hashtable-get */
obj_t BGl_z62openzd2stringzd2hashtablezd2getzb0zz__hashz00(obj_t BgL_envz00_5469, obj_t BgL_tz00_5470, obj_t BgL_keyz00_5471)
{
{ /* Llib/hash.scm 720 */
{ /* Llib/hash.scm 721 */
 obj_t BgL_auxz00_10568; obj_t BgL_auxz00_10561;
if(
STRINGP(BgL_keyz00_5471))
{ /* Llib/hash.scm 721 */
BgL_auxz00_10568 = BgL_keyz00_5471
; }  else 
{ 
 obj_t BgL_auxz00_10571;
BgL_auxz00_10571 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28856L), BGl_string4011z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5471); 
FAILURE(BgL_auxz00_10571,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tz00_5470))
{ /* Llib/hash.scm 721 */
BgL_auxz00_10561 = BgL_tz00_5470
; }  else 
{ 
 obj_t BgL_auxz00_10564;
BgL_auxz00_10564 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(28856L), BGl_string4011z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tz00_5470); 
FAILURE(BgL_auxz00_10564,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2getzd2zz__hashz00(BgL_auxz00_10561, BgL_auxz00_10568);} } 

}



/* $open-string-hashtable-get */
BGL_EXPORTED_DEF obj_t BGl_z42openzd2stringzd2hashtablezd2getz90zz__hashz00(obj_t BgL_tz00_104, char * BgL_keyz00_105)
{
{ /* Llib/hash.scm 741 */
{ /* Llib/hash.scm 744 */
 obj_t BgL_siza7eza7_2086;
{ /* Llib/hash.scm 744 */
 bool_t BgL_test4848z00_10576;
{ /* Llib/hash.scm 744 */
 obj_t BgL_tmpz00_10577;
{ /* Llib/hash.scm 744 */
 obj_t BgL_res2583z00_4103;
{ /* Llib/hash.scm 744 */
 obj_t BgL_aux3393z00_6277;
BgL_aux3393z00_6277 = 
STRUCT_KEY(BgL_tz00_104); 
if(
SYMBOLP(BgL_aux3393z00_6277))
{ /* Llib/hash.scm 744 */
BgL_res2583z00_4103 = BgL_aux3393z00_6277; }  else 
{ 
 obj_t BgL_auxz00_10581;
BgL_auxz00_10581 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29866L), BGl_string4012z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3393z00_6277); 
FAILURE(BgL_auxz00_10581,BFALSE,BFALSE);} } 
BgL_tmpz00_10577 = BgL_res2583z00_4103; } 
BgL_test4848z00_10576 = 
(BgL_tmpz00_10577==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4848z00_10576)
{ /* Llib/hash.scm 744 */
 int BgL_tmpz00_10586;
BgL_tmpz00_10586 = 
(int)(1L); 
BgL_siza7eza7_2086 = 
STRUCT_REF(BgL_tz00_104, BgL_tmpz00_10586); }  else 
{ /* Llib/hash.scm 744 */
BgL_siza7eza7_2086 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_104); } } 
{ /* Llib/hash.scm 744 */
 obj_t BgL_bucketsz00_2087;
{ /* Llib/hash.scm 745 */
 bool_t BgL_test4850z00_10590;
{ /* Llib/hash.scm 745 */
 obj_t BgL_tmpz00_10591;
{ /* Llib/hash.scm 745 */
 obj_t BgL_res2584z00_4107;
{ /* Llib/hash.scm 745 */
 obj_t BgL_aux3395z00_6279;
BgL_aux3395z00_6279 = 
STRUCT_KEY(BgL_tz00_104); 
if(
SYMBOLP(BgL_aux3395z00_6279))
{ /* Llib/hash.scm 745 */
BgL_res2584z00_4107 = BgL_aux3395z00_6279; }  else 
{ 
 obj_t BgL_auxz00_10595;
BgL_auxz00_10595 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29913L), BGl_string4012z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3395z00_6279); 
FAILURE(BgL_auxz00_10595,BFALSE,BFALSE);} } 
BgL_tmpz00_10591 = BgL_res2584z00_4107; } 
BgL_test4850z00_10590 = 
(BgL_tmpz00_10591==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4850z00_10590)
{ /* Llib/hash.scm 745 */
 int BgL_tmpz00_10600;
BgL_tmpz00_10600 = 
(int)(2L); 
BgL_bucketsz00_2087 = 
STRUCT_REF(BgL_tz00_104, BgL_tmpz00_10600); }  else 
{ /* Llib/hash.scm 745 */
BgL_bucketsz00_2087 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_104); } } 
{ /* Llib/hash.scm 745 */
 long BgL_lenz00_2088;
BgL_lenz00_2088 = 
strlen(BgL_keyz00_105); 
{ /* Llib/hash.scm 746 */
 long BgL_hashz00_2089;
BgL_hashz00_2089 = 
bgl_string_hash(BgL_keyz00_105, 
(int)(0L), 
(int)(BgL_lenz00_2088)); 
{ /* Llib/hash.scm 747 */

{ /* Llib/hash.scm 748 */
 long BgL_g1070z00_2090;
{ /* Llib/hash.scm 748 */
 long BgL_n1z00_4108; long BgL_n2z00_4109;
BgL_n1z00_4108 = BgL_hashz00_2089; 
{ /* Llib/hash.scm 748 */
 obj_t BgL_tmpz00_10608;
if(
INTEGERP(BgL_siza7eza7_2086))
{ /* Llib/hash.scm 748 */
BgL_tmpz00_10608 = BgL_siza7eza7_2086
; }  else 
{ 
 obj_t BgL_auxz00_10611;
BgL_auxz00_10611 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30041L), BGl_string4012z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2086); 
FAILURE(BgL_auxz00_10611,BFALSE,BFALSE);} 
BgL_n2z00_4109 = 
(long)CINT(BgL_tmpz00_10608); } 
{ /* Llib/hash.scm 748 */
 bool_t BgL_test4853z00_10616;
{ /* Llib/hash.scm 748 */
 long BgL_arg2216z00_4111;
BgL_arg2216z00_4111 = 
(((BgL_n1z00_4108) | (BgL_n2z00_4109)) & -2147483648); 
BgL_test4853z00_10616 = 
(BgL_arg2216z00_4111==0L); } 
if(BgL_test4853z00_10616)
{ /* Llib/hash.scm 748 */
 int32_t BgL_arg2213z00_4112;
{ /* Llib/hash.scm 748 */
 int32_t BgL_arg2214z00_4113; int32_t BgL_arg2215z00_4114;
BgL_arg2214z00_4113 = 
(int32_t)(BgL_n1z00_4108); 
BgL_arg2215z00_4114 = 
(int32_t)(BgL_n2z00_4109); 
BgL_arg2213z00_4112 = 
(BgL_arg2214z00_4113%BgL_arg2215z00_4114); } 
{ /* Llib/hash.scm 748 */
 long BgL_arg2320z00_4119;
BgL_arg2320z00_4119 = 
(long)(BgL_arg2213z00_4112); 
BgL_g1070z00_2090 = 
(long)(BgL_arg2320z00_4119); } }  else 
{ /* Llib/hash.scm 748 */
BgL_g1070z00_2090 = 
(BgL_n1z00_4108%BgL_n2z00_4109); } } } 
{ 
 long BgL_offz00_2092; long BgL_iz00_2093;
BgL_offz00_2092 = BgL_g1070z00_2090; 
BgL_iz00_2093 = 1L; 
{ /* Llib/hash.scm 750 */
 long BgL_off3z00_2095;
BgL_off3z00_2095 = 
(BgL_offz00_2092*3L); 
{ /* Llib/hash.scm 751 */
 bool_t BgL_test4854z00_10626;
{ /* Llib/hash.scm 751 */
 obj_t BgL_vectorz00_4122;
if(
VECTORP(BgL_bucketsz00_2087))
{ /* Llib/hash.scm 751 */
BgL_vectorz00_4122 = BgL_bucketsz00_2087; }  else 
{ 
 obj_t BgL_auxz00_10629;
BgL_auxz00_10629 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30114L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2087); 
FAILURE(BgL_auxz00_10629,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 751 */
 bool_t BgL_test4856z00_10633;
{ /* Llib/hash.scm 751 */
 long BgL_tmpz00_10634;
BgL_tmpz00_10634 = 
VECTOR_LENGTH(BgL_vectorz00_4122); 
BgL_test4856z00_10633 = 
BOUND_CHECK(BgL_off3z00_2095, BgL_tmpz00_10634); } 
if(BgL_test4856z00_10633)
{ /* Llib/hash.scm 751 */
BgL_test4854z00_10626 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4122,BgL_off3z00_2095))
; }  else 
{ 
 obj_t BgL_auxz00_10639;
BgL_auxz00_10639 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30102L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4122, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4122)), 
(int)(BgL_off3z00_2095)); 
FAILURE(BgL_auxz00_10639,BFALSE,BFALSE);} } } 
if(BgL_test4854z00_10626)
{ /* Llib/hash.scm 751 */
{ /* Llib/hash.scm 752 */
 obj_t BgL_arg1716z00_2109;
{ /* Llib/hash.scm 752 */
 obj_t BgL_vectorz00_4124;
if(
VECTORP(BgL_bucketsz00_2087))
{ /* Llib/hash.scm 752 */
BgL_vectorz00_4124 = BgL_bucketsz00_2087; }  else 
{ 
 obj_t BgL_auxz00_10648;
BgL_auxz00_10648 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30158L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2087); 
FAILURE(BgL_auxz00_10648,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 752 */
 bool_t BgL_test4858z00_10652;
{ /* Llib/hash.scm 752 */
 long BgL_tmpz00_10653;
BgL_tmpz00_10653 = 
VECTOR_LENGTH(BgL_vectorz00_4124); 
BgL_test4858z00_10652 = 
BOUND_CHECK(BgL_off3z00_2095, BgL_tmpz00_10653); } 
if(BgL_test4858z00_10652)
{ /* Llib/hash.scm 752 */
BgL_arg1716z00_2109 = 
VECTOR_REF(BgL_vectorz00_4124,BgL_off3z00_2095); }  else 
{ 
 obj_t BgL_auxz00_10657;
BgL_auxz00_10657 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30146L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4124, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4124)), 
(int)(BgL_off3z00_2095)); 
FAILURE(BgL_auxz00_10657,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 752 */
 int BgL_xz00_6288;
{ /* Llib/hash.scm 752 */
 char * BgL_tmpz00_10664;
{ /* Llib/hash.scm 752 */
 obj_t BgL_tmpz00_10665;
if(
STRINGP(BgL_arg1716z00_2109))
{ /* Llib/hash.scm 752 */
BgL_tmpz00_10665 = BgL_arg1716z00_2109
; }  else 
{ 
 obj_t BgL_auxz00_10668;
BgL_auxz00_10668 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30170L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1716z00_2109); 
FAILURE(BgL_auxz00_10668,BFALSE,BFALSE);} 
BgL_tmpz00_10664 = 
BSTRING_TO_STRING(BgL_tmpz00_10665); } 
BgL_xz00_6288 = 
memcmp(BgL_tmpz00_10664, BgL_keyz00_105, BgL_lenz00_2088); } ((bool_t)1); } } 
{ /* Llib/hash.scm 753 */
 bool_t BgL_test4860z00_10674;
{ /* Llib/hash.scm 753 */
 long BgL_arg1709z00_2102;
BgL_arg1709z00_2102 = 
(BgL_off3z00_2095+2L); 
{ /* Llib/hash.scm 753 */
 obj_t BgL_vectorz00_4127;
if(
VECTORP(BgL_bucketsz00_2087))
{ /* Llib/hash.scm 753 */
BgL_vectorz00_4127 = BgL_bucketsz00_2087; }  else 
{ 
 obj_t BgL_auxz00_10678;
BgL_auxz00_10678 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30208L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2087); 
FAILURE(BgL_auxz00_10678,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 753 */
 bool_t BgL_test4862z00_10682;
{ /* Llib/hash.scm 753 */
 long BgL_tmpz00_10683;
BgL_tmpz00_10683 = 
VECTOR_LENGTH(BgL_vectorz00_4127); 
BgL_test4862z00_10682 = 
BOUND_CHECK(BgL_arg1709z00_2102, BgL_tmpz00_10683); } 
if(BgL_test4862z00_10682)
{ /* Llib/hash.scm 753 */
BgL_test4860z00_10674 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4127,BgL_arg1709z00_2102))
; }  else 
{ 
 obj_t BgL_auxz00_10688;
BgL_auxz00_10688 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30196L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4127, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4127)), 
(int)(BgL_arg1709z00_2102)); 
FAILURE(BgL_auxz00_10688,BFALSE,BFALSE);} } } } 
if(BgL_test4860z00_10674)
{ /* Llib/hash.scm 754 */
 long BgL_arg1708z00_2101;
BgL_arg1708z00_2101 = 
(BgL_off3z00_2095+1L); 
{ /* Llib/hash.scm 754 */
 obj_t BgL_vectorz00_4130;
if(
VECTORP(BgL_bucketsz00_2087))
{ /* Llib/hash.scm 754 */
BgL_vectorz00_4130 = BgL_bucketsz00_2087; }  else 
{ 
 obj_t BgL_auxz00_10698;
BgL_auxz00_10698 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30247L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2087); 
FAILURE(BgL_auxz00_10698,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 754 */
 bool_t BgL_test4864z00_10702;
{ /* Llib/hash.scm 754 */
 long BgL_tmpz00_10703;
BgL_tmpz00_10703 = 
VECTOR_LENGTH(BgL_vectorz00_4130); 
BgL_test4864z00_10702 = 
BOUND_CHECK(BgL_arg1708z00_2101, BgL_tmpz00_10703); } 
if(BgL_test4864z00_10702)
{ /* Llib/hash.scm 754 */
return 
VECTOR_REF(BgL_vectorz00_4130,BgL_arg1708z00_2101);}  else 
{ 
 obj_t BgL_auxz00_10707;
BgL_auxz00_10707 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30235L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4130, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4130)), 
(int)(BgL_arg1708z00_2101)); 
FAILURE(BgL_auxz00_10707,BFALSE,BFALSE);} } } }  else 
{ /* Llib/hash.scm 753 */
return BFALSE;} } }  else 
{ /* Llib/hash.scm 751 */
return BFALSE;} } } } } } } } } } } 

}



/* &$open-string-hashtable-get */
obj_t BGl_z62z42openzd2stringzd2hashtablezd2getzf2zz__hashz00(obj_t BgL_envz00_5472, obj_t BgL_tz00_5473, obj_t BgL_keyz00_5474)
{
{ /* Llib/hash.scm 741 */
{ /* Llib/hash.scm 744 */
 char * BgL_auxz00_10721; obj_t BgL_auxz00_10714;
{ /* Llib/hash.scm 744 */
 obj_t BgL_tmpz00_10722;
if(
STRINGP(BgL_keyz00_5474))
{ /* Llib/hash.scm 744 */
BgL_tmpz00_10722 = BgL_keyz00_5474
; }  else 
{ 
 obj_t BgL_auxz00_10725;
BgL_auxz00_10725 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29853L), BGl_string4013z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5474); 
FAILURE(BgL_auxz00_10725,BFALSE,BFALSE);} 
BgL_auxz00_10721 = 
BSTRING_TO_STRING(BgL_tmpz00_10722); } 
if(
STRUCTP(BgL_tz00_5473))
{ /* Llib/hash.scm 744 */
BgL_auxz00_10714 = BgL_tz00_5473
; }  else 
{ 
 obj_t BgL_auxz00_10717;
BgL_auxz00_10717 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(29853L), BGl_string4013z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tz00_5473); 
FAILURE(BgL_auxz00_10717,BFALSE,BFALSE);} 
return 
BGl_z42openzd2stringzd2hashtablezd2getz90zz__hashz00(BgL_auxz00_10714, BgL_auxz00_10721);} } 

}



/* hashtable-put! */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2putz12zc0zz__hashz00(obj_t BgL_tablez00_106, obj_t BgL_keyz00_107, obj_t BgL_objz00_108)
{
{ /* Llib/hash.scm 765 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_106))
{ /* Llib/hash.scm 768 */
 obj_t BgL_keyz00_4156;
if(
STRINGP(BgL_keyz00_107))
{ /* Llib/hash.scm 768 */
BgL_keyz00_4156 = BgL_keyz00_107; }  else 
{ 
 obj_t BgL_auxz00_10735;
BgL_auxz00_10735 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30852L), BGl_string4014z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_107); 
FAILURE(BgL_auxz00_10735,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 779 */
 long BgL_arg1720z00_4157;
{ /* Llib/hash.scm 779 */
 long BgL_arg1721z00_4158;
BgL_arg1721z00_4158 = 
STRING_LENGTH(BgL_keyz00_4156); 
BgL_arg1720z00_4157 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_4156), 
(int)(0L), 
(int)(BgL_arg1721z00_4158)); } 
return 
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(BgL_tablez00_106, BgL_keyz00_4156, BgL_objz00_108, 
BINT(BgL_arg1720z00_4157));} }  else 
{ /* Llib/hash.scm 767 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_106))
{ /* Llib/hash.scm 769 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2putz12z12zz__weakhashz00(BgL_tablez00_106, BgL_keyz00_107, BgL_objz00_108);}  else 
{ /* Llib/hash.scm 769 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2putz12z12zz__hashz00(BgL_tablez00_106, BgL_keyz00_107, BgL_objz00_108);} } } 

}



/* &hashtable-put! */
obj_t BGl_z62hashtablezd2putz12za2zz__hashz00(obj_t BgL_envz00_5475, obj_t BgL_tablez00_5476, obj_t BgL_keyz00_5477, obj_t BgL_objz00_5478)
{
{ /* Llib/hash.scm 765 */
{ /* Llib/hash.scm 767 */
 obj_t BgL_auxz00_10750;
if(
STRUCTP(BgL_tablez00_5476))
{ /* Llib/hash.scm 767 */
BgL_auxz00_10750 = BgL_tablez00_5476
; }  else 
{ 
 obj_t BgL_auxz00_10753;
BgL_auxz00_10753 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(30779L), BGl_string4015z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5476); 
FAILURE(BgL_auxz00_10753,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2putz12zc0zz__hashz00(BgL_auxz00_10750, BgL_keyz00_5477, BgL_objz00_5478);} } 

}



/* open-string-hashtable-put! */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2putz12zc0zz__hashz00(obj_t BgL_tablez00_109, obj_t BgL_keyz00_110, obj_t BgL_objz00_111)
{
{ /* Llib/hash.scm 777 */
{ /* Llib/hash.scm 779 */
 long BgL_arg1720z00_4160;
{ /* Llib/hash.scm 779 */
 long BgL_arg1721z00_4161;
BgL_arg1721z00_4161 = 
STRING_LENGTH(BgL_keyz00_110); 
BgL_arg1720z00_4160 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_110), 
(int)(0L), 
(int)(BgL_arg1721z00_4161)); } 
return 
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(BgL_tablez00_109, BgL_keyz00_110, BgL_objz00_111, 
BINT(BgL_arg1720z00_4160));} } 

}



/* &open-string-hashtable-put! */
obj_t BGl_z62openzd2stringzd2hashtablezd2putz12za2zz__hashz00(obj_t BgL_envz00_5479, obj_t BgL_tablez00_5480, obj_t BgL_keyz00_5481, obj_t BgL_objz00_5482)
{
{ /* Llib/hash.scm 777 */
{ /* Llib/hash.scm 779 */
 obj_t BgL_auxz00_10772; obj_t BgL_auxz00_10765;
if(
STRINGP(BgL_keyz00_5481))
{ /* Llib/hash.scm 779 */
BgL_auxz00_10772 = BgL_keyz00_5481
; }  else 
{ 
 obj_t BgL_auxz00_10775;
BgL_auxz00_10775 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31346L), BGl_string4016z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5481); 
FAILURE(BgL_auxz00_10775,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5480))
{ /* Llib/hash.scm 779 */
BgL_auxz00_10765 = BgL_tablez00_5480
; }  else 
{ 
 obj_t BgL_auxz00_10768;
BgL_auxz00_10768 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31346L), BGl_string4016z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5480); 
FAILURE(BgL_auxz00_10768,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2putz12zc0zz__hashz00(BgL_auxz00_10765, BgL_auxz00_10772, BgL_objz00_5482);} } 

}



/* open-string-hashtable-put/hash! */
obj_t BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(obj_t BgL_tz00_112, obj_t BgL_keyz00_113, obj_t BgL_valz00_114, obj_t BgL_hashz00_115)
{
{ /* Llib/hash.scm 784 */
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00:
{ /* Llib/hash.scm 785 */
 obj_t BgL_siza7eza7_2115; obj_t BgL_bucketsz00_2116;
{ /* Llib/hash.scm 785 */
 bool_t BgL_test4873z00_10780;
{ /* Llib/hash.scm 785 */
 obj_t BgL_tmpz00_10781;
{ /* Llib/hash.scm 785 */
 obj_t BgL_res2585z00_4166;
{ /* Llib/hash.scm 785 */
 obj_t BgL_aux3422z00_6307;
BgL_aux3422z00_6307 = 
STRUCT_KEY(BgL_tz00_112); 
if(
SYMBOLP(BgL_aux3422z00_6307))
{ /* Llib/hash.scm 785 */
BgL_res2585z00_4166 = BgL_aux3422z00_6307; }  else 
{ 
 obj_t BgL_auxz00_10785;
BgL_auxz00_10785 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31664L), BGl_string4017z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3422z00_6307); 
FAILURE(BgL_auxz00_10785,BFALSE,BFALSE);} } 
BgL_tmpz00_10781 = BgL_res2585z00_4166; } 
BgL_test4873z00_10780 = 
(BgL_tmpz00_10781==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4873z00_10780)
{ /* Llib/hash.scm 785 */
 int BgL_tmpz00_10790;
BgL_tmpz00_10790 = 
(int)(1L); 
BgL_siza7eza7_2115 = 
STRUCT_REF(BgL_tz00_112, BgL_tmpz00_10790); }  else 
{ /* Llib/hash.scm 785 */
BgL_siza7eza7_2115 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_112); } } 
{ /* Llib/hash.scm 786 */
 bool_t BgL_test4875z00_10794;
{ /* Llib/hash.scm 786 */
 obj_t BgL_tmpz00_10795;
{ /* Llib/hash.scm 786 */
 obj_t BgL_res2586z00_4170;
{ /* Llib/hash.scm 786 */
 obj_t BgL_aux3424z00_6309;
BgL_aux3424z00_6309 = 
STRUCT_KEY(BgL_tz00_112); 
if(
SYMBOLP(BgL_aux3424z00_6309))
{ /* Llib/hash.scm 786 */
BgL_res2586z00_4170 = BgL_aux3424z00_6309; }  else 
{ 
 obj_t BgL_auxz00_10799;
BgL_auxz00_10799 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31706L), BGl_string4017z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3424z00_6309); 
FAILURE(BgL_auxz00_10799,BFALSE,BFALSE);} } 
BgL_tmpz00_10795 = BgL_res2586z00_4170; } 
BgL_test4875z00_10794 = 
(BgL_tmpz00_10795==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4875z00_10794)
{ /* Llib/hash.scm 786 */
 int BgL_tmpz00_10804;
BgL_tmpz00_10804 = 
(int)(2L); 
BgL_bucketsz00_2116 = 
STRUCT_REF(BgL_tz00_112, BgL_tmpz00_10804); }  else 
{ /* Llib/hash.scm 786 */
BgL_bucketsz00_2116 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_112); } } 
{ /* Llib/hash.scm 787 */
 long BgL_g1071z00_2117;
{ /* Llib/hash.scm 787 */
 long BgL_n1z00_4171; long BgL_n2z00_4172;
{ /* Llib/hash.scm 787 */
 obj_t BgL_tmpz00_10808;
if(
INTEGERP(BgL_hashz00_115))
{ /* Llib/hash.scm 787 */
BgL_tmpz00_10808 = BgL_hashz00_115
; }  else 
{ 
 obj_t BgL_auxz00_10811;
BgL_auxz00_10811 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31766L), BGl_string4017z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_hashz00_115); 
FAILURE(BgL_auxz00_10811,BFALSE,BFALSE);} 
BgL_n1z00_4171 = 
(long)CINT(BgL_tmpz00_10808); } 
{ /* Llib/hash.scm 787 */
 obj_t BgL_tmpz00_10816;
if(
INTEGERP(BgL_siza7eza7_2115))
{ /* Llib/hash.scm 787 */
BgL_tmpz00_10816 = BgL_siza7eza7_2115
; }  else 
{ 
 obj_t BgL_auxz00_10819;
BgL_auxz00_10819 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31771L), BGl_string4017z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2115); 
FAILURE(BgL_auxz00_10819,BFALSE,BFALSE);} 
BgL_n2z00_4172 = 
(long)CINT(BgL_tmpz00_10816); } 
{ /* Llib/hash.scm 787 */
 bool_t BgL_test4879z00_10824;
{ /* Llib/hash.scm 787 */
 long BgL_arg2216z00_4174;
BgL_arg2216z00_4174 = 
(((BgL_n1z00_4171) | (BgL_n2z00_4172)) & -2147483648); 
BgL_test4879z00_10824 = 
(BgL_arg2216z00_4174==0L); } 
if(BgL_test4879z00_10824)
{ /* Llib/hash.scm 787 */
 int32_t BgL_arg2213z00_4175;
{ /* Llib/hash.scm 787 */
 int32_t BgL_arg2214z00_4176; int32_t BgL_arg2215z00_4177;
BgL_arg2214z00_4176 = 
(int32_t)(BgL_n1z00_4171); 
BgL_arg2215z00_4177 = 
(int32_t)(BgL_n2z00_4172); 
BgL_arg2213z00_4175 = 
(BgL_arg2214z00_4176%BgL_arg2215z00_4177); } 
{ /* Llib/hash.scm 787 */
 long BgL_arg2320z00_4182;
BgL_arg2320z00_4182 = 
(long)(BgL_arg2213z00_4175); 
BgL_g1071z00_2117 = 
(long)(BgL_arg2320z00_4182); } }  else 
{ /* Llib/hash.scm 787 */
BgL_g1071z00_2117 = 
(BgL_n1z00_4171%BgL_n2z00_4172); } } } 
{ 
 long BgL_offz00_2119; long BgL_iz00_2120;
BgL_offz00_2119 = BgL_g1071z00_2117; 
BgL_iz00_2120 = 1L; 
BgL_zc3z04anonymousza31722ze3z87_2121:
{ /* Llib/hash.scm 789 */
 long BgL_off3z00_2122;
BgL_off3z00_2122 = 
(BgL_offz00_2119*3L); 
{ /* Llib/hash.scm 791 */
 bool_t BgL_test4880z00_10834;
{ /* Llib/hash.scm 791 */
 obj_t BgL_vectorz00_4185;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 791 */
BgL_vectorz00_4185 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_10837;
BgL_auxz00_10837 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31853L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_10837,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 791 */
 bool_t BgL_test4882z00_10841;
{ /* Llib/hash.scm 791 */
 long BgL_tmpz00_10842;
BgL_tmpz00_10842 = 
VECTOR_LENGTH(BgL_vectorz00_4185); 
BgL_test4882z00_10841 = 
BOUND_CHECK(BgL_off3z00_2122, BgL_tmpz00_10842); } 
if(BgL_test4882z00_10841)
{ /* Llib/hash.scm 791 */
BgL_test4880z00_10834 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4185,BgL_off3z00_2122))
; }  else 
{ 
 obj_t BgL_auxz00_10847;
BgL_auxz00_10847 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31841L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4185, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4185)), 
(int)(BgL_off3z00_2122)); 
FAILURE(BgL_auxz00_10847,BFALSE,BFALSE);} } } 
if(BgL_test4880z00_10834)
{ /* Llib/hash.scm 797 */
 bool_t BgL_test4883z00_10854;
{ /* Llib/hash.scm 797 */
 obj_t BgL_arg1741z00_2141;
{ /* Llib/hash.scm 797 */
 obj_t BgL_vectorz00_4187;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 797 */
BgL_vectorz00_4187 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_10857;
BgL_auxz00_10857 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32072L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_10857,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 797 */
 bool_t BgL_test4885z00_10861;
{ /* Llib/hash.scm 797 */
 long BgL_tmpz00_10862;
BgL_tmpz00_10862 = 
VECTOR_LENGTH(BgL_vectorz00_4187); 
BgL_test4885z00_10861 = 
BOUND_CHECK(BgL_off3z00_2122, BgL_tmpz00_10862); } 
if(BgL_test4885z00_10861)
{ /* Llib/hash.scm 797 */
BgL_arg1741z00_2141 = 
VECTOR_REF(BgL_vectorz00_4187,BgL_off3z00_2122); }  else 
{ 
 obj_t BgL_auxz00_10866;
BgL_auxz00_10866 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32060L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4187, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4187)), 
(int)(BgL_off3z00_2122)); 
FAILURE(BgL_auxz00_10866,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 797 */
 obj_t BgL_string1z00_4189; obj_t BgL_string2z00_4190;
if(
STRINGP(BgL_arg1741z00_2141))
{ /* Llib/hash.scm 797 */
BgL_string1z00_4189 = BgL_arg1741z00_2141; }  else 
{ 
 obj_t BgL_auxz00_10875;
BgL_auxz00_10875 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32084L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1741z00_2141); 
FAILURE(BgL_auxz00_10875,BFALSE,BFALSE);} 
if(
STRINGP(BgL_keyz00_113))
{ /* Llib/hash.scm 797 */
BgL_string2z00_4190 = BgL_keyz00_113; }  else 
{ 
 obj_t BgL_auxz00_10881;
BgL_auxz00_10881 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32086L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_113); 
FAILURE(BgL_auxz00_10881,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 797 */
 long BgL_l1z00_4191;
BgL_l1z00_4191 = 
STRING_LENGTH(BgL_string1z00_4189); 
if(
(BgL_l1z00_4191==
STRING_LENGTH(BgL_string2z00_4190)))
{ /* Llib/hash.scm 797 */
 int BgL_arg2110z00_4194;
{ /* Llib/hash.scm 797 */
 char * BgL_auxz00_10891; char * BgL_tmpz00_10889;
BgL_auxz00_10891 = 
BSTRING_TO_STRING(BgL_string2z00_4190); 
BgL_tmpz00_10889 = 
BSTRING_TO_STRING(BgL_string1z00_4189); 
BgL_arg2110z00_4194 = 
memcmp(BgL_tmpz00_10889, BgL_auxz00_10891, BgL_l1z00_4191); } 
BgL_test4883z00_10854 = 
(
(long)(BgL_arg2110z00_4194)==0L); }  else 
{ /* Llib/hash.scm 797 */
BgL_test4883z00_10854 = ((bool_t)0)
; } } } } 
if(BgL_test4883z00_10854)
{ /* Llib/hash.scm 797 */
{ /* Llib/hash.scm 799 */
 long BgL_arg1726z00_2126;
BgL_arg1726z00_2126 = 
(BgL_off3z00_2122+1L); 
{ /* Llib/hash.scm 799 */
 obj_t BgL_vectorz00_4201;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 799 */
BgL_vectorz00_4201 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_10899;
BgL_auxz00_10899 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32119L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_10899,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 799 */
 bool_t BgL_test4890z00_10903;
{ /* Llib/hash.scm 799 */
 long BgL_tmpz00_10904;
BgL_tmpz00_10904 = 
VECTOR_LENGTH(BgL_vectorz00_4201); 
BgL_test4890z00_10903 = 
BOUND_CHECK(BgL_arg1726z00_2126, BgL_tmpz00_10904); } 
if(BgL_test4890z00_10903)
{ /* Llib/hash.scm 799 */
VECTOR_SET(BgL_vectorz00_4201,BgL_arg1726z00_2126,BgL_valz00_114); }  else 
{ 
 obj_t BgL_auxz00_10908;
BgL_auxz00_10908 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32106L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4201, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4201)), 
(int)(BgL_arg1726z00_2126)); 
FAILURE(BgL_auxz00_10908,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 800 */
 long BgL_arg1727z00_2127;
BgL_arg1727z00_2127 = 
(BgL_off3z00_2122+2L); 
{ /* Llib/hash.scm 800 */
 obj_t BgL_vectorz00_4204;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 800 */
BgL_vectorz00_4204 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_10918;
BgL_auxz00_10918 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32160L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_10918,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 800 */
 bool_t BgL_test4892z00_10922;
{ /* Llib/hash.scm 800 */
 long BgL_tmpz00_10923;
BgL_tmpz00_10923 = 
VECTOR_LENGTH(BgL_vectorz00_4204); 
BgL_test4892z00_10922 = 
BOUND_CHECK(BgL_arg1727z00_2127, BgL_tmpz00_10923); } 
if(BgL_test4892z00_10922)
{ /* Llib/hash.scm 800 */
return 
VECTOR_SET(BgL_vectorz00_4204,BgL_arg1727z00_2127,BgL_hashz00_115);}  else 
{ 
 obj_t BgL_auxz00_10927;
BgL_auxz00_10927 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32147L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4204, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4204)), 
(int)(BgL_arg1727z00_2127)); 
FAILURE(BgL_auxz00_10927,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/hash.scm 801 */
 bool_t BgL_test4893z00_10934;
if(
(BgL_iz00_2120>=5L))
{ /* Llib/hash.scm 802 */
 obj_t BgL_arg1738z00_2139;
{ /* Llib/hash.scm 802 */
 bool_t BgL_test4895z00_10937;
{ /* Llib/hash.scm 802 */
 obj_t BgL_tmpz00_10938;
{ /* Llib/hash.scm 802 */
 obj_t BgL_res2587z00_4210;
{ /* Llib/hash.scm 802 */
 obj_t BgL_aux3440z00_6325;
BgL_aux3440z00_6325 = 
STRUCT_KEY(BgL_tz00_112); 
if(
SYMBOLP(BgL_aux3440z00_6325))
{ /* Llib/hash.scm 802 */
BgL_res2587z00_4210 = BgL_aux3440z00_6325; }  else 
{ 
 obj_t BgL_auxz00_10942;
BgL_auxz00_10942 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32225L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3440z00_6325); 
FAILURE(BgL_auxz00_10942,BFALSE,BFALSE);} } 
BgL_tmpz00_10938 = BgL_res2587z00_4210; } 
BgL_test4895z00_10937 = 
(BgL_tmpz00_10938==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4895z00_10937)
{ /* Llib/hash.scm 802 */
 int BgL_tmpz00_10947;
BgL_tmpz00_10947 = 
(int)(1L); 
BgL_arg1738z00_2139 = 
STRUCT_REF(BgL_tz00_112, BgL_tmpz00_10947); }  else 
{ /* Llib/hash.scm 802 */
BgL_arg1738z00_2139 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_112); } } 
{ /* Llib/hash.scm 802 */
 long BgL_n1z00_4211;
{ /* Llib/hash.scm 802 */
 obj_t BgL_tmpz00_10951;
if(
INTEGERP(BgL_arg1738z00_2139))
{ /* Llib/hash.scm 802 */
BgL_tmpz00_10951 = BgL_arg1738z00_2139
; }  else 
{ 
 obj_t BgL_auxz00_10954;
BgL_auxz00_10954 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32253L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1738z00_2139); 
FAILURE(BgL_auxz00_10954,BFALSE,BFALSE);} 
BgL_n1z00_4211 = 
(long)CINT(BgL_tmpz00_10951); } 
BgL_test4893z00_10934 = 
(BgL_n1z00_4211<8388608L); } }  else 
{ /* Llib/hash.scm 801 */
BgL_test4893z00_10934 = ((bool_t)0)
; } 
if(BgL_test4893z00_10934)
{ /* Llib/hash.scm 801 */
BGl_openzd2stringzd2hashtablezd2rehashz12zc0zz__hashz00(BgL_tz00_112); 
{ 

goto BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00;} }  else 
{ /* Llib/hash.scm 809 */
 long BgL_noffz00_2132;
BgL_noffz00_2132 = 
(BgL_offz00_2119+
(BgL_iz00_2120*BgL_iz00_2120)); 
{ /* Llib/hash.scm 810 */
 bool_t BgL_test4898z00_10963;
{ /* Llib/hash.scm 810 */
 long BgL_n2z00_4218;
{ /* Llib/hash.scm 810 */
 obj_t BgL_tmpz00_10964;
if(
INTEGERP(BgL_siza7eza7_2115))
{ /* Llib/hash.scm 810 */
BgL_tmpz00_10964 = BgL_siza7eza7_2115
; }  else 
{ 
 obj_t BgL_auxz00_10967;
BgL_auxz00_10967 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32485L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2115); 
FAILURE(BgL_auxz00_10967,BFALSE,BFALSE);} 
BgL_n2z00_4218 = 
(long)CINT(BgL_tmpz00_10964); } 
BgL_test4898z00_10963 = 
(BgL_noffz00_2132>=BgL_n2z00_4218); } 
if(BgL_test4898z00_10963)
{ /* Llib/hash.scm 811 */
 long BgL_arg1733z00_2134; long BgL_arg1734z00_2135;
{ /* Llib/hash.scm 811 */
 long BgL_n1z00_4219; long BgL_n2z00_4220;
BgL_n1z00_4219 = BgL_noffz00_2132; 
{ /* Llib/hash.scm 811 */
 obj_t BgL_tmpz00_10973;
if(
INTEGERP(BgL_siza7eza7_2115))
{ /* Llib/hash.scm 811 */
BgL_tmpz00_10973 = BgL_siza7eza7_2115
; }  else 
{ 
 obj_t BgL_auxz00_10976;
BgL_auxz00_10976 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32524L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2115); 
FAILURE(BgL_auxz00_10976,BFALSE,BFALSE);} 
BgL_n2z00_4220 = 
(long)CINT(BgL_tmpz00_10973); } 
{ /* Llib/hash.scm 811 */
 bool_t BgL_test4901z00_10981;
{ /* Llib/hash.scm 811 */
 long BgL_arg2216z00_4222;
BgL_arg2216z00_4222 = 
(((BgL_n1z00_4219) | (BgL_n2z00_4220)) & -2147483648); 
BgL_test4901z00_10981 = 
(BgL_arg2216z00_4222==0L); } 
if(BgL_test4901z00_10981)
{ /* Llib/hash.scm 811 */
 int32_t BgL_arg2213z00_4223;
{ /* Llib/hash.scm 811 */
 int32_t BgL_arg2214z00_4224; int32_t BgL_arg2215z00_4225;
BgL_arg2214z00_4224 = 
(int32_t)(BgL_n1z00_4219); 
BgL_arg2215z00_4225 = 
(int32_t)(BgL_n2z00_4220); 
BgL_arg2213z00_4223 = 
(BgL_arg2214z00_4224%BgL_arg2215z00_4225); } 
{ /* Llib/hash.scm 811 */
 long BgL_arg2320z00_4230;
BgL_arg2320z00_4230 = 
(long)(BgL_arg2213z00_4223); 
BgL_arg1733z00_2134 = 
(long)(BgL_arg2320z00_4230); } }  else 
{ /* Llib/hash.scm 811 */
BgL_arg1733z00_2134 = 
(BgL_n1z00_4219%BgL_n2z00_4220); } } } 
BgL_arg1734z00_2135 = 
(BgL_iz00_2120+1L); 
{ 
 long BgL_iz00_10992; long BgL_offz00_10991;
BgL_offz00_10991 = BgL_arg1733z00_2134; 
BgL_iz00_10992 = BgL_arg1734z00_2135; 
BgL_iz00_2120 = BgL_iz00_10992; 
BgL_offz00_2119 = BgL_offz00_10991; 
goto BgL_zc3z04anonymousza31722ze3z87_2121;} }  else 
{ 
 long BgL_iz00_10994; long BgL_offz00_10993;
BgL_offz00_10993 = BgL_noffz00_2132; 
BgL_iz00_10994 = 
(BgL_iz00_2120+1L); 
BgL_iz00_2120 = BgL_iz00_10994; 
BgL_offz00_2119 = BgL_offz00_10993; 
goto BgL_zc3z04anonymousza31722ze3z87_2121;} } } } }  else 
{ /* Llib/hash.scm 791 */
{ /* Llib/hash.scm 793 */
 obj_t BgL_vectorz00_4234;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 793 */
BgL_vectorz00_4234 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_10998;
BgL_auxz00_10998 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31901L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_10998,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 793 */
 bool_t BgL_test4903z00_11002;
{ /* Llib/hash.scm 793 */
 long BgL_tmpz00_11003;
BgL_tmpz00_11003 = 
VECTOR_LENGTH(BgL_vectorz00_4234); 
BgL_test4903z00_11002 = 
BOUND_CHECK(BgL_off3z00_2122, BgL_tmpz00_11003); } 
if(BgL_test4903z00_11002)
{ /* Llib/hash.scm 793 */
VECTOR_SET(BgL_vectorz00_4234,BgL_off3z00_2122,BgL_keyz00_113); }  else 
{ 
 obj_t BgL_auxz00_11007;
BgL_auxz00_11007 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31888L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4234, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4234)), 
(int)(BgL_off3z00_2122)); 
FAILURE(BgL_auxz00_11007,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 794 */
 long BgL_arg1742z00_2142;
BgL_arg1742z00_2142 = 
(BgL_off3z00_2122+1L); 
{ /* Llib/hash.scm 794 */
 obj_t BgL_vectorz00_4237;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 794 */
BgL_vectorz00_4237 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_11017;
BgL_auxz00_11017 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31934L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_11017,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 794 */
 bool_t BgL_test4905z00_11021;
{ /* Llib/hash.scm 794 */
 long BgL_tmpz00_11022;
BgL_tmpz00_11022 = 
VECTOR_LENGTH(BgL_vectorz00_4237); 
BgL_test4905z00_11021 = 
BOUND_CHECK(BgL_arg1742z00_2142, BgL_tmpz00_11022); } 
if(BgL_test4905z00_11021)
{ /* Llib/hash.scm 794 */
VECTOR_SET(BgL_vectorz00_4237,BgL_arg1742z00_2142,BgL_valz00_114); }  else 
{ 
 obj_t BgL_auxz00_11026;
BgL_auxz00_11026 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31921L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4237, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4237)), 
(int)(BgL_arg1742z00_2142)); 
FAILURE(BgL_auxz00_11026,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 795 */
 long BgL_arg1743z00_2143;
BgL_arg1743z00_2143 = 
(BgL_off3z00_2122+2L); 
{ /* Llib/hash.scm 795 */
 obj_t BgL_vectorz00_4240;
if(
VECTORP(BgL_bucketsz00_2116))
{ /* Llib/hash.scm 795 */
BgL_vectorz00_4240 = BgL_bucketsz00_2116; }  else 
{ 
 obj_t BgL_auxz00_11036;
BgL_auxz00_11036 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31975L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2116); 
FAILURE(BgL_auxz00_11036,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 795 */
 bool_t BgL_test4907z00_11040;
{ /* Llib/hash.scm 795 */
 long BgL_tmpz00_11041;
BgL_tmpz00_11041 = 
VECTOR_LENGTH(BgL_vectorz00_4240); 
BgL_test4907z00_11040 = 
BOUND_CHECK(BgL_arg1743z00_2143, BgL_tmpz00_11041); } 
if(BgL_test4907z00_11040)
{ /* Llib/hash.scm 795 */
VECTOR_SET(BgL_vectorz00_4240,BgL_arg1743z00_2143,BgL_hashz00_115); }  else 
{ 
 obj_t BgL_auxz00_11045;
BgL_auxz00_11045 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(31962L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4240, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4240)), 
(int)(BgL_arg1743z00_2143)); 
FAILURE(BgL_auxz00_11045,BFALSE,BFALSE);} } } } 
return 
BGl_openzd2stringzd2hashtablezd2siza7ezd2incz12zb5zz__hashz00(BgL_tz00_112);} } } } } } } 

}



/* string-hashtable-put! */
BGL_EXPORTED_DEF obj_t BGl_stringzd2hashtablezd2putz12z12zz__hashz00(obj_t BgL_tablez00_116, obj_t BgL_keyz00_117, obj_t BgL_objz00_118)
{
{ /* Llib/hash.scm 817 */
{ /* Llib/hash.scm 818 */
 obj_t BgL_bucketsz00_2145;
{ /* Llib/hash.scm 818 */
 bool_t BgL_test4908z00_11053;
{ /* Llib/hash.scm 818 */
 obj_t BgL_tmpz00_11054;
{ /* Llib/hash.scm 818 */
 obj_t BgL_res2588z00_4245;
{ /* Llib/hash.scm 818 */
 obj_t BgL_aux3451z00_6336;
BgL_aux3451z00_6336 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3451z00_6336))
{ /* Llib/hash.scm 818 */
BgL_res2588z00_4245 = BgL_aux3451z00_6336; }  else 
{ 
 obj_t BgL_auxz00_11058;
BgL_auxz00_11058 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32878L), BGl_string4018z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3451z00_6336); 
FAILURE(BgL_auxz00_11058,BFALSE,BFALSE);} } 
BgL_tmpz00_11054 = BgL_res2588z00_4245; } 
BgL_test4908z00_11053 = 
(BgL_tmpz00_11054==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4908z00_11053)
{ /* Llib/hash.scm 818 */
 int BgL_tmpz00_11063;
BgL_tmpz00_11063 = 
(int)(2L); 
BgL_bucketsz00_2145 = 
STRUCT_REF(BgL_tablez00_116, BgL_tmpz00_11063); }  else 
{ /* Llib/hash.scm 818 */
BgL_bucketsz00_2145 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } 
{ /* Llib/hash.scm 818 */
 long BgL_bucketzd2lenzd2_2146;
{ /* Llib/hash.scm 819 */
 obj_t BgL_vectorz00_4246;
if(
VECTORP(BgL_bucketsz00_2145))
{ /* Llib/hash.scm 819 */
BgL_vectorz00_4246 = BgL_bucketsz00_2145; }  else 
{ 
 obj_t BgL_auxz00_11069;
BgL_auxz00_11069 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32936L), BGl_string4018z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2145); 
FAILURE(BgL_auxz00_11069,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2146 = 
VECTOR_LENGTH(BgL_vectorz00_4246); } 
{ /* Llib/hash.scm 819 */
 long BgL_bucketzd2numzd2_2147;
{ /* Llib/hash.scm 820 */
 long BgL_arg1767z00_2179;
{ /* Llib/hash.scm 820 */
 long BgL_arg1768z00_2180;
BgL_arg1768z00_2180 = 
STRING_LENGTH(BgL_keyz00_117); 
BgL_arg1767z00_2179 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_117), 
(int)(0L), 
(int)(BgL_arg1768z00_2180)); } 
{ /* Llib/hash.scm 820 */
 long BgL_n1z00_4248; long BgL_n2z00_4249;
BgL_n1z00_4248 = BgL_arg1767z00_2179; 
BgL_n2z00_4249 = BgL_bucketzd2lenzd2_2146; 
{ /* Llib/hash.scm 820 */
 bool_t BgL_test4911z00_11079;
{ /* Llib/hash.scm 820 */
 long BgL_arg2216z00_4251;
BgL_arg2216z00_4251 = 
(((BgL_n1z00_4248) | (BgL_n2z00_4249)) & -2147483648); 
BgL_test4911z00_11079 = 
(BgL_arg2216z00_4251==0L); } 
if(BgL_test4911z00_11079)
{ /* Llib/hash.scm 820 */
 int32_t BgL_arg2213z00_4252;
{ /* Llib/hash.scm 820 */
 int32_t BgL_arg2214z00_4253; int32_t BgL_arg2215z00_4254;
BgL_arg2214z00_4253 = 
(int32_t)(BgL_n1z00_4248); 
BgL_arg2215z00_4254 = 
(int32_t)(BgL_n2z00_4249); 
BgL_arg2213z00_4252 = 
(BgL_arg2214z00_4253%BgL_arg2215z00_4254); } 
{ /* Llib/hash.scm 820 */
 long BgL_arg2320z00_4259;
BgL_arg2320z00_4259 = 
(long)(BgL_arg2213z00_4252); 
BgL_bucketzd2numzd2_2147 = 
(long)(BgL_arg2320z00_4259); } }  else 
{ /* Llib/hash.scm 820 */
BgL_bucketzd2numzd2_2147 = 
(BgL_n1z00_4248%BgL_n2z00_4249); } } } } 
{ /* Llib/hash.scm 820 */
 obj_t BgL_bucketz00_2148;
{ /* Llib/hash.scm 821 */
 obj_t BgL_vectorz00_4261;
if(
VECTORP(BgL_bucketsz00_2145))
{ /* Llib/hash.scm 821 */
BgL_vectorz00_4261 = BgL_bucketsz00_2145; }  else 
{ 
 obj_t BgL_auxz00_11090;
BgL_auxz00_11090 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33054L), BGl_string4018z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2145); 
FAILURE(BgL_auxz00_11090,BFALSE,BFALSE);} 
BgL_bucketz00_2148 = 
VECTOR_REF(BgL_vectorz00_4261,BgL_bucketzd2numzd2_2147); } 
{ /* Llib/hash.scm 821 */
 obj_t BgL_maxzd2bucketzd2lenz00_2149;
{ /* Llib/hash.scm 822 */
 bool_t BgL_test4913z00_11095;
{ /* Llib/hash.scm 822 */
 obj_t BgL_tmpz00_11096;
{ /* Llib/hash.scm 822 */
 obj_t BgL_res2589z00_4266;
{ /* Llib/hash.scm 822 */
 obj_t BgL_aux3457z00_6342;
BgL_aux3457z00_6342 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3457z00_6342))
{ /* Llib/hash.scm 822 */
BgL_res2589z00_4266 = BgL_aux3457z00_6342; }  else 
{ 
 obj_t BgL_auxz00_11100;
BgL_auxz00_11100 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33094L), BGl_string4018z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3457z00_6342); 
FAILURE(BgL_auxz00_11100,BFALSE,BFALSE);} } 
BgL_tmpz00_11096 = BgL_res2589z00_4266; } 
BgL_test4913z00_11095 = 
(BgL_tmpz00_11096==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4913z00_11095)
{ /* Llib/hash.scm 822 */
 int BgL_tmpz00_11105;
BgL_tmpz00_11105 = 
(int)(1L); 
BgL_maxzd2bucketzd2lenz00_2149 = 
STRUCT_REF(BgL_tablez00_116, BgL_tmpz00_11105); }  else 
{ /* Llib/hash.scm 822 */
BgL_maxzd2bucketzd2lenz00_2149 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } 
{ /* Llib/hash.scm 822 */

{ /* Llib/hash.scm 827 */
 bool_t BgL_test4915z00_11109;
{ /* Llib/hash.scm 827 */
 bool_t BgL_test4916z00_11110;
{ /* Llib/hash.scm 300 */
 obj_t BgL_arg1432z00_4268;
{ /* Llib/hash.scm 300 */
 bool_t BgL_test4917z00_11111;
{ /* Llib/hash.scm 300 */
 obj_t BgL_tmpz00_11112;
{ /* Llib/hash.scm 300 */
 obj_t BgL_res2590z00_4272;
{ /* Llib/hash.scm 300 */
 obj_t BgL_aux3459z00_6344;
BgL_aux3459z00_6344 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3459z00_6344))
{ /* Llib/hash.scm 300 */
BgL_res2590z00_4272 = BgL_aux3459z00_6344; }  else 
{ 
 obj_t BgL_auxz00_11116;
BgL_auxz00_11116 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11344L), BGl_string4018z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3459z00_6344); 
FAILURE(BgL_auxz00_11116,BFALSE,BFALSE);} } 
BgL_tmpz00_11112 = BgL_res2590z00_4272; } 
BgL_test4917z00_11111 = 
(BgL_tmpz00_11112==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4917z00_11111)
{ /* Llib/hash.scm 300 */
 int BgL_tmpz00_11121;
BgL_tmpz00_11121 = 
(int)(5L); 
BgL_arg1432z00_4268 = 
STRUCT_REF(BgL_tablez00_116, BgL_tmpz00_11121); }  else 
{ /* Llib/hash.scm 300 */
BgL_arg1432z00_4268 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } 
{ /* Llib/hash.scm 300 */
 long BgL_n1z00_4273;
{ /* Llib/hash.scm 300 */
 obj_t BgL_tmpz00_11125;
if(
INTEGERP(BgL_arg1432z00_4268))
{ /* Llib/hash.scm 300 */
BgL_tmpz00_11125 = BgL_arg1432z00_4268
; }  else 
{ 
 obj_t BgL_auxz00_11128;
BgL_auxz00_11128 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(11366L), BGl_string4018z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1432z00_4268); 
FAILURE(BgL_auxz00_11128,BFALSE,BFALSE);} 
BgL_n1z00_4273 = 
(long)CINT(BgL_tmpz00_11125); } 
BgL_test4916z00_11110 = 
(BgL_n1z00_4273==4L); } } 
if(BgL_test4916z00_11110)
{ /* Llib/hash.scm 827 */
BgL_test4915z00_11109 = ((bool_t)0)
; }  else 
{ /* Llib/hash.scm 827 */
BgL_test4915z00_11109 = ((bool_t)0)
; } } 
if(BgL_test4915z00_11109)
{ /* Llib/hash.scm 827 */
BGl_bigloozd2typezd2errorz00zz__errorz00(BGl_string4014z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_117); }  else 
{ /* Llib/hash.scm 827 */BFALSE; } } 
if(
NULLP(BgL_bucketz00_2148))
{ /* Llib/hash.scm 829 */
{ /* Llib/hash.scm 831 */
 long BgL_arg1748z00_2156;
{ /* Llib/hash.scm 831 */
 obj_t BgL_arg1749z00_2157;
{ /* Llib/hash.scm 831 */
 bool_t BgL_test4921z00_11137;
{ /* Llib/hash.scm 831 */
 obj_t BgL_tmpz00_11138;
{ /* Llib/hash.scm 831 */
 obj_t BgL_res2591z00_4277;
{ /* Llib/hash.scm 831 */
 obj_t BgL_aux3462z00_6347;
BgL_aux3462z00_6347 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3462z00_6347))
{ /* Llib/hash.scm 831 */
BgL_res2591z00_4277 = BgL_aux3462z00_6347; }  else 
{ 
 obj_t BgL_auxz00_11142;
BgL_auxz00_11142 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33381L), BGl_string4018z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3462z00_6347); 
FAILURE(BgL_auxz00_11142,BFALSE,BFALSE);} } 
BgL_tmpz00_11138 = BgL_res2591z00_4277; } 
BgL_test4921z00_11137 = 
(BgL_tmpz00_11138==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4921z00_11137)
{ /* Llib/hash.scm 831 */
 int BgL_tmpz00_11147;
BgL_tmpz00_11147 = 
(int)(0L); 
BgL_arg1749z00_2157 = 
STRUCT_REF(BgL_tablez00_116, BgL_tmpz00_11147); }  else 
{ /* Llib/hash.scm 831 */
BgL_arg1749z00_2157 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } 
{ /* Llib/hash.scm 831 */
 long BgL_za71za7_4278;
{ /* Llib/hash.scm 831 */
 obj_t BgL_tmpz00_11151;
if(
INTEGERP(BgL_arg1749z00_2157))
{ /* Llib/hash.scm 831 */
BgL_tmpz00_11151 = BgL_arg1749z00_2157
; }  else 
{ 
 obj_t BgL_auxz00_11154;
BgL_auxz00_11154 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33403L), BGl_string4018z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1749z00_2157); 
FAILURE(BgL_auxz00_11154,BFALSE,BFALSE);} 
BgL_za71za7_4278 = 
(long)CINT(BgL_tmpz00_11151); } 
BgL_arg1748z00_2156 = 
(BgL_za71za7_4278+1L); } } 
{ /* Llib/hash.scm 831 */
 bool_t BgL_test4924z00_11160;
{ /* Llib/hash.scm 831 */
 obj_t BgL_tmpz00_11161;
{ /* Llib/hash.scm 831 */
 obj_t BgL_res2592z00_4282;
{ /* Llib/hash.scm 831 */
 obj_t BgL_aux3465z00_6350;
BgL_aux3465z00_6350 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3465z00_6350))
{ /* Llib/hash.scm 831 */
BgL_res2592z00_4282 = BgL_aux3465z00_6350; }  else 
{ 
 obj_t BgL_auxz00_11165;
BgL_auxz00_11165 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33348L), BGl_string4018z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3465z00_6350); 
FAILURE(BgL_auxz00_11165,BFALSE,BFALSE);} } 
BgL_tmpz00_11161 = BgL_res2592z00_4282; } 
BgL_test4924z00_11160 = 
(BgL_tmpz00_11161==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4924z00_11160)
{ /* Llib/hash.scm 831 */
 obj_t BgL_auxz00_11172; int BgL_tmpz00_11170;
BgL_auxz00_11172 = 
BINT(BgL_arg1748z00_2156); 
BgL_tmpz00_11170 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_116, BgL_tmpz00_11170, BgL_auxz00_11172); }  else 
{ /* Llib/hash.scm 831 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } } 
{ /* Llib/hash.scm 832 */
 obj_t BgL_arg1750z00_2158;
{ /* Llib/hash.scm 832 */
 obj_t BgL_arg1751z00_2159;
BgL_arg1751z00_2159 = 
MAKE_YOUNG_PAIR(BgL_keyz00_117, BgL_objz00_118); 
{ /* Llib/hash.scm 832 */
 obj_t BgL_list1752z00_2160;
BgL_list1752z00_2160 = 
MAKE_YOUNG_PAIR(BgL_arg1751z00_2159, BNIL); 
BgL_arg1750z00_2158 = BgL_list1752z00_2160; } } 
{ /* Llib/hash.scm 832 */
 obj_t BgL_vectorz00_4284;
if(
VECTORP(BgL_bucketsz00_2145))
{ /* Llib/hash.scm 832 */
BgL_vectorz00_4284 = BgL_bucketsz00_2145; }  else 
{ 
 obj_t BgL_auxz00_11180;
BgL_auxz00_11180 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33431L), BGl_string4018z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2145); 
FAILURE(BgL_auxz00_11180,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4284,BgL_bucketzd2numzd2_2147,BgL_arg1750z00_2158); } } 
return BgL_objz00_118;}  else 
{ 
 obj_t BgL_buckz00_2162; long BgL_countz00_2163;
BgL_buckz00_2162 = BgL_bucketz00_2148; 
BgL_countz00_2163 = 0L; 
BgL_zc3z04anonymousza31753ze3z87_2164:
if(
NULLP(BgL_buckz00_2162))
{ /* Llib/hash.scm 837 */
{ /* Llib/hash.scm 838 */
 long BgL_arg1755z00_2166;
{ /* Llib/hash.scm 838 */
 obj_t BgL_arg1756z00_2167;
{ /* Llib/hash.scm 838 */
 bool_t BgL_test4928z00_11187;
{ /* Llib/hash.scm 838 */
 obj_t BgL_tmpz00_11188;
{ /* Llib/hash.scm 838 */
 obj_t BgL_res2594z00_4289;
{ /* Llib/hash.scm 838 */
 obj_t BgL_aux3469z00_6354;
BgL_aux3469z00_6354 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3469z00_6354))
{ /* Llib/hash.scm 838 */
BgL_res2594z00_4289 = BgL_aux3469z00_6354; }  else 
{ 
 obj_t BgL_auxz00_11192;
BgL_auxz00_11192 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33594L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3469z00_6354); 
FAILURE(BgL_auxz00_11192,BFALSE,BFALSE);} } 
BgL_tmpz00_11188 = BgL_res2594z00_4289; } 
BgL_test4928z00_11187 = 
(BgL_tmpz00_11188==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4928z00_11187)
{ /* Llib/hash.scm 838 */
 int BgL_tmpz00_11197;
BgL_tmpz00_11197 = 
(int)(0L); 
BgL_arg1756z00_2167 = 
STRUCT_REF(BgL_tablez00_116, BgL_tmpz00_11197); }  else 
{ /* Llib/hash.scm 838 */
BgL_arg1756z00_2167 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } 
{ /* Llib/hash.scm 838 */
 long BgL_za71za7_4290;
{ /* Llib/hash.scm 838 */
 obj_t BgL_tmpz00_11201;
if(
INTEGERP(BgL_arg1756z00_2167))
{ /* Llib/hash.scm 838 */
BgL_tmpz00_11201 = BgL_arg1756z00_2167
; }  else 
{ 
 obj_t BgL_auxz00_11204;
BgL_auxz00_11204 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33616L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1756z00_2167); 
FAILURE(BgL_auxz00_11204,BFALSE,BFALSE);} 
BgL_za71za7_4290 = 
(long)CINT(BgL_tmpz00_11201); } 
BgL_arg1755z00_2166 = 
(BgL_za71za7_4290+1L); } } 
{ /* Llib/hash.scm 838 */
 bool_t BgL_test4931z00_11210;
{ /* Llib/hash.scm 838 */
 obj_t BgL_tmpz00_11211;
{ /* Llib/hash.scm 838 */
 obj_t BgL_res2595z00_4294;
{ /* Llib/hash.scm 838 */
 obj_t BgL_aux3472z00_6357;
BgL_aux3472z00_6357 = 
STRUCT_KEY(BgL_tablez00_116); 
if(
SYMBOLP(BgL_aux3472z00_6357))
{ /* Llib/hash.scm 838 */
BgL_res2595z00_4294 = BgL_aux3472z00_6357; }  else 
{ 
 obj_t BgL_auxz00_11215;
BgL_auxz00_11215 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33561L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3472z00_6357); 
FAILURE(BgL_auxz00_11215,BFALSE,BFALSE);} } 
BgL_tmpz00_11211 = BgL_res2595z00_4294; } 
BgL_test4931z00_11210 = 
(BgL_tmpz00_11211==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4931z00_11210)
{ /* Llib/hash.scm 838 */
 obj_t BgL_auxz00_11222; int BgL_tmpz00_11220;
BgL_auxz00_11222 = 
BINT(BgL_arg1755z00_2166); 
BgL_tmpz00_11220 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_116, BgL_tmpz00_11220, BgL_auxz00_11222); }  else 
{ /* Llib/hash.scm 838 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_116); } } } 
{ /* Llib/hash.scm 839 */
 obj_t BgL_arg1757z00_2168;
{ /* Llib/hash.scm 839 */
 obj_t BgL_arg1758z00_2169;
BgL_arg1758z00_2169 = 
MAKE_YOUNG_PAIR(BgL_keyz00_117, BgL_objz00_118); 
BgL_arg1757z00_2168 = 
MAKE_YOUNG_PAIR(BgL_arg1758z00_2169, BgL_bucketz00_2148); } 
{ /* Llib/hash.scm 839 */
 obj_t BgL_vectorz00_4295;
if(
VECTORP(BgL_bucketsz00_2145))
{ /* Llib/hash.scm 839 */
BgL_vectorz00_4295 = BgL_bucketsz00_2145; }  else 
{ 
 obj_t BgL_auxz00_11230;
BgL_auxz00_11230 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33641L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2145); 
FAILURE(BgL_auxz00_11230,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4295,BgL_bucketzd2numzd2_2147,BgL_arg1757z00_2168); } } 
{ /* Llib/hash.scm 840 */
 bool_t BgL_test4934z00_11235;
{ /* Llib/hash.scm 840 */
 long BgL_n2z00_4298;
{ /* Llib/hash.scm 840 */
 obj_t BgL_tmpz00_11236;
if(
INTEGERP(BgL_maxzd2bucketzd2lenz00_2149))
{ /* Llib/hash.scm 840 */
BgL_tmpz00_11236 = BgL_maxzd2bucketzd2lenz00_2149
; }  else 
{ 
 obj_t BgL_auxz00_11239;
BgL_auxz00_11239 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33710L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2bucketzd2lenz00_2149); 
FAILURE(BgL_auxz00_11239,BFALSE,BFALSE);} 
BgL_n2z00_4298 = 
(long)CINT(BgL_tmpz00_11236); } 
BgL_test4934z00_11235 = 
(BgL_countz00_2163>BgL_n2z00_4298); } 
if(BgL_test4934z00_11235)
{ /* Llib/hash.scm 840 */
BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(BgL_tablez00_116); }  else 
{ /* Llib/hash.scm 840 */BFALSE; } } 
return BgL_objz00_118;}  else 
{ /* Llib/hash.scm 843 */
 bool_t BgL_test4936z00_11246;
{ /* Llib/hash.scm 843 */
 obj_t BgL_arg1766z00_2177;
{ /* Llib/hash.scm 843 */
 obj_t BgL_pairz00_4299;
if(
PAIRP(BgL_buckz00_2162))
{ /* Llib/hash.scm 843 */
BgL_pairz00_4299 = BgL_buckz00_2162; }  else 
{ 
 obj_t BgL_auxz00_11249;
BgL_auxz00_11249 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33792L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2162); 
FAILURE(BgL_auxz00_11249,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 843 */
 obj_t BgL_pairz00_4302;
{ /* Llib/hash.scm 843 */
 obj_t BgL_aux3479z00_6364;
BgL_aux3479z00_6364 = 
CAR(BgL_pairz00_4299); 
if(
PAIRP(BgL_aux3479z00_6364))
{ /* Llib/hash.scm 843 */
BgL_pairz00_4302 = BgL_aux3479z00_6364; }  else 
{ 
 obj_t BgL_auxz00_11256;
BgL_auxz00_11256 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33786L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3479z00_6364); 
FAILURE(BgL_auxz00_11256,BFALSE,BFALSE);} } 
BgL_arg1766z00_2177 = 
CAR(BgL_pairz00_4302); } } 
{ /* Llib/hash.scm 843 */
 obj_t BgL_string1z00_4303;
if(
STRINGP(BgL_arg1766z00_2177))
{ /* Llib/hash.scm 843 */
BgL_string1z00_4303 = BgL_arg1766z00_2177; }  else 
{ 
 obj_t BgL_auxz00_11263;
BgL_auxz00_11263 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33796L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1766z00_2177); 
FAILURE(BgL_auxz00_11263,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 843 */
 long BgL_l1z00_4305;
BgL_l1z00_4305 = 
STRING_LENGTH(BgL_string1z00_4303); 
if(
(BgL_l1z00_4305==
STRING_LENGTH(BgL_keyz00_117)))
{ /* Llib/hash.scm 843 */
 int BgL_arg2110z00_4308;
{ /* Llib/hash.scm 843 */
 char * BgL_auxz00_11273; char * BgL_tmpz00_11271;
BgL_auxz00_11273 = 
BSTRING_TO_STRING(BgL_keyz00_117); 
BgL_tmpz00_11271 = 
BSTRING_TO_STRING(BgL_string1z00_4303); 
BgL_arg2110z00_4308 = 
memcmp(BgL_tmpz00_11271, BgL_auxz00_11273, BgL_l1z00_4305); } 
BgL_test4936z00_11246 = 
(
(long)(BgL_arg2110z00_4308)==0L); }  else 
{ /* Llib/hash.scm 843 */
BgL_test4936z00_11246 = ((bool_t)0)
; } } } } 
if(BgL_test4936z00_11246)
{ /* Llib/hash.scm 844 */
 obj_t BgL_oldzd2objzd2_2173;
{ /* Llib/hash.scm 844 */
 obj_t BgL_pairz00_4314;
if(
PAIRP(BgL_buckz00_2162))
{ /* Llib/hash.scm 844 */
BgL_pairz00_4314 = BgL_buckz00_2162; }  else 
{ 
 obj_t BgL_auxz00_11280;
BgL_auxz00_11280 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33827L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2162); 
FAILURE(BgL_auxz00_11280,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 844 */
 obj_t BgL_pairz00_4317;
{ /* Llib/hash.scm 844 */
 obj_t BgL_aux3485z00_6370;
BgL_aux3485z00_6370 = 
CAR(BgL_pairz00_4314); 
if(
PAIRP(BgL_aux3485z00_6370))
{ /* Llib/hash.scm 844 */
BgL_pairz00_4317 = BgL_aux3485z00_6370; }  else 
{ 
 obj_t BgL_auxz00_11287;
BgL_auxz00_11287 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33821L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3485z00_6370); 
FAILURE(BgL_auxz00_11287,BFALSE,BFALSE);} } 
BgL_oldzd2objzd2_2173 = 
CDR(BgL_pairz00_4317); } } 
{ /* Llib/hash.scm 845 */
 obj_t BgL_arg1762z00_2174;
{ /* Llib/hash.scm 845 */
 obj_t BgL_pairz00_4318;
if(
PAIRP(BgL_buckz00_2162))
{ /* Llib/hash.scm 845 */
BgL_pairz00_4318 = BgL_buckz00_2162; }  else 
{ 
 obj_t BgL_auxz00_11294;
BgL_auxz00_11294 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33856L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2162); 
FAILURE(BgL_auxz00_11294,BFALSE,BFALSE);} 
BgL_arg1762z00_2174 = 
CAR(BgL_pairz00_4318); } 
{ /* Llib/hash.scm 845 */
 obj_t BgL_pairz00_4319;
if(
PAIRP(BgL_arg1762z00_2174))
{ /* Llib/hash.scm 845 */
BgL_pairz00_4319 = BgL_arg1762z00_2174; }  else 
{ 
 obj_t BgL_auxz00_11301;
BgL_auxz00_11301 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33860L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_arg1762z00_2174); 
FAILURE(BgL_auxz00_11301,BFALSE,BFALSE);} 
SET_CDR(BgL_pairz00_4319, BgL_objz00_118); } } 
return BgL_oldzd2objzd2_2173;}  else 
{ /* Llib/hash.scm 848 */
 obj_t BgL_arg1763z00_2175; long BgL_arg1765z00_2176;
{ /* Llib/hash.scm 848 */
 obj_t BgL_pairz00_4320;
if(
PAIRP(BgL_buckz00_2162))
{ /* Llib/hash.scm 848 */
BgL_pairz00_4320 = BgL_buckz00_2162; }  else 
{ 
 obj_t BgL_auxz00_11308;
BgL_auxz00_11308 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(33905L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2162); 
FAILURE(BgL_auxz00_11308,BFALSE,BFALSE);} 
BgL_arg1763z00_2175 = 
CDR(BgL_pairz00_4320); } 
BgL_arg1765z00_2176 = 
(BgL_countz00_2163+1L); 
{ 
 long BgL_countz00_11315; obj_t BgL_buckz00_11314;
BgL_buckz00_11314 = BgL_arg1763z00_2175; 
BgL_countz00_11315 = BgL_arg1765z00_2176; 
BgL_countz00_2163 = BgL_countz00_11315; 
BgL_buckz00_2162 = BgL_buckz00_11314; 
goto BgL_zc3z04anonymousza31753ze3z87_2164;} } } } } } } } } } } 

}



/* &string-hashtable-put! */
obj_t BGl_z62stringzd2hashtablezd2putz12z70zz__hashz00(obj_t BgL_envz00_5483, obj_t BgL_tablez00_5484, obj_t BgL_keyz00_5485, obj_t BgL_objz00_5486)
{
{ /* Llib/hash.scm 817 */
{ /* Llib/hash.scm 818 */
 obj_t BgL_auxz00_11323; obj_t BgL_auxz00_11316;
if(
STRINGP(BgL_keyz00_5485))
{ /* Llib/hash.scm 818 */
BgL_auxz00_11323 = BgL_keyz00_5485
; }  else 
{ 
 obj_t BgL_auxz00_11326;
BgL_auxz00_11326 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32862L), BGl_string4019z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5485); 
FAILURE(BgL_auxz00_11326,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5484))
{ /* Llib/hash.scm 818 */
BgL_auxz00_11316 = BgL_tablez00_5484
; }  else 
{ 
 obj_t BgL_auxz00_11319;
BgL_auxz00_11319 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(32862L), BGl_string4019z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5484); 
FAILURE(BgL_auxz00_11319,BFALSE,BFALSE);} 
return 
BGl_stringzd2hashtablezd2putz12z12zz__hashz00(BgL_auxz00_11316, BgL_auxz00_11323, BgL_objz00_5486);} } 

}



/* plain-hashtable-put! */
obj_t BGl_plainzd2hashtablezd2putz12z12zz__hashz00(obj_t BgL_tablez00_119, obj_t BgL_keyz00_120, obj_t BgL_objz00_121)
{
{ /* Llib/hash.scm 853 */
{ /* Llib/hash.scm 854 */
 obj_t BgL_bucketsz00_2181;
{ /* Llib/hash.scm 854 */
 bool_t BgL_test4948z00_11331;
{ /* Llib/hash.scm 854 */
 obj_t BgL_tmpz00_11332;
{ /* Llib/hash.scm 854 */
 obj_t BgL_res2596z00_4325;
{ /* Llib/hash.scm 854 */
 obj_t BgL_aux3497z00_6382;
BgL_aux3497z00_6382 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3497z00_6382))
{ /* Llib/hash.scm 854 */
BgL_res2596z00_4325 = BgL_aux3497z00_6382; }  else 
{ 
 obj_t BgL_auxz00_11336;
BgL_auxz00_11336 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34237L), BGl_string4020z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3497z00_6382); 
FAILURE(BgL_auxz00_11336,BFALSE,BFALSE);} } 
BgL_tmpz00_11332 = BgL_res2596z00_4325; } 
BgL_test4948z00_11331 = 
(BgL_tmpz00_11332==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4948z00_11331)
{ /* Llib/hash.scm 854 */
 int BgL_tmpz00_11341;
BgL_tmpz00_11341 = 
(int)(2L); 
BgL_bucketsz00_2181 = 
STRUCT_REF(BgL_tablez00_119, BgL_tmpz00_11341); }  else 
{ /* Llib/hash.scm 854 */
BgL_bucketsz00_2181 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } 
{ /* Llib/hash.scm 854 */
 long BgL_bucketzd2lenzd2_2182;
{ /* Llib/hash.scm 855 */
 obj_t BgL_vectorz00_4326;
if(
VECTORP(BgL_bucketsz00_2181))
{ /* Llib/hash.scm 855 */
BgL_vectorz00_4326 = BgL_bucketsz00_2181; }  else 
{ 
 obj_t BgL_auxz00_11347;
BgL_auxz00_11347 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34295L), BGl_string4020z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2181); 
FAILURE(BgL_auxz00_11347,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2182 = 
VECTOR_LENGTH(BgL_vectorz00_4326); } 
{ /* Llib/hash.scm 855 */
 long BgL_bucketzd2numzd2_2183;
{ /* Llib/hash.scm 856 */
 long BgL_arg1789z00_2210;
BgL_arg1789z00_2210 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_119, BgL_keyz00_120); 
{ /* Llib/hash.scm 856 */
 long BgL_n1z00_4327; long BgL_n2z00_4328;
BgL_n1z00_4327 = BgL_arg1789z00_2210; 
BgL_n2z00_4328 = BgL_bucketzd2lenzd2_2182; 
{ /* Llib/hash.scm 856 */
 bool_t BgL_test4951z00_11353;
{ /* Llib/hash.scm 856 */
 long BgL_arg2216z00_4330;
BgL_arg2216z00_4330 = 
(((BgL_n1z00_4327) | (BgL_n2z00_4328)) & -2147483648); 
BgL_test4951z00_11353 = 
(BgL_arg2216z00_4330==0L); } 
if(BgL_test4951z00_11353)
{ /* Llib/hash.scm 856 */
 int32_t BgL_arg2213z00_4331;
{ /* Llib/hash.scm 856 */
 int32_t BgL_arg2214z00_4332; int32_t BgL_arg2215z00_4333;
BgL_arg2214z00_4332 = 
(int32_t)(BgL_n1z00_4327); 
BgL_arg2215z00_4333 = 
(int32_t)(BgL_n2z00_4328); 
BgL_arg2213z00_4331 = 
(BgL_arg2214z00_4332%BgL_arg2215z00_4333); } 
{ /* Llib/hash.scm 856 */
 long BgL_arg2320z00_4338;
BgL_arg2320z00_4338 = 
(long)(BgL_arg2213z00_4331); 
BgL_bucketzd2numzd2_2183 = 
(long)(BgL_arg2320z00_4338); } }  else 
{ /* Llib/hash.scm 856 */
BgL_bucketzd2numzd2_2183 = 
(BgL_n1z00_4327%BgL_n2z00_4328); } } } } 
{ /* Llib/hash.scm 856 */
 obj_t BgL_bucketz00_2184;
{ /* Llib/hash.scm 857 */
 obj_t BgL_vectorz00_4340;
if(
VECTORP(BgL_bucketsz00_2181))
{ /* Llib/hash.scm 857 */
BgL_vectorz00_4340 = BgL_bucketsz00_2181; }  else 
{ 
 obj_t BgL_auxz00_11364;
BgL_auxz00_11364 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34405L), BGl_string4020z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2181); 
FAILURE(BgL_auxz00_11364,BFALSE,BFALSE);} 
BgL_bucketz00_2184 = 
VECTOR_REF(BgL_vectorz00_4340,BgL_bucketzd2numzd2_2183); } 
{ /* Llib/hash.scm 857 */
 obj_t BgL_maxzd2bucketzd2lenz00_2185;
{ /* Llib/hash.scm 858 */
 bool_t BgL_test4953z00_11369;
{ /* Llib/hash.scm 858 */
 obj_t BgL_tmpz00_11370;
{ /* Llib/hash.scm 858 */
 obj_t BgL_res2597z00_4345;
{ /* Llib/hash.scm 858 */
 obj_t BgL_aux3503z00_6388;
BgL_aux3503z00_6388 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3503z00_6388))
{ /* Llib/hash.scm 858 */
BgL_res2597z00_4345 = BgL_aux3503z00_6388; }  else 
{ 
 obj_t BgL_auxz00_11374;
BgL_auxz00_11374 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34445L), BGl_string4020z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3503z00_6388); 
FAILURE(BgL_auxz00_11374,BFALSE,BFALSE);} } 
BgL_tmpz00_11370 = BgL_res2597z00_4345; } 
BgL_test4953z00_11369 = 
(BgL_tmpz00_11370==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4953z00_11369)
{ /* Llib/hash.scm 858 */
 int BgL_tmpz00_11379;
BgL_tmpz00_11379 = 
(int)(1L); 
BgL_maxzd2bucketzd2lenz00_2185 = 
STRUCT_REF(BgL_tablez00_119, BgL_tmpz00_11379); }  else 
{ /* Llib/hash.scm 858 */
BgL_maxzd2bucketzd2lenz00_2185 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } 
{ /* Llib/hash.scm 858 */

if(
NULLP(BgL_bucketz00_2184))
{ /* Llib/hash.scm 859 */
{ /* Llib/hash.scm 861 */
 long BgL_arg1770z00_2187;
{ /* Llib/hash.scm 861 */
 obj_t BgL_arg1771z00_2188;
{ /* Llib/hash.scm 861 */
 bool_t BgL_test4956z00_11385;
{ /* Llib/hash.scm 861 */
 obj_t BgL_tmpz00_11386;
{ /* Llib/hash.scm 861 */
 obj_t BgL_res2598z00_4349;
{ /* Llib/hash.scm 861 */
 obj_t BgL_aux3505z00_6390;
BgL_aux3505z00_6390 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3505z00_6390))
{ /* Llib/hash.scm 861 */
BgL_res2598z00_4349 = BgL_aux3505z00_6390; }  else 
{ 
 obj_t BgL_auxz00_11390;
BgL_auxz00_11390 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34555L), BGl_string4020z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3505z00_6390); 
FAILURE(BgL_auxz00_11390,BFALSE,BFALSE);} } 
BgL_tmpz00_11386 = BgL_res2598z00_4349; } 
BgL_test4956z00_11385 = 
(BgL_tmpz00_11386==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4956z00_11385)
{ /* Llib/hash.scm 861 */
 int BgL_tmpz00_11395;
BgL_tmpz00_11395 = 
(int)(0L); 
BgL_arg1771z00_2188 = 
STRUCT_REF(BgL_tablez00_119, BgL_tmpz00_11395); }  else 
{ /* Llib/hash.scm 861 */
BgL_arg1771z00_2188 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } 
{ /* Llib/hash.scm 861 */
 long BgL_za71za7_4350;
{ /* Llib/hash.scm 861 */
 obj_t BgL_tmpz00_11399;
if(
INTEGERP(BgL_arg1771z00_2188))
{ /* Llib/hash.scm 861 */
BgL_tmpz00_11399 = BgL_arg1771z00_2188
; }  else 
{ 
 obj_t BgL_auxz00_11402;
BgL_auxz00_11402 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34577L), BGl_string4020z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1771z00_2188); 
FAILURE(BgL_auxz00_11402,BFALSE,BFALSE);} 
BgL_za71za7_4350 = 
(long)CINT(BgL_tmpz00_11399); } 
BgL_arg1770z00_2187 = 
(BgL_za71za7_4350+1L); } } 
{ /* Llib/hash.scm 861 */
 bool_t BgL_test4959z00_11408;
{ /* Llib/hash.scm 861 */
 obj_t BgL_tmpz00_11409;
{ /* Llib/hash.scm 861 */
 obj_t BgL_res2599z00_4354;
{ /* Llib/hash.scm 861 */
 obj_t BgL_aux3508z00_6393;
BgL_aux3508z00_6393 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3508z00_6393))
{ /* Llib/hash.scm 861 */
BgL_res2599z00_4354 = BgL_aux3508z00_6393; }  else 
{ 
 obj_t BgL_auxz00_11413;
BgL_auxz00_11413 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34522L), BGl_string4020z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3508z00_6393); 
FAILURE(BgL_auxz00_11413,BFALSE,BFALSE);} } 
BgL_tmpz00_11409 = BgL_res2599z00_4354; } 
BgL_test4959z00_11408 = 
(BgL_tmpz00_11409==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4959z00_11408)
{ /* Llib/hash.scm 861 */
 obj_t BgL_auxz00_11420; int BgL_tmpz00_11418;
BgL_auxz00_11420 = 
BINT(BgL_arg1770z00_2187); 
BgL_tmpz00_11418 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_119, BgL_tmpz00_11418, BgL_auxz00_11420); }  else 
{ /* Llib/hash.scm 861 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } } 
{ /* Llib/hash.scm 862 */
 obj_t BgL_arg1773z00_2189;
{ /* Llib/hash.scm 862 */
 obj_t BgL_arg1774z00_2190;
BgL_arg1774z00_2190 = 
MAKE_YOUNG_PAIR(BgL_keyz00_120, BgL_objz00_121); 
{ /* Llib/hash.scm 862 */
 obj_t BgL_list1775z00_2191;
BgL_list1775z00_2191 = 
MAKE_YOUNG_PAIR(BgL_arg1774z00_2190, BNIL); 
BgL_arg1773z00_2189 = BgL_list1775z00_2191; } } 
{ /* Llib/hash.scm 862 */
 obj_t BgL_vectorz00_4356;
if(
VECTORP(BgL_bucketsz00_2181))
{ /* Llib/hash.scm 862 */
BgL_vectorz00_4356 = BgL_bucketsz00_2181; }  else 
{ 
 obj_t BgL_auxz00_11428;
BgL_auxz00_11428 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34605L), BGl_string4020z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2181); 
FAILURE(BgL_auxz00_11428,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4356,BgL_bucketzd2numzd2_2183,BgL_arg1773z00_2189); } } 
return BgL_objz00_121;}  else 
{ 
 obj_t BgL_buckz00_2193; long BgL_countz00_2194;
BgL_buckz00_2193 = BgL_bucketz00_2184; 
BgL_countz00_2194 = 0L; 
BgL_zc3z04anonymousza31776ze3z87_2195:
if(
NULLP(BgL_buckz00_2193))
{ /* Llib/hash.scm 867 */
{ /* Llib/hash.scm 868 */
 long BgL_arg1778z00_2197;
{ /* Llib/hash.scm 868 */
 obj_t BgL_arg1779z00_2198;
{ /* Llib/hash.scm 868 */
 bool_t BgL_test4963z00_11435;
{ /* Llib/hash.scm 868 */
 obj_t BgL_tmpz00_11436;
{ /* Llib/hash.scm 868 */
 obj_t BgL_res2601z00_4361;
{ /* Llib/hash.scm 868 */
 obj_t BgL_aux3512z00_6397;
BgL_aux3512z00_6397 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3512z00_6397))
{ /* Llib/hash.scm 868 */
BgL_res2601z00_4361 = BgL_aux3512z00_6397; }  else 
{ 
 obj_t BgL_auxz00_11440;
BgL_auxz00_11440 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34768L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3512z00_6397); 
FAILURE(BgL_auxz00_11440,BFALSE,BFALSE);} } 
BgL_tmpz00_11436 = BgL_res2601z00_4361; } 
BgL_test4963z00_11435 = 
(BgL_tmpz00_11436==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4963z00_11435)
{ /* Llib/hash.scm 868 */
 int BgL_tmpz00_11445;
BgL_tmpz00_11445 = 
(int)(0L); 
BgL_arg1779z00_2198 = 
STRUCT_REF(BgL_tablez00_119, BgL_tmpz00_11445); }  else 
{ /* Llib/hash.scm 868 */
BgL_arg1779z00_2198 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } 
{ /* Llib/hash.scm 868 */
 long BgL_za71za7_4362;
{ /* Llib/hash.scm 868 */
 obj_t BgL_tmpz00_11449;
if(
INTEGERP(BgL_arg1779z00_2198))
{ /* Llib/hash.scm 868 */
BgL_tmpz00_11449 = BgL_arg1779z00_2198
; }  else 
{ 
 obj_t BgL_auxz00_11452;
BgL_auxz00_11452 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34790L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1779z00_2198); 
FAILURE(BgL_auxz00_11452,BFALSE,BFALSE);} 
BgL_za71za7_4362 = 
(long)CINT(BgL_tmpz00_11449); } 
BgL_arg1778z00_2197 = 
(BgL_za71za7_4362+1L); } } 
{ /* Llib/hash.scm 868 */
 bool_t BgL_test4966z00_11458;
{ /* Llib/hash.scm 868 */
 obj_t BgL_tmpz00_11459;
{ /* Llib/hash.scm 868 */
 obj_t BgL_res2602z00_4366;
{ /* Llib/hash.scm 868 */
 obj_t BgL_aux3515z00_6400;
BgL_aux3515z00_6400 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3515z00_6400))
{ /* Llib/hash.scm 868 */
BgL_res2602z00_4366 = BgL_aux3515z00_6400; }  else 
{ 
 obj_t BgL_auxz00_11463;
BgL_auxz00_11463 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34735L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3515z00_6400); 
FAILURE(BgL_auxz00_11463,BFALSE,BFALSE);} } 
BgL_tmpz00_11459 = BgL_res2602z00_4366; } 
BgL_test4966z00_11458 = 
(BgL_tmpz00_11459==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4966z00_11458)
{ /* Llib/hash.scm 868 */
 obj_t BgL_auxz00_11470; int BgL_tmpz00_11468;
BgL_auxz00_11470 = 
BINT(BgL_arg1778z00_2197); 
BgL_tmpz00_11468 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_119, BgL_tmpz00_11468, BgL_auxz00_11470); }  else 
{ /* Llib/hash.scm 868 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } } 
{ /* Llib/hash.scm 869 */
 obj_t BgL_arg1780z00_2199;
{ /* Llib/hash.scm 869 */
 obj_t BgL_arg1781z00_2200;
BgL_arg1781z00_2200 = 
MAKE_YOUNG_PAIR(BgL_keyz00_120, BgL_objz00_121); 
BgL_arg1780z00_2199 = 
MAKE_YOUNG_PAIR(BgL_arg1781z00_2200, BgL_bucketz00_2184); } 
{ /* Llib/hash.scm 869 */
 obj_t BgL_vectorz00_4367;
if(
VECTORP(BgL_bucketsz00_2181))
{ /* Llib/hash.scm 869 */
BgL_vectorz00_4367 = BgL_bucketsz00_2181; }  else 
{ 
 obj_t BgL_auxz00_11478;
BgL_auxz00_11478 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34815L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2181); 
FAILURE(BgL_auxz00_11478,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4367,BgL_bucketzd2numzd2_2183,BgL_arg1780z00_2199); } } 
{ /* Llib/hash.scm 870 */
 bool_t BgL_test4969z00_11483;
{ /* Llib/hash.scm 870 */
 long BgL_n2z00_4370;
{ /* Llib/hash.scm 870 */
 obj_t BgL_tmpz00_11484;
if(
INTEGERP(BgL_maxzd2bucketzd2lenz00_2185))
{ /* Llib/hash.scm 870 */
BgL_tmpz00_11484 = BgL_maxzd2bucketzd2lenz00_2185
; }  else 
{ 
 obj_t BgL_auxz00_11487;
BgL_auxz00_11487 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34884L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2bucketzd2lenz00_2185); 
FAILURE(BgL_auxz00_11487,BFALSE,BFALSE);} 
BgL_n2z00_4370 = 
(long)CINT(BgL_tmpz00_11484); } 
BgL_test4969z00_11483 = 
(BgL_countz00_2194>BgL_n2z00_4370); } 
if(BgL_test4969z00_11483)
{ /* Llib/hash.scm 870 */
BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(BgL_tablez00_119); }  else 
{ /* Llib/hash.scm 870 */BFALSE; } } 
return BgL_objz00_121;}  else 
{ /* Llib/hash.scm 873 */
 bool_t BgL_test4971z00_11494;
{ /* Llib/hash.scm 873 */
 obj_t BgL_arg1788z00_2208;
{ /* Llib/hash.scm 873 */
 obj_t BgL_pairz00_4371;
if(
PAIRP(BgL_buckz00_2193))
{ /* Llib/hash.scm 873 */
BgL_pairz00_4371 = BgL_buckz00_2193; }  else 
{ 
 obj_t BgL_auxz00_11497;
BgL_auxz00_11497 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34980L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2193); 
FAILURE(BgL_auxz00_11497,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 873 */
 obj_t BgL_pairz00_4374;
{ /* Llib/hash.scm 873 */
 obj_t BgL_aux3522z00_6407;
BgL_aux3522z00_6407 = 
CAR(BgL_pairz00_4371); 
if(
PAIRP(BgL_aux3522z00_6407))
{ /* Llib/hash.scm 873 */
BgL_pairz00_4374 = BgL_aux3522z00_6407; }  else 
{ 
 obj_t BgL_auxz00_11504;
BgL_auxz00_11504 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34974L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3522z00_6407); 
FAILURE(BgL_auxz00_11504,BFALSE,BFALSE);} } 
BgL_arg1788z00_2208 = 
CAR(BgL_pairz00_4374); } } 
{ /* Llib/hash.scm 873 */
 obj_t BgL_eqtz00_4375;
{ /* Llib/hash.scm 873 */
 bool_t BgL_test4974z00_11509;
{ /* Llib/hash.scm 873 */
 obj_t BgL_tmpz00_11510;
{ /* Llib/hash.scm 873 */
 obj_t BgL_res2603z00_4382;
{ /* Llib/hash.scm 873 */
 obj_t BgL_aux3524z00_6409;
BgL_aux3524z00_6409 = 
STRUCT_KEY(BgL_tablez00_119); 
if(
SYMBOLP(BgL_aux3524z00_6409))
{ /* Llib/hash.scm 873 */
BgL_res2603z00_4382 = BgL_aux3524z00_6409; }  else 
{ 
 obj_t BgL_auxz00_11514;
BgL_auxz00_11514 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(34950L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3524z00_6409); 
FAILURE(BgL_auxz00_11514,BFALSE,BFALSE);} } 
BgL_tmpz00_11510 = BgL_res2603z00_4382; } 
BgL_test4974z00_11509 = 
(BgL_tmpz00_11510==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4974z00_11509)
{ /* Llib/hash.scm 873 */
 int BgL_tmpz00_11519;
BgL_tmpz00_11519 = 
(int)(3L); 
BgL_eqtz00_4375 = 
STRUCT_REF(BgL_tablez00_119, BgL_tmpz00_11519); }  else 
{ /* Llib/hash.scm 873 */
BgL_eqtz00_4375 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_119); } } 
if(
PROCEDUREP(BgL_eqtz00_4375))
{ /* Llib/hash.scm 873 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_4375, 2L))
{ /* Llib/hash.scm 873 */
BgL_test4971z00_11494 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_4375 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_4375))(BgL_eqtz00_4375, BgL_arg1788z00_2208, BgL_keyz00_120, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_4375))(BgL_eqtz00_4375, BgL_arg1788z00_2208, BgL_keyz00_120) ))
; }  else 
{ /* Llib/hash.scm 873 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4021z00zz__hashz00,BgL_eqtz00_4375);} }  else 
{ /* Llib/hash.scm 873 */
if(
(BgL_arg1788z00_2208==BgL_keyz00_120))
{ /* Llib/hash.scm 873 */
BgL_test4971z00_11494 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 873 */
if(
STRINGP(BgL_arg1788z00_2208))
{ /* Llib/hash.scm 873 */
if(
STRINGP(BgL_keyz00_120))
{ /* Llib/hash.scm 873 */
 long BgL_l1z00_4385;
BgL_l1z00_4385 = 
STRING_LENGTH(BgL_arg1788z00_2208); 
if(
(BgL_l1z00_4385==
STRING_LENGTH(BgL_keyz00_120)))
{ /* Llib/hash.scm 873 */
 int BgL_arg2110z00_4388;
{ /* Llib/hash.scm 873 */
 char * BgL_auxz00_11546; char * BgL_tmpz00_11544;
BgL_auxz00_11546 = 
BSTRING_TO_STRING(BgL_keyz00_120); 
BgL_tmpz00_11544 = 
BSTRING_TO_STRING(BgL_arg1788z00_2208); 
BgL_arg2110z00_4388 = 
memcmp(BgL_tmpz00_11544, BgL_auxz00_11546, BgL_l1z00_4385); } 
BgL_test4971z00_11494 = 
(
(long)(BgL_arg2110z00_4388)==0L); }  else 
{ /* Llib/hash.scm 873 */
BgL_test4971z00_11494 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 873 */
BgL_test4971z00_11494 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 873 */
BgL_test4971z00_11494 = ((bool_t)0)
; } } } } } 
if(BgL_test4971z00_11494)
{ /* Llib/hash.scm 874 */
 obj_t BgL_oldzd2objzd2_2204;
{ /* Llib/hash.scm 874 */
 obj_t BgL_pairz00_4394;
if(
PAIRP(BgL_buckz00_2193))
{ /* Llib/hash.scm 874 */
BgL_pairz00_4394 = BgL_buckz00_2193; }  else 
{ 
 obj_t BgL_auxz00_11553;
BgL_auxz00_11553 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35015L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2193); 
FAILURE(BgL_auxz00_11553,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 874 */
 obj_t BgL_pairz00_4397;
{ /* Llib/hash.scm 874 */
 obj_t BgL_aux3529z00_6415;
BgL_aux3529z00_6415 = 
CAR(BgL_pairz00_4394); 
if(
PAIRP(BgL_aux3529z00_6415))
{ /* Llib/hash.scm 874 */
BgL_pairz00_4397 = BgL_aux3529z00_6415; }  else 
{ 
 obj_t BgL_auxz00_11560;
BgL_auxz00_11560 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35009L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3529z00_6415); 
FAILURE(BgL_auxz00_11560,BFALSE,BFALSE);} } 
BgL_oldzd2objzd2_2204 = 
CDR(BgL_pairz00_4397); } } 
{ /* Llib/hash.scm 875 */
 obj_t BgL_arg1785z00_2205;
{ /* Llib/hash.scm 875 */
 obj_t BgL_pairz00_4398;
if(
PAIRP(BgL_buckz00_2193))
{ /* Llib/hash.scm 875 */
BgL_pairz00_4398 = BgL_buckz00_2193; }  else 
{ 
 obj_t BgL_auxz00_11567;
BgL_auxz00_11567 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35044L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2193); 
FAILURE(BgL_auxz00_11567,BFALSE,BFALSE);} 
BgL_arg1785z00_2205 = 
CAR(BgL_pairz00_4398); } 
{ /* Llib/hash.scm 875 */
 obj_t BgL_pairz00_4399;
if(
PAIRP(BgL_arg1785z00_2205))
{ /* Llib/hash.scm 875 */
BgL_pairz00_4399 = BgL_arg1785z00_2205; }  else 
{ 
 obj_t BgL_auxz00_11574;
BgL_auxz00_11574 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35048L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_arg1785z00_2205); 
FAILURE(BgL_auxz00_11574,BFALSE,BFALSE);} 
SET_CDR(BgL_pairz00_4399, BgL_objz00_121); } } 
return BgL_oldzd2objzd2_2204;}  else 
{ /* Llib/hash.scm 878 */
 obj_t BgL_arg1786z00_2206; long BgL_arg1787z00_2207;
{ /* Llib/hash.scm 878 */
 obj_t BgL_pairz00_4400;
if(
PAIRP(BgL_buckz00_2193))
{ /* Llib/hash.scm 878 */
BgL_pairz00_4400 = BgL_buckz00_2193; }  else 
{ 
 obj_t BgL_auxz00_11581;
BgL_auxz00_11581 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35093L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2193); 
FAILURE(BgL_auxz00_11581,BFALSE,BFALSE);} 
BgL_arg1786z00_2206 = 
CDR(BgL_pairz00_4400); } 
BgL_arg1787z00_2207 = 
(BgL_countz00_2194+1L); 
{ 
 long BgL_countz00_11588; obj_t BgL_buckz00_11587;
BgL_buckz00_11587 = BgL_arg1786z00_2206; 
BgL_countz00_11588 = BgL_arg1787z00_2207; 
BgL_countz00_2194 = BgL_countz00_11588; 
BgL_buckz00_2193 = BgL_buckz00_11587; 
goto BgL_zc3z04anonymousza31776ze3z87_2195;} } } } } } } } } } } 

}



/* hashtable-update! */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2updatez12zc0zz__hashz00(obj_t BgL_tablez00_122, obj_t BgL_keyz00_123, obj_t BgL_procz00_124, obj_t BgL_objz00_125)
{
{ /* Llib/hash.scm 883 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_122))
{ /* Llib/hash.scm 886 */
 obj_t BgL_auxz00_11591;
if(
STRINGP(BgL_keyz00_123))
{ /* Llib/hash.scm 886 */
BgL_auxz00_11591 = BgL_keyz00_123
; }  else 
{ 
 obj_t BgL_auxz00_11594;
BgL_auxz00_11594 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35505L), BGl_string4024z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_123); 
FAILURE(BgL_auxz00_11594,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2updatez12zc0zz__hashz00(BgL_tablez00_122, BgL_auxz00_11591, BgL_procz00_124, BgL_objz00_125);}  else 
{ /* Llib/hash.scm 885 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_122))
{ /* Llib/hash.scm 887 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2updatez12z12zz__weakhashz00(BgL_tablez00_122, BgL_keyz00_123, BgL_procz00_124, BgL_objz00_125);}  else 
{ /* Llib/hash.scm 887 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2updatez12z12zz__hashz00(BgL_tablez00_122, BgL_keyz00_123, BgL_procz00_124, BgL_objz00_125);} } } 

}



/* &hashtable-update! */
obj_t BGl_z62hashtablezd2updatez12za2zz__hashz00(obj_t BgL_envz00_5487, obj_t BgL_tablez00_5488, obj_t BgL_keyz00_5489, obj_t BgL_procz00_5490, obj_t BgL_objz00_5491)
{
{ /* Llib/hash.scm 883 */
{ /* Llib/hash.scm 885 */
 obj_t BgL_auxz00_11610; obj_t BgL_auxz00_11603;
if(
PROCEDUREP(BgL_procz00_5490))
{ /* Llib/hash.scm 885 */
BgL_auxz00_11610 = BgL_procz00_5490
; }  else 
{ 
 obj_t BgL_auxz00_11613;
BgL_auxz00_11613 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35429L), BGl_string4025z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_procz00_5490); 
FAILURE(BgL_auxz00_11613,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5488))
{ /* Llib/hash.scm 885 */
BgL_auxz00_11603 = BgL_tablez00_5488
; }  else 
{ 
 obj_t BgL_auxz00_11606;
BgL_auxz00_11606 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35429L), BGl_string4025z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5488); 
FAILURE(BgL_auxz00_11606,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2updatez12zc0zz__hashz00(BgL_auxz00_11603, BgL_keyz00_5489, BgL_auxz00_11610, BgL_objz00_5491);} } 

}



/* open-string-hashtable-update! */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2updatez12zc0zz__hashz00(obj_t BgL_tablez00_126, obj_t BgL_keyz00_127, obj_t BgL_procz00_128, obj_t BgL_objz00_129)
{
{ /* Llib/hash.scm 895 */
{ /* Llib/hash.scm 896 */
 obj_t BgL_siza7eza7_2213;
{ /* Llib/hash.scm 896 */
 bool_t BgL_test4992z00_11618;
{ /* Llib/hash.scm 896 */
 obj_t BgL_tmpz00_11619;
{ /* Llib/hash.scm 896 */
 obj_t BgL_res2604z00_4407;
{ /* Llib/hash.scm 896 */
 obj_t BgL_aux3543z00_6429;
BgL_aux3543z00_6429 = 
STRUCT_KEY(BgL_tablez00_126); 
if(
SYMBOLP(BgL_aux3543z00_6429))
{ /* Llib/hash.scm 896 */
BgL_res2604z00_4407 = BgL_aux3543z00_6429; }  else 
{ 
 obj_t BgL_auxz00_11623;
BgL_auxz00_11623 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35996L), BGl_string4026z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3543z00_6429); 
FAILURE(BgL_auxz00_11623,BFALSE,BFALSE);} } 
BgL_tmpz00_11619 = BgL_res2604z00_4407; } 
BgL_test4992z00_11618 = 
(BgL_tmpz00_11619==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4992z00_11618)
{ /* Llib/hash.scm 896 */
 int BgL_tmpz00_11628;
BgL_tmpz00_11628 = 
(int)(1L); 
BgL_siza7eza7_2213 = 
STRUCT_REF(BgL_tablez00_126, BgL_tmpz00_11628); }  else 
{ /* Llib/hash.scm 896 */
BgL_siza7eza7_2213 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_126); } } 
{ /* Llib/hash.scm 896 */
 obj_t BgL_bucketsz00_2214;
{ /* Llib/hash.scm 897 */
 bool_t BgL_test4994z00_11632;
{ /* Llib/hash.scm 897 */
 obj_t BgL_tmpz00_11633;
{ /* Llib/hash.scm 897 */
 obj_t BgL_res2605z00_4411;
{ /* Llib/hash.scm 897 */
 obj_t BgL_aux3545z00_6431;
BgL_aux3545z00_6431 = 
STRUCT_KEY(BgL_tablez00_126); 
if(
SYMBOLP(BgL_aux3545z00_6431))
{ /* Llib/hash.scm 897 */
BgL_res2605z00_4411 = BgL_aux3545z00_6431; }  else 
{ 
 obj_t BgL_auxz00_11637;
BgL_auxz00_11637 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36043L), BGl_string4026z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3545z00_6431); 
FAILURE(BgL_auxz00_11637,BFALSE,BFALSE);} } 
BgL_tmpz00_11633 = BgL_res2605z00_4411; } 
BgL_test4994z00_11632 = 
(BgL_tmpz00_11633==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test4994z00_11632)
{ /* Llib/hash.scm 897 */
 int BgL_tmpz00_11642;
BgL_tmpz00_11642 = 
(int)(2L); 
BgL_bucketsz00_2214 = 
STRUCT_REF(BgL_tablez00_126, BgL_tmpz00_11642); }  else 
{ /* Llib/hash.scm 897 */
BgL_bucketsz00_2214 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_126); } } 
{ /* Llib/hash.scm 897 */
 long BgL_hashz00_2215;
{ /* Llib/hash.scm 898 */
 long BgL_arg1809z00_2241;
BgL_arg1809z00_2241 = 
STRING_LENGTH(BgL_keyz00_127); 
BgL_hashz00_2215 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_127), 
(int)(0L), 
(int)(BgL_arg1809z00_2241)); } 
{ /* Llib/hash.scm 898 */

{ /* Llib/hash.scm 900 */
 long BgL_g1072z00_2216;
{ /* Llib/hash.scm 900 */
 long BgL_n1z00_4413; long BgL_n2z00_4414;
BgL_n1z00_4413 = BgL_hashz00_2215; 
{ /* Llib/hash.scm 900 */
 obj_t BgL_tmpz00_11651;
if(
INTEGERP(BgL_siza7eza7_2213))
{ /* Llib/hash.scm 900 */
BgL_tmpz00_11651 = BgL_siza7eza7_2213
; }  else 
{ 
 obj_t BgL_auxz00_11654;
BgL_auxz00_11654 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36185L), BGl_string4026z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2213); 
FAILURE(BgL_auxz00_11654,BFALSE,BFALSE);} 
BgL_n2z00_4414 = 
(long)CINT(BgL_tmpz00_11651); } 
{ /* Llib/hash.scm 900 */
 bool_t BgL_test4997z00_11659;
{ /* Llib/hash.scm 900 */
 long BgL_arg2216z00_4416;
BgL_arg2216z00_4416 = 
(((BgL_n1z00_4413) | (BgL_n2z00_4414)) & -2147483648); 
BgL_test4997z00_11659 = 
(BgL_arg2216z00_4416==0L); } 
if(BgL_test4997z00_11659)
{ /* Llib/hash.scm 900 */
 int32_t BgL_arg2213z00_4417;
{ /* Llib/hash.scm 900 */
 int32_t BgL_arg2214z00_4418; int32_t BgL_arg2215z00_4419;
BgL_arg2214z00_4418 = 
(int32_t)(BgL_n1z00_4413); 
BgL_arg2215z00_4419 = 
(int32_t)(BgL_n2z00_4414); 
BgL_arg2213z00_4417 = 
(BgL_arg2214z00_4418%BgL_arg2215z00_4419); } 
{ /* Llib/hash.scm 900 */
 long BgL_arg2320z00_4424;
BgL_arg2320z00_4424 = 
(long)(BgL_arg2213z00_4417); 
BgL_g1072z00_2216 = 
(long)(BgL_arg2320z00_4424); } }  else 
{ /* Llib/hash.scm 900 */
BgL_g1072z00_2216 = 
(BgL_n1z00_4413%BgL_n2z00_4414); } } } 
{ 
 long BgL_offz00_2218; long BgL_iz00_2219;
BgL_offz00_2218 = BgL_g1072z00_2216; 
BgL_iz00_2219 = 1L; 
BgL_zc3z04anonymousza31792ze3z87_2220:
{ /* Llib/hash.scm 902 */
 long BgL_off3z00_2221;
BgL_off3z00_2221 = 
(BgL_offz00_2218*3L); 
{ /* Llib/hash.scm 903 */
 bool_t BgL_test4998z00_11669;
{ /* Llib/hash.scm 903 */
 obj_t BgL_vectorz00_4427;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 903 */
BgL_vectorz00_4427 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11672;
BgL_auxz00_11672 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36251L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11672,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 903 */
 bool_t BgL_test5000z00_11676;
{ /* Llib/hash.scm 903 */
 long BgL_tmpz00_11677;
BgL_tmpz00_11677 = 
VECTOR_LENGTH(BgL_vectorz00_4427); 
BgL_test5000z00_11676 = 
BOUND_CHECK(BgL_off3z00_2221, BgL_tmpz00_11677); } 
if(BgL_test5000z00_11676)
{ /* Llib/hash.scm 903 */
BgL_test4998z00_11669 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4427,BgL_off3z00_2221))
; }  else 
{ 
 obj_t BgL_auxz00_11682;
BgL_auxz00_11682 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36239L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4427, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4427)), 
(int)(BgL_off3z00_2221)); 
FAILURE(BgL_auxz00_11682,BFALSE,BFALSE);} } } 
if(BgL_test4998z00_11669)
{ /* Llib/hash.scm 904 */
 bool_t BgL_test5001z00_11689;
{ /* Llib/hash.scm 904 */
 obj_t BgL_arg1808z00_2239;
{ /* Llib/hash.scm 904 */
 obj_t BgL_vectorz00_4429;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 904 */
BgL_vectorz00_4429 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11692;
BgL_auxz00_11692 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36293L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11692,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 904 */
 bool_t BgL_test5003z00_11696;
{ /* Llib/hash.scm 904 */
 long BgL_tmpz00_11697;
BgL_tmpz00_11697 = 
VECTOR_LENGTH(BgL_vectorz00_4429); 
BgL_test5003z00_11696 = 
BOUND_CHECK(BgL_off3z00_2221, BgL_tmpz00_11697); } 
if(BgL_test5003z00_11696)
{ /* Llib/hash.scm 904 */
BgL_arg1808z00_2239 = 
VECTOR_REF(BgL_vectorz00_4429,BgL_off3z00_2221); }  else 
{ 
 obj_t BgL_auxz00_11701;
BgL_auxz00_11701 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36281L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4429, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4429)), 
(int)(BgL_off3z00_2221)); 
FAILURE(BgL_auxz00_11701,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 904 */
 obj_t BgL_string1z00_4431;
if(
STRINGP(BgL_arg1808z00_2239))
{ /* Llib/hash.scm 904 */
BgL_string1z00_4431 = BgL_arg1808z00_2239; }  else 
{ 
 obj_t BgL_auxz00_11710;
BgL_auxz00_11710 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36305L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1808z00_2239); 
FAILURE(BgL_auxz00_11710,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 904 */
 long BgL_l1z00_4433;
BgL_l1z00_4433 = 
STRING_LENGTH(BgL_string1z00_4431); 
if(
(BgL_l1z00_4433==
STRING_LENGTH(BgL_keyz00_127)))
{ /* Llib/hash.scm 904 */
 int BgL_arg2110z00_4436;
{ /* Llib/hash.scm 904 */
 char * BgL_auxz00_11720; char * BgL_tmpz00_11718;
BgL_auxz00_11720 = 
BSTRING_TO_STRING(BgL_keyz00_127); 
BgL_tmpz00_11718 = 
BSTRING_TO_STRING(BgL_string1z00_4431); 
BgL_arg2110z00_4436 = 
memcmp(BgL_tmpz00_11718, BgL_auxz00_11720, BgL_l1z00_4433); } 
BgL_test5001z00_11689 = 
(
(long)(BgL_arg2110z00_4436)==0L); }  else 
{ /* Llib/hash.scm 904 */
BgL_test5001z00_11689 = ((bool_t)0)
; } } } } 
if(BgL_test5001z00_11689)
{ /* Llib/hash.scm 905 */
 bool_t BgL_test5006z00_11725;
{ /* Llib/hash.scm 905 */
 long BgL_arg1802z00_2232;
BgL_arg1802z00_2232 = 
(BgL_off3z00_2221+2L); 
{ /* Llib/hash.scm 905 */
 obj_t BgL_vectorz00_4443;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 905 */
BgL_vectorz00_4443 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11729;
BgL_auxz00_11729 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36334L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11729,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 905 */
 bool_t BgL_test5008z00_11733;
{ /* Llib/hash.scm 905 */
 long BgL_tmpz00_11734;
BgL_tmpz00_11734 = 
VECTOR_LENGTH(BgL_vectorz00_4443); 
BgL_test5008z00_11733 = 
BOUND_CHECK(BgL_arg1802z00_2232, BgL_tmpz00_11734); } 
if(BgL_test5008z00_11733)
{ /* Llib/hash.scm 905 */
BgL_test5006z00_11725 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4443,BgL_arg1802z00_2232))
; }  else 
{ 
 obj_t BgL_auxz00_11739;
BgL_auxz00_11739 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36322L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4443, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4443)), 
(int)(BgL_arg1802z00_2232)); 
FAILURE(BgL_auxz00_11739,BFALSE,BFALSE);} } } } 
if(BgL_test5006z00_11725)
{ /* Llib/hash.scm 906 */
 obj_t BgL_ovalz00_2227;
{ /* Llib/hash.scm 906 */
 long BgL_arg1800z00_2230;
BgL_arg1800z00_2230 = 
(BgL_off3z00_2221+1L); 
{ /* Llib/hash.scm 906 */
 obj_t BgL_vectorz00_4446;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 906 */
BgL_vectorz00_4446 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11749;
BgL_auxz00_11749 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36383L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11749,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 906 */
 bool_t BgL_test5010z00_11753;
{ /* Llib/hash.scm 906 */
 long BgL_tmpz00_11754;
BgL_tmpz00_11754 = 
VECTOR_LENGTH(BgL_vectorz00_4446); 
BgL_test5010z00_11753 = 
BOUND_CHECK(BgL_arg1800z00_2230, BgL_tmpz00_11754); } 
if(BgL_test5010z00_11753)
{ /* Llib/hash.scm 906 */
BgL_ovalz00_2227 = 
VECTOR_REF(BgL_vectorz00_4446,BgL_arg1800z00_2230); }  else 
{ 
 obj_t BgL_auxz00_11758;
BgL_auxz00_11758 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36371L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4446, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4446)), 
(int)(BgL_arg1800z00_2230)); 
FAILURE(BgL_auxz00_11758,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 907 */
 long BgL_arg1798z00_2228; obj_t BgL_arg1799z00_2229;
BgL_arg1798z00_2228 = 
(BgL_off3z00_2221+1L); 
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_128, 1L))
{ /* Llib/hash.scm 907 */
BgL_arg1799z00_2229 = 
(VA_PROCEDUREP( BgL_procz00_128 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_128))(BgL_procz00_128, BgL_ovalz00_2227, BEOA) : ((obj_t (*)(obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_128))(BgL_procz00_128, BgL_ovalz00_2227) ); }  else 
{ /* Llib/hash.scm 907 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4027z00zz__hashz00,BgL_procz00_128);} 
{ /* Llib/hash.scm 907 */
 obj_t BgL_vectorz00_4449;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 907 */
BgL_vectorz00_4449 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11775;
BgL_auxz00_11775 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36426L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11775,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 907 */
 bool_t BgL_test5013z00_11779;
{ /* Llib/hash.scm 907 */
 long BgL_tmpz00_11780;
BgL_tmpz00_11780 = 
VECTOR_LENGTH(BgL_vectorz00_4449); 
BgL_test5013z00_11779 = 
BOUND_CHECK(BgL_arg1798z00_2228, BgL_tmpz00_11780); } 
if(BgL_test5013z00_11779)
{ /* Llib/hash.scm 907 */
return 
VECTOR_SET(BgL_vectorz00_4449,BgL_arg1798z00_2228,BgL_arg1799z00_2229);}  else 
{ 
 obj_t BgL_auxz00_11784;
BgL_auxz00_11784 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36413L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4449, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4449)), 
(int)(BgL_arg1798z00_2228)); 
FAILURE(BgL_auxz00_11784,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/hash.scm 908 */
 long BgL_arg1801z00_2231;
BgL_arg1801z00_2231 = 
(BgL_off3z00_2221+1L); 
{ /* Llib/hash.scm 908 */
 obj_t BgL_vectorz00_4452;
if(
VECTORP(BgL_bucketsz00_2214))
{ /* Llib/hash.scm 908 */
BgL_vectorz00_4452 = BgL_bucketsz00_2214; }  else 
{ 
 obj_t BgL_auxz00_11794;
BgL_auxz00_11794 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36477L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2214); 
FAILURE(BgL_auxz00_11794,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 908 */
 bool_t BgL_test5015z00_11798;
{ /* Llib/hash.scm 908 */
 long BgL_tmpz00_11799;
BgL_tmpz00_11799 = 
VECTOR_LENGTH(BgL_vectorz00_4452); 
BgL_test5015z00_11798 = 
BOUND_CHECK(BgL_arg1801z00_2231, BgL_tmpz00_11799); } 
if(BgL_test5015z00_11798)
{ /* Llib/hash.scm 908 */
return 
VECTOR_SET(BgL_vectorz00_4452,BgL_arg1801z00_2231,BgL_objz00_129);}  else 
{ 
 obj_t BgL_auxz00_11803;
BgL_auxz00_11803 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36464L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4452, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4452)), 
(int)(BgL_arg1801z00_2231)); 
FAILURE(BgL_auxz00_11803,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/hash.scm 909 */
 long BgL_noffz00_2233;
BgL_noffz00_2233 = 
(BgL_offz00_2218+
(BgL_iz00_2219*BgL_iz00_2219)); 
{ /* Llib/hash.scm 910 */
 bool_t BgL_test5016z00_11812;
{ /* Llib/hash.scm 910 */
 long BgL_n2z00_4459;
{ /* Llib/hash.scm 910 */
 obj_t BgL_tmpz00_11813;
if(
INTEGERP(BgL_siza7eza7_2213))
{ /* Llib/hash.scm 910 */
BgL_tmpz00_11813 = BgL_siza7eza7_2213
; }  else 
{ 
 obj_t BgL_auxz00_11816;
BgL_auxz00_11816 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36568L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2213); 
FAILURE(BgL_auxz00_11816,BFALSE,BFALSE);} 
BgL_n2z00_4459 = 
(long)CINT(BgL_tmpz00_11813); } 
BgL_test5016z00_11812 = 
(BgL_noffz00_2233>=BgL_n2z00_4459); } 
if(BgL_test5016z00_11812)
{ /* Llib/hash.scm 911 */
 long BgL_arg1804z00_2235; long BgL_arg1805z00_2236;
{ /* Llib/hash.scm 911 */
 long BgL_n1z00_4460; long BgL_n2z00_4461;
BgL_n1z00_4460 = BgL_noffz00_2233; 
{ /* Llib/hash.scm 911 */
 obj_t BgL_tmpz00_11822;
if(
INTEGERP(BgL_siza7eza7_2213))
{ /* Llib/hash.scm 911 */
BgL_tmpz00_11822 = BgL_siza7eza7_2213
; }  else 
{ 
 obj_t BgL_auxz00_11825;
BgL_auxz00_11825 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(36604L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2213); 
FAILURE(BgL_auxz00_11825,BFALSE,BFALSE);} 
BgL_n2z00_4461 = 
(long)CINT(BgL_tmpz00_11822); } 
{ /* Llib/hash.scm 911 */
 bool_t BgL_test5019z00_11830;
{ /* Llib/hash.scm 911 */
 long BgL_arg2216z00_4463;
BgL_arg2216z00_4463 = 
(((BgL_n1z00_4460) | (BgL_n2z00_4461)) & -2147483648); 
BgL_test5019z00_11830 = 
(BgL_arg2216z00_4463==0L); } 
if(BgL_test5019z00_11830)
{ /* Llib/hash.scm 911 */
 int32_t BgL_arg2213z00_4464;
{ /* Llib/hash.scm 911 */
 int32_t BgL_arg2214z00_4465; int32_t BgL_arg2215z00_4466;
BgL_arg2214z00_4465 = 
(int32_t)(BgL_n1z00_4460); 
BgL_arg2215z00_4466 = 
(int32_t)(BgL_n2z00_4461); 
BgL_arg2213z00_4464 = 
(BgL_arg2214z00_4465%BgL_arg2215z00_4466); } 
{ /* Llib/hash.scm 911 */
 long BgL_arg2320z00_4471;
BgL_arg2320z00_4471 = 
(long)(BgL_arg2213z00_4464); 
BgL_arg1804z00_2235 = 
(long)(BgL_arg2320z00_4471); } }  else 
{ /* Llib/hash.scm 911 */
BgL_arg1804z00_2235 = 
(BgL_n1z00_4460%BgL_n2z00_4461); } } } 
BgL_arg1805z00_2236 = 
(BgL_iz00_2219+1L); 
{ 
 long BgL_iz00_11841; long BgL_offz00_11840;
BgL_offz00_11840 = BgL_arg1804z00_2235; 
BgL_iz00_11841 = BgL_arg1805z00_2236; 
BgL_iz00_2219 = BgL_iz00_11841; 
BgL_offz00_2218 = BgL_offz00_11840; 
goto BgL_zc3z04anonymousza31792ze3z87_2220;} }  else 
{ 
 long BgL_iz00_11843; long BgL_offz00_11842;
BgL_offz00_11842 = BgL_noffz00_2233; 
BgL_iz00_11843 = 
(BgL_iz00_2219+1L); 
BgL_iz00_2219 = BgL_iz00_11843; 
BgL_offz00_2218 = BgL_offz00_11842; 
goto BgL_zc3z04anonymousza31792ze3z87_2220;} } } }  else 
{ /* Llib/hash.scm 903 */
return 
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(BgL_tablez00_126, BgL_keyz00_127, BgL_objz00_129, 
BINT(BgL_hashz00_2215));} } } } } } } } } } 

}



/* &open-string-hashtable-update! */
obj_t BGl_z62openzd2stringzd2hashtablezd2updatez12za2zz__hashz00(obj_t BgL_envz00_5492, obj_t BgL_tablez00_5493, obj_t BgL_keyz00_5494, obj_t BgL_procz00_5495, obj_t BgL_objz00_5496)
{
{ /* Llib/hash.scm 895 */
{ /* Llib/hash.scm 896 */
 obj_t BgL_auxz00_11861; obj_t BgL_auxz00_11854; obj_t BgL_auxz00_11847;
if(
PROCEDUREP(BgL_procz00_5495))
{ /* Llib/hash.scm 896 */
BgL_auxz00_11861 = BgL_procz00_5495
; }  else 
{ 
 obj_t BgL_auxz00_11864;
BgL_auxz00_11864 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35983L), BGl_string4032z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_procz00_5495); 
FAILURE(BgL_auxz00_11864,BFALSE,BFALSE);} 
if(
STRINGP(BgL_keyz00_5494))
{ /* Llib/hash.scm 896 */
BgL_auxz00_11854 = BgL_keyz00_5494
; }  else 
{ 
 obj_t BgL_auxz00_11857;
BgL_auxz00_11857 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35983L), BGl_string4032z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5494); 
FAILURE(BgL_auxz00_11857,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5493))
{ /* Llib/hash.scm 896 */
BgL_auxz00_11847 = BgL_tablez00_5493
; }  else 
{ 
 obj_t BgL_auxz00_11850;
BgL_auxz00_11850 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(35983L), BGl_string4032z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5493); 
FAILURE(BgL_auxz00_11850,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2updatez12zc0zz__hashz00(BgL_auxz00_11847, BgL_auxz00_11854, BgL_auxz00_11861, BgL_objz00_5496);} } 

}



/* plain-hashtable-update! */
obj_t BGl_plainzd2hashtablezd2updatez12z12zz__hashz00(obj_t BgL_tablez00_130, obj_t BgL_keyz00_131, obj_t BgL_procz00_132, obj_t BgL_objz00_133)
{
{ /* Llib/hash.scm 918 */
{ /* Llib/hash.scm 919 */
 obj_t BgL_bucketsz00_2242;
{ /* Llib/hash.scm 919 */
 bool_t BgL_test5023z00_11869;
{ /* Llib/hash.scm 919 */
 obj_t BgL_tmpz00_11870;
{ /* Llib/hash.scm 919 */
 obj_t BgL_res2606z00_4478;
{ /* Llib/hash.scm 919 */
 obj_t BgL_aux3571z00_6458;
BgL_aux3571z00_6458 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3571z00_6458))
{ /* Llib/hash.scm 919 */
BgL_res2606z00_4478 = BgL_aux3571z00_6458; }  else 
{ 
 obj_t BgL_auxz00_11874;
BgL_auxz00_11874 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37034L), BGl_string4033z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3571z00_6458); 
FAILURE(BgL_auxz00_11874,BFALSE,BFALSE);} } 
BgL_tmpz00_11870 = BgL_res2606z00_4478; } 
BgL_test5023z00_11869 = 
(BgL_tmpz00_11870==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5023z00_11869)
{ /* Llib/hash.scm 919 */
 int BgL_tmpz00_11879;
BgL_tmpz00_11879 = 
(int)(2L); 
BgL_bucketsz00_2242 = 
STRUCT_REF(BgL_tablez00_130, BgL_tmpz00_11879); }  else 
{ /* Llib/hash.scm 919 */
BgL_bucketsz00_2242 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } 
{ /* Llib/hash.scm 919 */
 long BgL_bucketzd2lenzd2_2243;
{ /* Llib/hash.scm 920 */
 obj_t BgL_vectorz00_4479;
if(
VECTORP(BgL_bucketsz00_2242))
{ /* Llib/hash.scm 920 */
BgL_vectorz00_4479 = BgL_bucketsz00_2242; }  else 
{ 
 obj_t BgL_auxz00_11885;
BgL_auxz00_11885 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37092L), BGl_string4033z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2242); 
FAILURE(BgL_auxz00_11885,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2243 = 
VECTOR_LENGTH(BgL_vectorz00_4479); } 
{ /* Llib/hash.scm 920 */
 long BgL_bucketzd2numzd2_2244;
{ /* Llib/hash.scm 921 */
 long BgL_arg1833z00_2272;
BgL_arg1833z00_2272 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_130, BgL_keyz00_131); 
{ /* Llib/hash.scm 921 */
 long BgL_n1z00_4480; long BgL_n2z00_4481;
BgL_n1z00_4480 = BgL_arg1833z00_2272; 
BgL_n2z00_4481 = BgL_bucketzd2lenzd2_2243; 
{ /* Llib/hash.scm 921 */
 bool_t BgL_test5026z00_11891;
{ /* Llib/hash.scm 921 */
 long BgL_arg2216z00_4483;
BgL_arg2216z00_4483 = 
(((BgL_n1z00_4480) | (BgL_n2z00_4481)) & -2147483648); 
BgL_test5026z00_11891 = 
(BgL_arg2216z00_4483==0L); } 
if(BgL_test5026z00_11891)
{ /* Llib/hash.scm 921 */
 int32_t BgL_arg2213z00_4484;
{ /* Llib/hash.scm 921 */
 int32_t BgL_arg2214z00_4485; int32_t BgL_arg2215z00_4486;
BgL_arg2214z00_4485 = 
(int32_t)(BgL_n1z00_4480); 
BgL_arg2215z00_4486 = 
(int32_t)(BgL_n2z00_4481); 
BgL_arg2213z00_4484 = 
(BgL_arg2214z00_4485%BgL_arg2215z00_4486); } 
{ /* Llib/hash.scm 921 */
 long BgL_arg2320z00_4491;
BgL_arg2320z00_4491 = 
(long)(BgL_arg2213z00_4484); 
BgL_bucketzd2numzd2_2244 = 
(long)(BgL_arg2320z00_4491); } }  else 
{ /* Llib/hash.scm 921 */
BgL_bucketzd2numzd2_2244 = 
(BgL_n1z00_4480%BgL_n2z00_4481); } } } } 
{ /* Llib/hash.scm 921 */
 obj_t BgL_bucketz00_2245;
{ /* Llib/hash.scm 922 */
 obj_t BgL_vectorz00_4493;
if(
VECTORP(BgL_bucketsz00_2242))
{ /* Llib/hash.scm 922 */
BgL_vectorz00_4493 = BgL_bucketsz00_2242; }  else 
{ 
 obj_t BgL_auxz00_11902;
BgL_auxz00_11902 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37202L), BGl_string4033z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2242); 
FAILURE(BgL_auxz00_11902,BFALSE,BFALSE);} 
BgL_bucketz00_2245 = 
VECTOR_REF(BgL_vectorz00_4493,BgL_bucketzd2numzd2_2244); } 
{ /* Llib/hash.scm 922 */
 obj_t BgL_maxzd2bucketzd2lenz00_2246;
{ /* Llib/hash.scm 923 */
 bool_t BgL_test5028z00_11907;
{ /* Llib/hash.scm 923 */
 obj_t BgL_tmpz00_11908;
{ /* Llib/hash.scm 923 */
 obj_t BgL_res2607z00_4498;
{ /* Llib/hash.scm 923 */
 obj_t BgL_aux3577z00_6464;
BgL_aux3577z00_6464 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3577z00_6464))
{ /* Llib/hash.scm 923 */
BgL_res2607z00_4498 = BgL_aux3577z00_6464; }  else 
{ 
 obj_t BgL_auxz00_11912;
BgL_auxz00_11912 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37242L), BGl_string4033z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3577z00_6464); 
FAILURE(BgL_auxz00_11912,BFALSE,BFALSE);} } 
BgL_tmpz00_11908 = BgL_res2607z00_4498; } 
BgL_test5028z00_11907 = 
(BgL_tmpz00_11908==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5028z00_11907)
{ /* Llib/hash.scm 923 */
 int BgL_tmpz00_11917;
BgL_tmpz00_11917 = 
(int)(1L); 
BgL_maxzd2bucketzd2lenz00_2246 = 
STRUCT_REF(BgL_tablez00_130, BgL_tmpz00_11917); }  else 
{ /* Llib/hash.scm 923 */
BgL_maxzd2bucketzd2lenz00_2246 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } 
{ /* Llib/hash.scm 923 */

if(
NULLP(BgL_bucketz00_2245))
{ /* Llib/hash.scm 924 */
{ /* Llib/hash.scm 926 */
 long BgL_arg1812z00_2248;
{ /* Llib/hash.scm 926 */
 obj_t BgL_arg1814z00_2249;
{ /* Llib/hash.scm 926 */
 bool_t BgL_test5031z00_11923;
{ /* Llib/hash.scm 926 */
 obj_t BgL_tmpz00_11924;
{ /* Llib/hash.scm 926 */
 obj_t BgL_res2608z00_4502;
{ /* Llib/hash.scm 926 */
 obj_t BgL_aux3579z00_6466;
BgL_aux3579z00_6466 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3579z00_6466))
{ /* Llib/hash.scm 926 */
BgL_res2608z00_4502 = BgL_aux3579z00_6466; }  else 
{ 
 obj_t BgL_auxz00_11928;
BgL_auxz00_11928 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37352L), BGl_string4033z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3579z00_6466); 
FAILURE(BgL_auxz00_11928,BFALSE,BFALSE);} } 
BgL_tmpz00_11924 = BgL_res2608z00_4502; } 
BgL_test5031z00_11923 = 
(BgL_tmpz00_11924==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5031z00_11923)
{ /* Llib/hash.scm 926 */
 int BgL_tmpz00_11933;
BgL_tmpz00_11933 = 
(int)(0L); 
BgL_arg1814z00_2249 = 
STRUCT_REF(BgL_tablez00_130, BgL_tmpz00_11933); }  else 
{ /* Llib/hash.scm 926 */
BgL_arg1814z00_2249 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } 
{ /* Llib/hash.scm 926 */
 long BgL_za71za7_4503;
{ /* Llib/hash.scm 926 */
 obj_t BgL_tmpz00_11937;
if(
INTEGERP(BgL_arg1814z00_2249))
{ /* Llib/hash.scm 926 */
BgL_tmpz00_11937 = BgL_arg1814z00_2249
; }  else 
{ 
 obj_t BgL_auxz00_11940;
BgL_auxz00_11940 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37374L), BGl_string4033z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1814z00_2249); 
FAILURE(BgL_auxz00_11940,BFALSE,BFALSE);} 
BgL_za71za7_4503 = 
(long)CINT(BgL_tmpz00_11937); } 
BgL_arg1812z00_2248 = 
(BgL_za71za7_4503+1L); } } 
{ /* Llib/hash.scm 926 */
 bool_t BgL_test5034z00_11946;
{ /* Llib/hash.scm 926 */
 obj_t BgL_tmpz00_11947;
{ /* Llib/hash.scm 926 */
 obj_t BgL_res2609z00_4507;
{ /* Llib/hash.scm 926 */
 obj_t BgL_aux3582z00_6469;
BgL_aux3582z00_6469 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3582z00_6469))
{ /* Llib/hash.scm 926 */
BgL_res2609z00_4507 = BgL_aux3582z00_6469; }  else 
{ 
 obj_t BgL_auxz00_11951;
BgL_auxz00_11951 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37319L), BGl_string4033z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3582z00_6469); 
FAILURE(BgL_auxz00_11951,BFALSE,BFALSE);} } 
BgL_tmpz00_11947 = BgL_res2609z00_4507; } 
BgL_test5034z00_11946 = 
(BgL_tmpz00_11947==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5034z00_11946)
{ /* Llib/hash.scm 926 */
 obj_t BgL_auxz00_11958; int BgL_tmpz00_11956;
BgL_auxz00_11958 = 
BINT(BgL_arg1812z00_2248); 
BgL_tmpz00_11956 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_130, BgL_tmpz00_11956, BgL_auxz00_11958); }  else 
{ /* Llib/hash.scm 926 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } } 
{ /* Llib/hash.scm 927 */
 obj_t BgL_arg1816z00_2250;
{ /* Llib/hash.scm 927 */
 obj_t BgL_arg1817z00_2251;
BgL_arg1817z00_2251 = 
MAKE_YOUNG_PAIR(BgL_keyz00_131, BgL_objz00_133); 
{ /* Llib/hash.scm 927 */
 obj_t BgL_list1818z00_2252;
BgL_list1818z00_2252 = 
MAKE_YOUNG_PAIR(BgL_arg1817z00_2251, BNIL); 
BgL_arg1816z00_2250 = BgL_list1818z00_2252; } } 
{ /* Llib/hash.scm 927 */
 obj_t BgL_vectorz00_4509;
if(
VECTORP(BgL_bucketsz00_2242))
{ /* Llib/hash.scm 927 */
BgL_vectorz00_4509 = BgL_bucketsz00_2242; }  else 
{ 
 obj_t BgL_auxz00_11966;
BgL_auxz00_11966 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37402L), BGl_string4033z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2242); 
FAILURE(BgL_auxz00_11966,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4509,BgL_bucketzd2numzd2_2244,BgL_arg1816z00_2250); } } 
return BgL_objz00_133;}  else 
{ 
 obj_t BgL_buckz00_2254; long BgL_countz00_2255;
BgL_buckz00_2254 = BgL_bucketz00_2245; 
BgL_countz00_2255 = 0L; 
BgL_zc3z04anonymousza31819ze3z87_2256:
if(
NULLP(BgL_buckz00_2254))
{ /* Llib/hash.scm 932 */
{ /* Llib/hash.scm 933 */
 long BgL_arg1821z00_2258;
{ /* Llib/hash.scm 933 */
 obj_t BgL_arg1822z00_2259;
{ /* Llib/hash.scm 933 */
 bool_t BgL_test5038z00_11973;
{ /* Llib/hash.scm 933 */
 obj_t BgL_tmpz00_11974;
{ /* Llib/hash.scm 933 */
 obj_t BgL_res2611z00_4514;
{ /* Llib/hash.scm 933 */
 obj_t BgL_aux3586z00_6473;
BgL_aux3586z00_6473 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3586z00_6473))
{ /* Llib/hash.scm 933 */
BgL_res2611z00_4514 = BgL_aux3586z00_6473; }  else 
{ 
 obj_t BgL_auxz00_11978;
BgL_auxz00_11978 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37565L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3586z00_6473); 
FAILURE(BgL_auxz00_11978,BFALSE,BFALSE);} } 
BgL_tmpz00_11974 = BgL_res2611z00_4514; } 
BgL_test5038z00_11973 = 
(BgL_tmpz00_11974==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5038z00_11973)
{ /* Llib/hash.scm 933 */
 int BgL_tmpz00_11983;
BgL_tmpz00_11983 = 
(int)(0L); 
BgL_arg1822z00_2259 = 
STRUCT_REF(BgL_tablez00_130, BgL_tmpz00_11983); }  else 
{ /* Llib/hash.scm 933 */
BgL_arg1822z00_2259 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } 
{ /* Llib/hash.scm 933 */
 long BgL_za71za7_4515;
{ /* Llib/hash.scm 933 */
 obj_t BgL_tmpz00_11987;
if(
INTEGERP(BgL_arg1822z00_2259))
{ /* Llib/hash.scm 933 */
BgL_tmpz00_11987 = BgL_arg1822z00_2259
; }  else 
{ 
 obj_t BgL_auxz00_11990;
BgL_auxz00_11990 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37587L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1822z00_2259); 
FAILURE(BgL_auxz00_11990,BFALSE,BFALSE);} 
BgL_za71za7_4515 = 
(long)CINT(BgL_tmpz00_11987); } 
BgL_arg1821z00_2258 = 
(BgL_za71za7_4515+1L); } } 
{ /* Llib/hash.scm 933 */
 bool_t BgL_test5041z00_11996;
{ /* Llib/hash.scm 933 */
 obj_t BgL_tmpz00_11997;
{ /* Llib/hash.scm 933 */
 obj_t BgL_res2612z00_4519;
{ /* Llib/hash.scm 933 */
 obj_t BgL_aux3589z00_6476;
BgL_aux3589z00_6476 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3589z00_6476))
{ /* Llib/hash.scm 933 */
BgL_res2612z00_4519 = BgL_aux3589z00_6476; }  else 
{ 
 obj_t BgL_auxz00_12001;
BgL_auxz00_12001 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37532L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3589z00_6476); 
FAILURE(BgL_auxz00_12001,BFALSE,BFALSE);} } 
BgL_tmpz00_11997 = BgL_res2612z00_4519; } 
BgL_test5041z00_11996 = 
(BgL_tmpz00_11997==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5041z00_11996)
{ /* Llib/hash.scm 933 */
 obj_t BgL_auxz00_12008; int BgL_tmpz00_12006;
BgL_auxz00_12008 = 
BINT(BgL_arg1821z00_2258); 
BgL_tmpz00_12006 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_130, BgL_tmpz00_12006, BgL_auxz00_12008); }  else 
{ /* Llib/hash.scm 933 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } } 
{ /* Llib/hash.scm 934 */
 obj_t BgL_arg1823z00_2260;
{ /* Llib/hash.scm 934 */
 obj_t BgL_arg1824z00_2261;
BgL_arg1824z00_2261 = 
MAKE_YOUNG_PAIR(BgL_keyz00_131, BgL_objz00_133); 
BgL_arg1823z00_2260 = 
MAKE_YOUNG_PAIR(BgL_arg1824z00_2261, BgL_bucketz00_2245); } 
{ /* Llib/hash.scm 934 */
 obj_t BgL_vectorz00_4520;
if(
VECTORP(BgL_bucketsz00_2242))
{ /* Llib/hash.scm 934 */
BgL_vectorz00_4520 = BgL_bucketsz00_2242; }  else 
{ 
 obj_t BgL_auxz00_12016;
BgL_auxz00_12016 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37612L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2242); 
FAILURE(BgL_auxz00_12016,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4520,BgL_bucketzd2numzd2_2244,BgL_arg1823z00_2260); } } 
{ /* Llib/hash.scm 935 */
 bool_t BgL_test5044z00_12021;
{ /* Llib/hash.scm 935 */
 long BgL_n2z00_4523;
{ /* Llib/hash.scm 935 */
 obj_t BgL_tmpz00_12022;
if(
INTEGERP(BgL_maxzd2bucketzd2lenz00_2246))
{ /* Llib/hash.scm 935 */
BgL_tmpz00_12022 = BgL_maxzd2bucketzd2lenz00_2246
; }  else 
{ 
 obj_t BgL_auxz00_12025;
BgL_auxz00_12025 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37681L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2bucketzd2lenz00_2246); 
FAILURE(BgL_auxz00_12025,BFALSE,BFALSE);} 
BgL_n2z00_4523 = 
(long)CINT(BgL_tmpz00_12022); } 
BgL_test5044z00_12021 = 
(BgL_countz00_2255>BgL_n2z00_4523); } 
if(BgL_test5044z00_12021)
{ /* Llib/hash.scm 935 */
BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(BgL_tablez00_130); }  else 
{ /* Llib/hash.scm 935 */BFALSE; } } 
return BgL_objz00_133;}  else 
{ /* Llib/hash.scm 938 */
 bool_t BgL_test5046z00_12032;
{ /* Llib/hash.scm 938 */
 obj_t BgL_arg1832z00_2270;
{ /* Llib/hash.scm 938 */
 obj_t BgL_pairz00_4524;
if(
PAIRP(BgL_buckz00_2254))
{ /* Llib/hash.scm 938 */
BgL_pairz00_4524 = BgL_buckz00_2254; }  else 
{ 
 obj_t BgL_auxz00_12035;
BgL_auxz00_12035 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37777L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2254); 
FAILURE(BgL_auxz00_12035,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 938 */
 obj_t BgL_pairz00_4527;
{ /* Llib/hash.scm 938 */
 obj_t BgL_aux3596z00_6483;
BgL_aux3596z00_6483 = 
CAR(BgL_pairz00_4524); 
if(
PAIRP(BgL_aux3596z00_6483))
{ /* Llib/hash.scm 938 */
BgL_pairz00_4527 = BgL_aux3596z00_6483; }  else 
{ 
 obj_t BgL_auxz00_12042;
BgL_auxz00_12042 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37771L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3596z00_6483); 
FAILURE(BgL_auxz00_12042,BFALSE,BFALSE);} } 
BgL_arg1832z00_2270 = 
CAR(BgL_pairz00_4527); } } 
{ /* Llib/hash.scm 938 */
 obj_t BgL_eqtz00_4528;
{ /* Llib/hash.scm 938 */
 bool_t BgL_test5049z00_12047;
{ /* Llib/hash.scm 938 */
 obj_t BgL_tmpz00_12048;
{ /* Llib/hash.scm 938 */
 obj_t BgL_res2613z00_4535;
{ /* Llib/hash.scm 938 */
 obj_t BgL_aux3598z00_6485;
BgL_aux3598z00_6485 = 
STRUCT_KEY(BgL_tablez00_130); 
if(
SYMBOLP(BgL_aux3598z00_6485))
{ /* Llib/hash.scm 938 */
BgL_res2613z00_4535 = BgL_aux3598z00_6485; }  else 
{ 
 obj_t BgL_auxz00_12052;
BgL_auxz00_12052 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37747L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3598z00_6485); 
FAILURE(BgL_auxz00_12052,BFALSE,BFALSE);} } 
BgL_tmpz00_12048 = BgL_res2613z00_4535; } 
BgL_test5049z00_12047 = 
(BgL_tmpz00_12048==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5049z00_12047)
{ /* Llib/hash.scm 938 */
 int BgL_tmpz00_12057;
BgL_tmpz00_12057 = 
(int)(3L); 
BgL_eqtz00_4528 = 
STRUCT_REF(BgL_tablez00_130, BgL_tmpz00_12057); }  else 
{ /* Llib/hash.scm 938 */
BgL_eqtz00_4528 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_130); } } 
if(
PROCEDUREP(BgL_eqtz00_4528))
{ /* Llib/hash.scm 938 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_4528, 2L))
{ /* Llib/hash.scm 938 */
BgL_test5046z00_12032 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_4528 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_4528))(BgL_eqtz00_4528, BgL_arg1832z00_2270, BgL_keyz00_131, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_4528))(BgL_eqtz00_4528, BgL_arg1832z00_2270, BgL_keyz00_131) ))
; }  else 
{ /* Llib/hash.scm 938 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4034z00zz__hashz00,BgL_eqtz00_4528);} }  else 
{ /* Llib/hash.scm 938 */
if(
(BgL_arg1832z00_2270==BgL_keyz00_131))
{ /* Llib/hash.scm 938 */
BgL_test5046z00_12032 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 938 */
if(
STRINGP(BgL_arg1832z00_2270))
{ /* Llib/hash.scm 938 */
if(
STRINGP(BgL_keyz00_131))
{ /* Llib/hash.scm 938 */
 long BgL_l1z00_4538;
BgL_l1z00_4538 = 
STRING_LENGTH(BgL_arg1832z00_2270); 
if(
(BgL_l1z00_4538==
STRING_LENGTH(BgL_keyz00_131)))
{ /* Llib/hash.scm 938 */
 int BgL_arg2110z00_4541;
{ /* Llib/hash.scm 938 */
 char * BgL_auxz00_12084; char * BgL_tmpz00_12082;
BgL_auxz00_12084 = 
BSTRING_TO_STRING(BgL_keyz00_131); 
BgL_tmpz00_12082 = 
BSTRING_TO_STRING(BgL_arg1832z00_2270); 
BgL_arg2110z00_4541 = 
memcmp(BgL_tmpz00_12082, BgL_auxz00_12084, BgL_l1z00_4538); } 
BgL_test5046z00_12032 = 
(
(long)(BgL_arg2110z00_4541)==0L); }  else 
{ /* Llib/hash.scm 938 */
BgL_test5046z00_12032 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 938 */
BgL_test5046z00_12032 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 938 */
BgL_test5046z00_12032 = ((bool_t)0)
; } } } } } 
if(BgL_test5046z00_12032)
{ /* Llib/hash.scm 939 */
 obj_t BgL_resz00_2265;
{ /* Llib/hash.scm 939 */
 obj_t BgL_arg1829z00_2267;
{ /* Llib/hash.scm 939 */
 obj_t BgL_pairz00_4547;
if(
PAIRP(BgL_buckz00_2254))
{ /* Llib/hash.scm 939 */
BgL_pairz00_4547 = BgL_buckz00_2254; }  else 
{ 
 obj_t BgL_auxz00_12091;
BgL_auxz00_12091 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37814L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2254); 
FAILURE(BgL_auxz00_12091,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 939 */
 obj_t BgL_pairz00_4550;
{ /* Llib/hash.scm 939 */
 obj_t BgL_aux3603z00_6491;
BgL_aux3603z00_6491 = 
CAR(BgL_pairz00_4547); 
if(
PAIRP(BgL_aux3603z00_6491))
{ /* Llib/hash.scm 939 */
BgL_pairz00_4550 = BgL_aux3603z00_6491; }  else 
{ 
 obj_t BgL_auxz00_12098;
BgL_auxz00_12098 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37808L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3603z00_6491); 
FAILURE(BgL_auxz00_12098,BFALSE,BFALSE);} } 
BgL_arg1829z00_2267 = 
CDR(BgL_pairz00_4550); } } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_132, 1L))
{ /* Llib/hash.scm 939 */
BgL_resz00_2265 = 
(VA_PROCEDUREP( BgL_procz00_132 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_132))(BgL_procz00_132, BgL_arg1829z00_2267, BEOA) : ((obj_t (*)(obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_132))(BgL_procz00_132, BgL_arg1829z00_2267) ); }  else 
{ /* Llib/hash.scm 939 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4037z00zz__hashz00,BgL_procz00_132);} } 
{ /* Llib/hash.scm 940 */
 obj_t BgL_arg1828z00_2266;
{ /* Llib/hash.scm 940 */
 obj_t BgL_pairz00_4551;
if(
PAIRP(BgL_buckz00_2254))
{ /* Llib/hash.scm 940 */
BgL_pairz00_4551 = BgL_buckz00_2254; }  else 
{ 
 obj_t BgL_auxz00_12112;
BgL_auxz00_12112 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37844L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2254); 
FAILURE(BgL_auxz00_12112,BFALSE,BFALSE);} 
BgL_arg1828z00_2266 = 
CAR(BgL_pairz00_4551); } 
{ /* Llib/hash.scm 940 */
 obj_t BgL_pairz00_4552;
if(
PAIRP(BgL_arg1828z00_2266))
{ /* Llib/hash.scm 940 */
BgL_pairz00_4552 = BgL_arg1828z00_2266; }  else 
{ 
 obj_t BgL_auxz00_12119;
BgL_auxz00_12119 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37848L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_arg1828z00_2266); 
FAILURE(BgL_auxz00_12119,BFALSE,BFALSE);} 
SET_CDR(BgL_pairz00_4552, BgL_resz00_2265); } } 
return BgL_resz00_2265;}  else 
{ /* Llib/hash.scm 943 */
 obj_t BgL_arg1830z00_2268; long BgL_arg1831z00_2269;
{ /* Llib/hash.scm 943 */
 obj_t BgL_pairz00_4553;
if(
PAIRP(BgL_buckz00_2254))
{ /* Llib/hash.scm 943 */
BgL_pairz00_4553 = BgL_buckz00_2254; }  else 
{ 
 obj_t BgL_auxz00_12126;
BgL_auxz00_12126 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(37889L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2254); 
FAILURE(BgL_auxz00_12126,BFALSE,BFALSE);} 
BgL_arg1830z00_2268 = 
CDR(BgL_pairz00_4553); } 
BgL_arg1831z00_2269 = 
(BgL_countz00_2255+1L); 
{ 
 long BgL_countz00_12133; obj_t BgL_buckz00_12132;
BgL_buckz00_12132 = BgL_arg1830z00_2268; 
BgL_countz00_12133 = BgL_arg1831z00_2269; 
BgL_countz00_2255 = BgL_countz00_12133; 
BgL_buckz00_2254 = BgL_buckz00_12132; 
goto BgL_zc3z04anonymousza31819ze3z87_2256;} } } } } } } } } } } 

}



/* hashtable-add! */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2addz12zc0zz__hashz00(obj_t BgL_tablez00_134, obj_t BgL_keyz00_135, obj_t BgL_p2z00_136, obj_t BgL_objz00_137, obj_t BgL_initz00_138)
{
{ /* Llib/hash.scm 948 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_134))
{ /* Llib/hash.scm 951 */
 obj_t BgL_auxz00_12136;
if(
STRINGP(BgL_keyz00_135))
{ /* Llib/hash.scm 951 */
BgL_auxz00_12136 = BgL_keyz00_135
; }  else 
{ 
 obj_t BgL_auxz00_12139;
BgL_auxz00_12139 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38301L), BGl_string4040z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_135); 
FAILURE(BgL_auxz00_12139,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2addz12zc0zz__hashz00(BgL_tablez00_134, BgL_auxz00_12136, BgL_p2z00_136, BgL_objz00_137, BgL_initz00_138);}  else 
{ /* Llib/hash.scm 950 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_134))
{ /* Llib/hash.scm 952 */
BGL_TAIL return 
BGl_weakzd2hashtablezd2addz12z12zz__weakhashz00(BgL_tablez00_134, BgL_keyz00_135, BgL_p2z00_136, BgL_objz00_137, BgL_initz00_138);}  else 
{ /* Llib/hash.scm 952 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2addz12z12zz__hashz00(BgL_tablez00_134, BgL_keyz00_135, BgL_p2z00_136, BgL_objz00_137, BgL_initz00_138);} } } 

}



/* &hashtable-add! */
obj_t BGl_z62hashtablezd2addz12za2zz__hashz00(obj_t BgL_envz00_5497, obj_t BgL_tablez00_5498, obj_t BgL_keyz00_5499, obj_t BgL_p2z00_5500, obj_t BgL_objz00_5501, obj_t BgL_initz00_5502)
{
{ /* Llib/hash.scm 948 */
{ /* Llib/hash.scm 950 */
 obj_t BgL_auxz00_12155; obj_t BgL_auxz00_12148;
if(
PROCEDUREP(BgL_p2z00_5500))
{ /* Llib/hash.scm 950 */
BgL_auxz00_12155 = BgL_p2z00_5500
; }  else 
{ 
 obj_t BgL_auxz00_12158;
BgL_auxz00_12158 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38228L), BGl_string4041z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_p2z00_5500); 
FAILURE(BgL_auxz00_12158,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5498))
{ /* Llib/hash.scm 950 */
BgL_auxz00_12148 = BgL_tablez00_5498
; }  else 
{ 
 obj_t BgL_auxz00_12151;
BgL_auxz00_12151 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38228L), BGl_string4041z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5498); 
FAILURE(BgL_auxz00_12151,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2addz12zc0zz__hashz00(BgL_auxz00_12148, BgL_keyz00_5499, BgL_auxz00_12155, BgL_objz00_5501, BgL_initz00_5502);} } 

}



/* open-string-hashtable-add! */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2addz12zc0zz__hashz00(obj_t BgL_tablez00_139, obj_t BgL_keyz00_140, obj_t BgL_procz00_141, obj_t BgL_objz00_142, obj_t BgL_initz00_143)
{
{ /* Llib/hash.scm 960 */
{ /* Llib/hash.scm 961 */
 obj_t BgL_siza7eza7_2275;
{ /* Llib/hash.scm 961 */
 bool_t BgL_test5068z00_12163;
{ /* Llib/hash.scm 961 */
 obj_t BgL_tmpz00_12164;
{ /* Llib/hash.scm 961 */
 obj_t BgL_res2614z00_4560;
{ /* Llib/hash.scm 961 */
 obj_t BgL_aux3618z00_6507;
BgL_aux3618z00_6507 = 
STRUCT_KEY(BgL_tablez00_139); 
if(
SYMBOLP(BgL_aux3618z00_6507))
{ /* Llib/hash.scm 961 */
BgL_res2614z00_4560 = BgL_aux3618z00_6507; }  else 
{ 
 obj_t BgL_auxz00_12168;
BgL_auxz00_12168 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38797L), BGl_string4042z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3618z00_6507); 
FAILURE(BgL_auxz00_12168,BFALSE,BFALSE);} } 
BgL_tmpz00_12164 = BgL_res2614z00_4560; } 
BgL_test5068z00_12163 = 
(BgL_tmpz00_12164==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5068z00_12163)
{ /* Llib/hash.scm 961 */
 int BgL_tmpz00_12173;
BgL_tmpz00_12173 = 
(int)(1L); 
BgL_siza7eza7_2275 = 
STRUCT_REF(BgL_tablez00_139, BgL_tmpz00_12173); }  else 
{ /* Llib/hash.scm 961 */
BgL_siza7eza7_2275 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_139); } } 
{ /* Llib/hash.scm 961 */
 obj_t BgL_bucketsz00_2276;
{ /* Llib/hash.scm 962 */
 bool_t BgL_test5070z00_12177;
{ /* Llib/hash.scm 962 */
 obj_t BgL_tmpz00_12178;
{ /* Llib/hash.scm 962 */
 obj_t BgL_res2615z00_4564;
{ /* Llib/hash.scm 962 */
 obj_t BgL_aux3620z00_6509;
BgL_aux3620z00_6509 = 
STRUCT_KEY(BgL_tablez00_139); 
if(
SYMBOLP(BgL_aux3620z00_6509))
{ /* Llib/hash.scm 962 */
BgL_res2615z00_4564 = BgL_aux3620z00_6509; }  else 
{ 
 obj_t BgL_auxz00_12182;
BgL_auxz00_12182 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38844L), BGl_string4042z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3620z00_6509); 
FAILURE(BgL_auxz00_12182,BFALSE,BFALSE);} } 
BgL_tmpz00_12178 = BgL_res2615z00_4564; } 
BgL_test5070z00_12177 = 
(BgL_tmpz00_12178==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5070z00_12177)
{ /* Llib/hash.scm 962 */
 int BgL_tmpz00_12187;
BgL_tmpz00_12187 = 
(int)(2L); 
BgL_bucketsz00_2276 = 
STRUCT_REF(BgL_tablez00_139, BgL_tmpz00_12187); }  else 
{ /* Llib/hash.scm 962 */
BgL_bucketsz00_2276 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_139); } } 
{ /* Llib/hash.scm 962 */
 long BgL_hashz00_2277;
{ /* Llib/hash.scm 963 */
 long BgL_arg1856z00_2305;
BgL_arg1856z00_2305 = 
STRING_LENGTH(BgL_keyz00_140); 
BgL_hashz00_2277 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_140), 
(int)(0L), 
(int)(BgL_arg1856z00_2305)); } 
{ /* Llib/hash.scm 963 */

{ /* Llib/hash.scm 965 */
 long BgL_g1073z00_2278;
{ /* Llib/hash.scm 965 */
 long BgL_n1z00_4566; long BgL_n2z00_4567;
BgL_n1z00_4566 = BgL_hashz00_2277; 
{ /* Llib/hash.scm 965 */
 obj_t BgL_tmpz00_12196;
if(
INTEGERP(BgL_siza7eza7_2275))
{ /* Llib/hash.scm 965 */
BgL_tmpz00_12196 = BgL_siza7eza7_2275
; }  else 
{ 
 obj_t BgL_auxz00_12199;
BgL_auxz00_12199 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38986L), BGl_string4042z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2275); 
FAILURE(BgL_auxz00_12199,BFALSE,BFALSE);} 
BgL_n2z00_4567 = 
(long)CINT(BgL_tmpz00_12196); } 
{ /* Llib/hash.scm 965 */
 bool_t BgL_test5073z00_12204;
{ /* Llib/hash.scm 965 */
 long BgL_arg2216z00_4569;
BgL_arg2216z00_4569 = 
(((BgL_n1z00_4566) | (BgL_n2z00_4567)) & -2147483648); 
BgL_test5073z00_12204 = 
(BgL_arg2216z00_4569==0L); } 
if(BgL_test5073z00_12204)
{ /* Llib/hash.scm 965 */
 int32_t BgL_arg2213z00_4570;
{ /* Llib/hash.scm 965 */
 int32_t BgL_arg2214z00_4571; int32_t BgL_arg2215z00_4572;
BgL_arg2214z00_4571 = 
(int32_t)(BgL_n1z00_4566); 
BgL_arg2215z00_4572 = 
(int32_t)(BgL_n2z00_4567); 
BgL_arg2213z00_4570 = 
(BgL_arg2214z00_4571%BgL_arg2215z00_4572); } 
{ /* Llib/hash.scm 965 */
 long BgL_arg2320z00_4577;
BgL_arg2320z00_4577 = 
(long)(BgL_arg2213z00_4570); 
BgL_g1073z00_2278 = 
(long)(BgL_arg2320z00_4577); } }  else 
{ /* Llib/hash.scm 965 */
BgL_g1073z00_2278 = 
(BgL_n1z00_4566%BgL_n2z00_4567); } } } 
{ 
 long BgL_offz00_2280; long BgL_iz00_2281;
BgL_offz00_2280 = BgL_g1073z00_2278; 
BgL_iz00_2281 = 1L; 
BgL_zc3z04anonymousza31836ze3z87_2282:
{ /* Llib/hash.scm 967 */
 long BgL_off3z00_2283;
BgL_off3z00_2283 = 
(BgL_offz00_2280*3L); 
{ /* Llib/hash.scm 968 */
 bool_t BgL_test5074z00_12214;
{ /* Llib/hash.scm 968 */
 obj_t BgL_vectorz00_4580;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 968 */
BgL_vectorz00_4580 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12217;
BgL_auxz00_12217 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39052L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12217,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 968 */
 bool_t BgL_test5076z00_12221;
{ /* Llib/hash.scm 968 */
 long BgL_tmpz00_12222;
BgL_tmpz00_12222 = 
VECTOR_LENGTH(BgL_vectorz00_4580); 
BgL_test5076z00_12221 = 
BOUND_CHECK(BgL_off3z00_2283, BgL_tmpz00_12222); } 
if(BgL_test5076z00_12221)
{ /* Llib/hash.scm 968 */
BgL_test5074z00_12214 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4580,BgL_off3z00_2283))
; }  else 
{ 
 obj_t BgL_auxz00_12227;
BgL_auxz00_12227 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39040L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4580, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4580)), 
(int)(BgL_off3z00_2283)); 
FAILURE(BgL_auxz00_12227,BFALSE,BFALSE);} } } 
if(BgL_test5074z00_12214)
{ /* Llib/hash.scm 969 */
 bool_t BgL_test5077z00_12234;
{ /* Llib/hash.scm 969 */
 obj_t BgL_arg1854z00_2302;
{ /* Llib/hash.scm 969 */
 obj_t BgL_vectorz00_4582;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 969 */
BgL_vectorz00_4582 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12237;
BgL_auxz00_12237 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39094L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12237,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 969 */
 bool_t BgL_test5079z00_12241;
{ /* Llib/hash.scm 969 */
 long BgL_tmpz00_12242;
BgL_tmpz00_12242 = 
VECTOR_LENGTH(BgL_vectorz00_4582); 
BgL_test5079z00_12241 = 
BOUND_CHECK(BgL_off3z00_2283, BgL_tmpz00_12242); } 
if(BgL_test5079z00_12241)
{ /* Llib/hash.scm 969 */
BgL_arg1854z00_2302 = 
VECTOR_REF(BgL_vectorz00_4582,BgL_off3z00_2283); }  else 
{ 
 obj_t BgL_auxz00_12246;
BgL_auxz00_12246 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39082L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4582, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4582)), 
(int)(BgL_off3z00_2283)); 
FAILURE(BgL_auxz00_12246,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 969 */
 obj_t BgL_string1z00_4584;
if(
STRINGP(BgL_arg1854z00_2302))
{ /* Llib/hash.scm 969 */
BgL_string1z00_4584 = BgL_arg1854z00_2302; }  else 
{ 
 obj_t BgL_auxz00_12255;
BgL_auxz00_12255 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39106L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1854z00_2302); 
FAILURE(BgL_auxz00_12255,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 969 */
 long BgL_l1z00_4586;
BgL_l1z00_4586 = 
STRING_LENGTH(BgL_string1z00_4584); 
if(
(BgL_l1z00_4586==
STRING_LENGTH(BgL_keyz00_140)))
{ /* Llib/hash.scm 969 */
 int BgL_arg2110z00_4589;
{ /* Llib/hash.scm 969 */
 char * BgL_auxz00_12265; char * BgL_tmpz00_12263;
BgL_auxz00_12265 = 
BSTRING_TO_STRING(BgL_keyz00_140); 
BgL_tmpz00_12263 = 
BSTRING_TO_STRING(BgL_string1z00_4584); 
BgL_arg2110z00_4589 = 
memcmp(BgL_tmpz00_12263, BgL_auxz00_12265, BgL_l1z00_4586); } 
BgL_test5077z00_12234 = 
(
(long)(BgL_arg2110z00_4589)==0L); }  else 
{ /* Llib/hash.scm 969 */
BgL_test5077z00_12234 = ((bool_t)0)
; } } } } 
if(BgL_test5077z00_12234)
{ /* Llib/hash.scm 970 */
 bool_t BgL_test5082z00_12270;
{ /* Llib/hash.scm 970 */
 long BgL_arg1848z00_2295;
BgL_arg1848z00_2295 = 
(BgL_off3z00_2283+2L); 
{ /* Llib/hash.scm 970 */
 obj_t BgL_vectorz00_4596;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 970 */
BgL_vectorz00_4596 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12274;
BgL_auxz00_12274 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39135L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12274,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 970 */
 bool_t BgL_test5084z00_12278;
{ /* Llib/hash.scm 970 */
 long BgL_tmpz00_12279;
BgL_tmpz00_12279 = 
VECTOR_LENGTH(BgL_vectorz00_4596); 
BgL_test5084z00_12278 = 
BOUND_CHECK(BgL_arg1848z00_2295, BgL_tmpz00_12279); } 
if(BgL_test5084z00_12278)
{ /* Llib/hash.scm 970 */
BgL_test5082z00_12270 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4596,BgL_arg1848z00_2295))
; }  else 
{ 
 obj_t BgL_auxz00_12284;
BgL_auxz00_12284 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39123L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4596, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4596)), 
(int)(BgL_arg1848z00_2295)); 
FAILURE(BgL_auxz00_12284,BFALSE,BFALSE);} } } } 
if(BgL_test5082z00_12270)
{ /* Llib/hash.scm 971 */
 obj_t BgL_ovalz00_2289;
{ /* Llib/hash.scm 971 */
 long BgL_arg1844z00_2292;
BgL_arg1844z00_2292 = 
(BgL_off3z00_2283+1L); 
{ /* Llib/hash.scm 971 */
 obj_t BgL_vectorz00_4599;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 971 */
BgL_vectorz00_4599 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12294;
BgL_auxz00_12294 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39184L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12294,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 971 */
 bool_t BgL_test5086z00_12298;
{ /* Llib/hash.scm 971 */
 long BgL_tmpz00_12299;
BgL_tmpz00_12299 = 
VECTOR_LENGTH(BgL_vectorz00_4599); 
BgL_test5086z00_12298 = 
BOUND_CHECK(BgL_arg1844z00_2292, BgL_tmpz00_12299); } 
if(BgL_test5086z00_12298)
{ /* Llib/hash.scm 971 */
BgL_ovalz00_2289 = 
VECTOR_REF(BgL_vectorz00_4599,BgL_arg1844z00_2292); }  else 
{ 
 obj_t BgL_auxz00_12303;
BgL_auxz00_12303 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39172L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4599, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4599)), 
(int)(BgL_arg1844z00_2292)); 
FAILURE(BgL_auxz00_12303,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 972 */
 long BgL_arg1842z00_2290; obj_t BgL_arg1843z00_2291;
BgL_arg1842z00_2290 = 
(BgL_off3z00_2283+1L); 
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_141, 2L))
{ /* Llib/hash.scm 973 */
BgL_arg1843z00_2291 = 
(VA_PROCEDUREP( BgL_procz00_141 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_ovalz00_2289, BgL_initz00_143, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_ovalz00_2289, BgL_initz00_143) ); }  else 
{ /* Llib/hash.scm 973 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4043z00zz__hashz00,BgL_procz00_141);} 
{ /* Llib/hash.scm 972 */
 obj_t BgL_vectorz00_4602;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 972 */
BgL_vectorz00_4602 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12321;
BgL_auxz00_12321 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39227L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12321,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 972 */
 bool_t BgL_test5089z00_12325;
{ /* Llib/hash.scm 972 */
 long BgL_tmpz00_12326;
BgL_tmpz00_12326 = 
VECTOR_LENGTH(BgL_vectorz00_4602); 
BgL_test5089z00_12325 = 
BOUND_CHECK(BgL_arg1842z00_2290, BgL_tmpz00_12326); } 
if(BgL_test5089z00_12325)
{ /* Llib/hash.scm 972 */
return 
VECTOR_SET(BgL_vectorz00_4602,BgL_arg1842z00_2290,BgL_arg1843z00_2291);}  else 
{ 
 obj_t BgL_auxz00_12330;
BgL_auxz00_12330 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39214L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4602, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4602)), 
(int)(BgL_arg1842z00_2290)); 
FAILURE(BgL_auxz00_12330,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/hash.scm 974 */
 long BgL_arg1845z00_2293; obj_t BgL_arg1846z00_2294;
BgL_arg1845z00_2293 = 
(BgL_off3z00_2283+1L); 
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_141, 2L))
{ /* Llib/hash.scm 975 */
BgL_arg1846z00_2294 = 
(VA_PROCEDUREP( BgL_procz00_141 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_objz00_142, BgL_initz00_143, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_objz00_142, BgL_initz00_143) ); }  else 
{ /* Llib/hash.scm 975 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4046z00zz__hashz00,BgL_procz00_141);} 
{ /* Llib/hash.scm 974 */
 obj_t BgL_vectorz00_4605;
if(
VECTORP(BgL_bucketsz00_2276))
{ /* Llib/hash.scm 974 */
BgL_vectorz00_4605 = BgL_bucketsz00_2276; }  else 
{ 
 obj_t BgL_auxz00_12348;
BgL_auxz00_12348 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39292L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2276); 
FAILURE(BgL_auxz00_12348,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 974 */
 bool_t BgL_test5092z00_12352;
{ /* Llib/hash.scm 974 */
 long BgL_tmpz00_12353;
BgL_tmpz00_12353 = 
VECTOR_LENGTH(BgL_vectorz00_4605); 
BgL_test5092z00_12352 = 
BOUND_CHECK(BgL_arg1845z00_2293, BgL_tmpz00_12353); } 
if(BgL_test5092z00_12352)
{ /* Llib/hash.scm 974 */
return 
VECTOR_SET(BgL_vectorz00_4605,BgL_arg1845z00_2293,BgL_arg1846z00_2294);}  else 
{ 
 obj_t BgL_auxz00_12357;
BgL_auxz00_12357 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39279L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4605, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4605)), 
(int)(BgL_arg1845z00_2293)); 
FAILURE(BgL_auxz00_12357,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/hash.scm 976 */
 long BgL_noffz00_2296;
BgL_noffz00_2296 = 
(BgL_offz00_2280+
(BgL_iz00_2281*BgL_iz00_2281)); 
{ /* Llib/hash.scm 977 */
 bool_t BgL_test5093z00_12366;
{ /* Llib/hash.scm 977 */
 long BgL_n2z00_4612;
{ /* Llib/hash.scm 977 */
 obj_t BgL_tmpz00_12367;
if(
INTEGERP(BgL_siza7eza7_2275))
{ /* Llib/hash.scm 977 */
BgL_tmpz00_12367 = BgL_siza7eza7_2275
; }  else 
{ 
 obj_t BgL_auxz00_12370;
BgL_auxz00_12370 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39401L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2275); 
FAILURE(BgL_auxz00_12370,BFALSE,BFALSE);} 
BgL_n2z00_4612 = 
(long)CINT(BgL_tmpz00_12367); } 
BgL_test5093z00_12366 = 
(BgL_noffz00_2296>=BgL_n2z00_4612); } 
if(BgL_test5093z00_12366)
{ /* Llib/hash.scm 978 */
 long BgL_arg1850z00_2298; long BgL_arg1851z00_2299;
{ /* Llib/hash.scm 978 */
 long BgL_n1z00_4613; long BgL_n2z00_4614;
BgL_n1z00_4613 = BgL_noffz00_2296; 
{ /* Llib/hash.scm 978 */
 obj_t BgL_tmpz00_12376;
if(
INTEGERP(BgL_siza7eza7_2275))
{ /* Llib/hash.scm 978 */
BgL_tmpz00_12376 = BgL_siza7eza7_2275
; }  else 
{ 
 obj_t BgL_auxz00_12379;
BgL_auxz00_12379 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39437L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2275); 
FAILURE(BgL_auxz00_12379,BFALSE,BFALSE);} 
BgL_n2z00_4614 = 
(long)CINT(BgL_tmpz00_12376); } 
{ /* Llib/hash.scm 978 */
 bool_t BgL_test5096z00_12384;
{ /* Llib/hash.scm 978 */
 long BgL_arg2216z00_4616;
BgL_arg2216z00_4616 = 
(((BgL_n1z00_4613) | (BgL_n2z00_4614)) & -2147483648); 
BgL_test5096z00_12384 = 
(BgL_arg2216z00_4616==0L); } 
if(BgL_test5096z00_12384)
{ /* Llib/hash.scm 978 */
 int32_t BgL_arg2213z00_4617;
{ /* Llib/hash.scm 978 */
 int32_t BgL_arg2214z00_4618; int32_t BgL_arg2215z00_4619;
BgL_arg2214z00_4618 = 
(int32_t)(BgL_n1z00_4613); 
BgL_arg2215z00_4619 = 
(int32_t)(BgL_n2z00_4614); 
BgL_arg2213z00_4617 = 
(BgL_arg2214z00_4618%BgL_arg2215z00_4619); } 
{ /* Llib/hash.scm 978 */
 long BgL_arg2320z00_4624;
BgL_arg2320z00_4624 = 
(long)(BgL_arg2213z00_4617); 
BgL_arg1850z00_2298 = 
(long)(BgL_arg2320z00_4624); } }  else 
{ /* Llib/hash.scm 978 */
BgL_arg1850z00_2298 = 
(BgL_n1z00_4613%BgL_n2z00_4614); } } } 
BgL_arg1851z00_2299 = 
(BgL_iz00_2281+1L); 
{ 
 long BgL_iz00_12395; long BgL_offz00_12394;
BgL_offz00_12394 = BgL_arg1850z00_2298; 
BgL_iz00_12395 = BgL_arg1851z00_2299; 
BgL_iz00_2281 = BgL_iz00_12395; 
BgL_offz00_2280 = BgL_offz00_12394; 
goto BgL_zc3z04anonymousza31836ze3z87_2282;} }  else 
{ 
 long BgL_iz00_12397; long BgL_offz00_12396;
BgL_offz00_12396 = BgL_noffz00_2296; 
BgL_iz00_12397 = 
(BgL_iz00_2281+1L); 
BgL_iz00_2281 = BgL_iz00_12397; 
BgL_offz00_2280 = BgL_offz00_12396; 
goto BgL_zc3z04anonymousza31836ze3z87_2282;} } } }  else 
{ /* Llib/hash.scm 981 */
 obj_t BgL_arg1855z00_2303;
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_141, 2L))
{ /* Llib/hash.scm 981 */
BgL_arg1855z00_2303 = 
(VA_PROCEDUREP( BgL_procz00_141 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_objz00_142, BgL_initz00_143, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_141))(BgL_procz00_141, BgL_objz00_142, BgL_initz00_143) ); }  else 
{ /* Llib/hash.scm 981 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4046z00zz__hashz00,BgL_procz00_141);} 
return 
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(BgL_tablez00_139, BgL_keyz00_140, BgL_arg1855z00_2303, 
BINT(BgL_hashz00_2277));} } } } } } } } } } 

}



/* &open-string-hashtable-add! */
obj_t BGl_z62openzd2stringzd2hashtablezd2addz12za2zz__hashz00(obj_t BgL_envz00_5503, obj_t BgL_tablez00_5504, obj_t BgL_keyz00_5505, obj_t BgL_procz00_5506, obj_t BgL_objz00_5507, obj_t BgL_initz00_5508)
{
{ /* Llib/hash.scm 960 */
{ /* Llib/hash.scm 961 */
 obj_t BgL_auxz00_12423; obj_t BgL_auxz00_12416; obj_t BgL_auxz00_12409;
if(
PROCEDUREP(BgL_procz00_5506))
{ /* Llib/hash.scm 961 */
BgL_auxz00_12423 = BgL_procz00_5506
; }  else 
{ 
 obj_t BgL_auxz00_12426;
BgL_auxz00_12426 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38784L), BGl_string4049z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_procz00_5506); 
FAILURE(BgL_auxz00_12426,BFALSE,BFALSE);} 
if(
STRINGP(BgL_keyz00_5505))
{ /* Llib/hash.scm 961 */
BgL_auxz00_12416 = BgL_keyz00_5505
; }  else 
{ 
 obj_t BgL_auxz00_12419;
BgL_auxz00_12419 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38784L), BGl_string4049z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5505); 
FAILURE(BgL_auxz00_12419,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tablez00_5504))
{ /* Llib/hash.scm 961 */
BgL_auxz00_12409 = BgL_tablez00_5504
; }  else 
{ 
 obj_t BgL_auxz00_12412;
BgL_auxz00_12412 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(38784L), BGl_string4049z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5504); 
FAILURE(BgL_auxz00_12412,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2addz12zc0zz__hashz00(BgL_auxz00_12409, BgL_auxz00_12416, BgL_auxz00_12423, BgL_objz00_5507, BgL_initz00_5508);} } 

}



/* plain-hashtable-add! */
obj_t BGl_plainzd2hashtablezd2addz12z12zz__hashz00(obj_t BgL_tablez00_144, obj_t BgL_keyz00_145, obj_t BgL_procz00_146, obj_t BgL_objz00_147, obj_t BgL_initz00_148)
{
{ /* Llib/hash.scm 986 */
{ /* Llib/hash.scm 987 */
 obj_t BgL_bucketsz00_2306;
{ /* Llib/hash.scm 987 */
 bool_t BgL_test5101z00_12431;
{ /* Llib/hash.scm 987 */
 obj_t BgL_tmpz00_12432;
{ /* Llib/hash.scm 987 */
 obj_t BgL_res2616z00_4631;
{ /* Llib/hash.scm 987 */
 obj_t BgL_aux3648z00_6540;
BgL_aux3648z00_6540 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3648z00_6540))
{ /* Llib/hash.scm 987 */
BgL_res2616z00_4631 = BgL_aux3648z00_6540; }  else 
{ 
 obj_t BgL_auxz00_12436;
BgL_auxz00_12436 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39883L), BGl_string4050z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3648z00_6540); 
FAILURE(BgL_auxz00_12436,BFALSE,BFALSE);} } 
BgL_tmpz00_12432 = BgL_res2616z00_4631; } 
BgL_test5101z00_12431 = 
(BgL_tmpz00_12432==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5101z00_12431)
{ /* Llib/hash.scm 987 */
 int BgL_tmpz00_12441;
BgL_tmpz00_12441 = 
(int)(2L); 
BgL_bucketsz00_2306 = 
STRUCT_REF(BgL_tablez00_144, BgL_tmpz00_12441); }  else 
{ /* Llib/hash.scm 987 */
BgL_bucketsz00_2306 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } 
{ /* Llib/hash.scm 987 */
 long BgL_bucketzd2lenzd2_2307;
{ /* Llib/hash.scm 988 */
 obj_t BgL_vectorz00_4632;
if(
VECTORP(BgL_bucketsz00_2306))
{ /* Llib/hash.scm 988 */
BgL_vectorz00_4632 = BgL_bucketsz00_2306; }  else 
{ 
 obj_t BgL_auxz00_12447;
BgL_auxz00_12447 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(39941L), BGl_string4050z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2306); 
FAILURE(BgL_auxz00_12447,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2307 = 
VECTOR_LENGTH(BgL_vectorz00_4632); } 
{ /* Llib/hash.scm 988 */
 long BgL_bucketzd2numzd2_2308;
{ /* Llib/hash.scm 989 */
 long BgL_arg1884z00_2338;
BgL_arg1884z00_2338 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_144, BgL_keyz00_145); 
{ /* Llib/hash.scm 989 */
 long BgL_n1z00_4633; long BgL_n2z00_4634;
BgL_n1z00_4633 = BgL_arg1884z00_2338; 
BgL_n2z00_4634 = BgL_bucketzd2lenzd2_2307; 
{ /* Llib/hash.scm 989 */
 bool_t BgL_test5104z00_12453;
{ /* Llib/hash.scm 989 */
 long BgL_arg2216z00_4636;
BgL_arg2216z00_4636 = 
(((BgL_n1z00_4633) | (BgL_n2z00_4634)) & -2147483648); 
BgL_test5104z00_12453 = 
(BgL_arg2216z00_4636==0L); } 
if(BgL_test5104z00_12453)
{ /* Llib/hash.scm 989 */
 int32_t BgL_arg2213z00_4637;
{ /* Llib/hash.scm 989 */
 int32_t BgL_arg2214z00_4638; int32_t BgL_arg2215z00_4639;
BgL_arg2214z00_4638 = 
(int32_t)(BgL_n1z00_4633); 
BgL_arg2215z00_4639 = 
(int32_t)(BgL_n2z00_4634); 
BgL_arg2213z00_4637 = 
(BgL_arg2214z00_4638%BgL_arg2215z00_4639); } 
{ /* Llib/hash.scm 989 */
 long BgL_arg2320z00_4644;
BgL_arg2320z00_4644 = 
(long)(BgL_arg2213z00_4637); 
BgL_bucketzd2numzd2_2308 = 
(long)(BgL_arg2320z00_4644); } }  else 
{ /* Llib/hash.scm 989 */
BgL_bucketzd2numzd2_2308 = 
(BgL_n1z00_4633%BgL_n2z00_4634); } } } } 
{ /* Llib/hash.scm 989 */
 obj_t BgL_bucketz00_2309;
{ /* Llib/hash.scm 990 */
 obj_t BgL_vectorz00_4646;
if(
VECTORP(BgL_bucketsz00_2306))
{ /* Llib/hash.scm 990 */
BgL_vectorz00_4646 = BgL_bucketsz00_2306; }  else 
{ 
 obj_t BgL_auxz00_12464;
BgL_auxz00_12464 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40051L), BGl_string4050z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2306); 
FAILURE(BgL_auxz00_12464,BFALSE,BFALSE);} 
BgL_bucketz00_2309 = 
VECTOR_REF(BgL_vectorz00_4646,BgL_bucketzd2numzd2_2308); } 
{ /* Llib/hash.scm 990 */
 obj_t BgL_maxzd2bucketzd2lenz00_2310;
{ /* Llib/hash.scm 991 */
 bool_t BgL_test5106z00_12469;
{ /* Llib/hash.scm 991 */
 obj_t BgL_tmpz00_12470;
{ /* Llib/hash.scm 991 */
 obj_t BgL_res2617z00_4651;
{ /* Llib/hash.scm 991 */
 obj_t BgL_aux3654z00_6546;
BgL_aux3654z00_6546 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3654z00_6546))
{ /* Llib/hash.scm 991 */
BgL_res2617z00_4651 = BgL_aux3654z00_6546; }  else 
{ 
 obj_t BgL_auxz00_12474;
BgL_auxz00_12474 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40091L), BGl_string4050z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3654z00_6546); 
FAILURE(BgL_auxz00_12474,BFALSE,BFALSE);} } 
BgL_tmpz00_12470 = BgL_res2617z00_4651; } 
BgL_test5106z00_12469 = 
(BgL_tmpz00_12470==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5106z00_12469)
{ /* Llib/hash.scm 991 */
 int BgL_tmpz00_12479;
BgL_tmpz00_12479 = 
(int)(1L); 
BgL_maxzd2bucketzd2lenz00_2310 = 
STRUCT_REF(BgL_tablez00_144, BgL_tmpz00_12479); }  else 
{ /* Llib/hash.scm 991 */
BgL_maxzd2bucketzd2lenz00_2310 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } 
{ /* Llib/hash.scm 991 */

if(
NULLP(BgL_bucketz00_2309))
{ /* Llib/hash.scm 993 */
 obj_t BgL_vz00_2312;
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_146, 2L))
{ /* Llib/hash.scm 993 */
BgL_vz00_2312 = 
(VA_PROCEDUREP( BgL_procz00_146 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_initz00_148, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_initz00_148) ); }  else 
{ /* Llib/hash.scm 993 */
FAILURE(BGl_string4051z00zz__hashz00,BGl_list4046z00zz__hashz00,BgL_procz00_146);} 
{ /* Llib/hash.scm 994 */
 long BgL_arg1860z00_2313;
{ /* Llib/hash.scm 994 */
 obj_t BgL_arg1861z00_2314;
{ /* Llib/hash.scm 994 */
 bool_t BgL_test5110z00_12493;
{ /* Llib/hash.scm 994 */
 obj_t BgL_tmpz00_12494;
{ /* Llib/hash.scm 994 */
 obj_t BgL_res2618z00_4655;
{ /* Llib/hash.scm 994 */
 obj_t BgL_aux3657z00_6550;
BgL_aux3657z00_6550 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3657z00_6550))
{ /* Llib/hash.scm 994 */
BgL_res2618z00_4655 = BgL_aux3657z00_6550; }  else 
{ 
 obj_t BgL_auxz00_12498;
BgL_auxz00_12498 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40221L), BGl_string4050z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3657z00_6550); 
FAILURE(BgL_auxz00_12498,BFALSE,BFALSE);} } 
BgL_tmpz00_12494 = BgL_res2618z00_4655; } 
BgL_test5110z00_12493 = 
(BgL_tmpz00_12494==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5110z00_12493)
{ /* Llib/hash.scm 994 */
 int BgL_tmpz00_12503;
BgL_tmpz00_12503 = 
(int)(0L); 
BgL_arg1861z00_2314 = 
STRUCT_REF(BgL_tablez00_144, BgL_tmpz00_12503); }  else 
{ /* Llib/hash.scm 994 */
BgL_arg1861z00_2314 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } 
{ /* Llib/hash.scm 994 */
 long BgL_za71za7_4656;
{ /* Llib/hash.scm 994 */
 obj_t BgL_tmpz00_12507;
if(
INTEGERP(BgL_arg1861z00_2314))
{ /* Llib/hash.scm 994 */
BgL_tmpz00_12507 = BgL_arg1861z00_2314
; }  else 
{ 
 obj_t BgL_auxz00_12510;
BgL_auxz00_12510 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40243L), BGl_string4050z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1861z00_2314); 
FAILURE(BgL_auxz00_12510,BFALSE,BFALSE);} 
BgL_za71za7_4656 = 
(long)CINT(BgL_tmpz00_12507); } 
BgL_arg1860z00_2313 = 
(BgL_za71za7_4656+1L); } } 
{ /* Llib/hash.scm 994 */
 bool_t BgL_test5113z00_12516;
{ /* Llib/hash.scm 994 */
 obj_t BgL_tmpz00_12517;
{ /* Llib/hash.scm 994 */
 obj_t BgL_res2619z00_4660;
{ /* Llib/hash.scm 994 */
 obj_t BgL_aux3660z00_6553;
BgL_aux3660z00_6553 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3660z00_6553))
{ /* Llib/hash.scm 994 */
BgL_res2619z00_4660 = BgL_aux3660z00_6553; }  else 
{ 
 obj_t BgL_auxz00_12521;
BgL_auxz00_12521 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40188L), BGl_string4050z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3660z00_6553); 
FAILURE(BgL_auxz00_12521,BFALSE,BFALSE);} } 
BgL_tmpz00_12517 = BgL_res2619z00_4660; } 
BgL_test5113z00_12516 = 
(BgL_tmpz00_12517==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5113z00_12516)
{ /* Llib/hash.scm 994 */
 obj_t BgL_auxz00_12528; int BgL_tmpz00_12526;
BgL_auxz00_12528 = 
BINT(BgL_arg1860z00_2313); 
BgL_tmpz00_12526 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_144, BgL_tmpz00_12526, BgL_auxz00_12528); }  else 
{ /* Llib/hash.scm 994 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } } 
{ /* Llib/hash.scm 995 */
 obj_t BgL_arg1864z00_2315;
{ /* Llib/hash.scm 995 */
 obj_t BgL_arg1866z00_2316;
BgL_arg1866z00_2316 = 
MAKE_YOUNG_PAIR(BgL_keyz00_145, BgL_vz00_2312); 
{ /* Llib/hash.scm 995 */
 obj_t BgL_list1867z00_2317;
BgL_list1867z00_2317 = 
MAKE_YOUNG_PAIR(BgL_arg1866z00_2316, BNIL); 
BgL_arg1864z00_2315 = BgL_list1867z00_2317; } } 
{ /* Llib/hash.scm 995 */
 obj_t BgL_vectorz00_4662;
if(
VECTORP(BgL_bucketsz00_2306))
{ /* Llib/hash.scm 995 */
BgL_vectorz00_4662 = BgL_bucketsz00_2306; }  else 
{ 
 obj_t BgL_auxz00_12536;
BgL_auxz00_12536 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40271L), BGl_string4050z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2306); 
FAILURE(BgL_auxz00_12536,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4662,BgL_bucketzd2numzd2_2308,BgL_arg1864z00_2315); } } 
return BgL_vz00_2312;}  else 
{ 
 obj_t BgL_buckz00_2319; long BgL_countz00_2320;
BgL_buckz00_2319 = BgL_bucketz00_2309; 
BgL_countz00_2320 = 0L; 
BgL_zc3z04anonymousza31868ze3z87_2321:
if(
NULLP(BgL_buckz00_2319))
{ /* Llib/hash.scm 1001 */
 obj_t BgL_vz00_2323;
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_146, 2L))
{ /* Llib/hash.scm 1001 */
BgL_vz00_2323 = 
(VA_PROCEDUREP( BgL_procz00_146 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_initz00_148, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_initz00_148) ); }  else 
{ /* Llib/hash.scm 1001 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4046z00zz__hashz00,BgL_procz00_146);} 
{ /* Llib/hash.scm 1002 */
 long BgL_arg1870z00_2324;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_arg1872z00_2325;
{ /* Llib/hash.scm 1002 */
 bool_t BgL_test5118z00_12551;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_tmpz00_12552;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_res2621z00_4667;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_aux3665z00_6559;
BgL_aux3665z00_6559 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3665z00_6559))
{ /* Llib/hash.scm 1002 */
BgL_res2621z00_4667 = BgL_aux3665z00_6559; }  else 
{ 
 obj_t BgL_auxz00_12556;
BgL_auxz00_12556 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40463L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3665z00_6559); 
FAILURE(BgL_auxz00_12556,BFALSE,BFALSE);} } 
BgL_tmpz00_12552 = BgL_res2621z00_4667; } 
BgL_test5118z00_12551 = 
(BgL_tmpz00_12552==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5118z00_12551)
{ /* Llib/hash.scm 1002 */
 int BgL_tmpz00_12561;
BgL_tmpz00_12561 = 
(int)(0L); 
BgL_arg1872z00_2325 = 
STRUCT_REF(BgL_tablez00_144, BgL_tmpz00_12561); }  else 
{ /* Llib/hash.scm 1002 */
BgL_arg1872z00_2325 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } 
{ /* Llib/hash.scm 1002 */
 long BgL_za71za7_4668;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_tmpz00_12565;
if(
INTEGERP(BgL_arg1872z00_2325))
{ /* Llib/hash.scm 1002 */
BgL_tmpz00_12565 = BgL_arg1872z00_2325
; }  else 
{ 
 obj_t BgL_auxz00_12568;
BgL_auxz00_12568 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40485L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1872z00_2325); 
FAILURE(BgL_auxz00_12568,BFALSE,BFALSE);} 
BgL_za71za7_4668 = 
(long)CINT(BgL_tmpz00_12565); } 
BgL_arg1870z00_2324 = 
(BgL_za71za7_4668+1L); } } 
{ /* Llib/hash.scm 1002 */
 bool_t BgL_test5121z00_12574;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_tmpz00_12575;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_res2622z00_4672;
{ /* Llib/hash.scm 1002 */
 obj_t BgL_aux3668z00_6562;
BgL_aux3668z00_6562 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3668z00_6562))
{ /* Llib/hash.scm 1002 */
BgL_res2622z00_4672 = BgL_aux3668z00_6562; }  else 
{ 
 obj_t BgL_auxz00_12579;
BgL_auxz00_12579 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40430L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3668z00_6562); 
FAILURE(BgL_auxz00_12579,BFALSE,BFALSE);} } 
BgL_tmpz00_12575 = BgL_res2622z00_4672; } 
BgL_test5121z00_12574 = 
(BgL_tmpz00_12575==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5121z00_12574)
{ /* Llib/hash.scm 1002 */
 obj_t BgL_auxz00_12586; int BgL_tmpz00_12584;
BgL_auxz00_12586 = 
BINT(BgL_arg1870z00_2324); 
BgL_tmpz00_12584 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_144, BgL_tmpz00_12584, BgL_auxz00_12586); }  else 
{ /* Llib/hash.scm 1002 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } } 
{ /* Llib/hash.scm 1003 */
 obj_t BgL_arg1873z00_2326;
{ /* Llib/hash.scm 1003 */
 obj_t BgL_arg1875z00_2327;
BgL_arg1875z00_2327 = 
MAKE_YOUNG_PAIR(BgL_keyz00_145, BgL_vz00_2323); 
BgL_arg1873z00_2326 = 
MAKE_YOUNG_PAIR(BgL_arg1875z00_2327, BgL_bucketz00_2309); } 
{ /* Llib/hash.scm 1003 */
 obj_t BgL_vectorz00_4673;
if(
VECTORP(BgL_bucketsz00_2306))
{ /* Llib/hash.scm 1003 */
BgL_vectorz00_4673 = BgL_bucketsz00_2306; }  else 
{ 
 obj_t BgL_auxz00_12594;
BgL_auxz00_12594 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40513L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2306); 
FAILURE(BgL_auxz00_12594,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4673,BgL_bucketzd2numzd2_2308,BgL_arg1873z00_2326); } } 
{ /* Llib/hash.scm 1004 */
 bool_t BgL_test5124z00_12599;
{ /* Llib/hash.scm 1004 */
 long BgL_n2z00_4676;
{ /* Llib/hash.scm 1004 */
 obj_t BgL_tmpz00_12600;
if(
INTEGERP(BgL_maxzd2bucketzd2lenz00_2310))
{ /* Llib/hash.scm 1004 */
BgL_tmpz00_12600 = BgL_maxzd2bucketzd2lenz00_2310
; }  else 
{ 
 obj_t BgL_auxz00_12603;
BgL_auxz00_12603 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40583L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2bucketzd2lenz00_2310); 
FAILURE(BgL_auxz00_12603,BFALSE,BFALSE);} 
BgL_n2z00_4676 = 
(long)CINT(BgL_tmpz00_12600); } 
BgL_test5124z00_12599 = 
(BgL_countz00_2320>BgL_n2z00_4676); } 
if(BgL_test5124z00_12599)
{ /* Llib/hash.scm 1004 */
BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(BgL_tablez00_144); }  else 
{ /* Llib/hash.scm 1004 */BFALSE; } } 
return BgL_vz00_2323;}  else 
{ /* Llib/hash.scm 1007 */
 bool_t BgL_test5126z00_12610;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_arg1883z00_2336;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_pairz00_4677;
if(
PAIRP(BgL_buckz00_2319))
{ /* Llib/hash.scm 1007 */
BgL_pairz00_4677 = BgL_buckz00_2319; }  else 
{ 
 obj_t BgL_auxz00_12613;
BgL_auxz00_12613 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40684L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2319); 
FAILURE(BgL_auxz00_12613,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1007 */
 obj_t BgL_pairz00_4680;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_aux3675z00_6569;
BgL_aux3675z00_6569 = 
CAR(BgL_pairz00_4677); 
if(
PAIRP(BgL_aux3675z00_6569))
{ /* Llib/hash.scm 1007 */
BgL_pairz00_4680 = BgL_aux3675z00_6569; }  else 
{ 
 obj_t BgL_auxz00_12620;
BgL_auxz00_12620 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40678L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3675z00_6569); 
FAILURE(BgL_auxz00_12620,BFALSE,BFALSE);} } 
BgL_arg1883z00_2336 = 
CAR(BgL_pairz00_4680); } } 
{ /* Llib/hash.scm 1007 */
 obj_t BgL_eqtz00_4681;
{ /* Llib/hash.scm 1007 */
 bool_t BgL_test5129z00_12625;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_tmpz00_12626;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_res2623z00_4688;
{ /* Llib/hash.scm 1007 */
 obj_t BgL_aux3677z00_6571;
BgL_aux3677z00_6571 = 
STRUCT_KEY(BgL_tablez00_144); 
if(
SYMBOLP(BgL_aux3677z00_6571))
{ /* Llib/hash.scm 1007 */
BgL_res2623z00_4688 = BgL_aux3677z00_6571; }  else 
{ 
 obj_t BgL_auxz00_12630;
BgL_auxz00_12630 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40654L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3677z00_6571); 
FAILURE(BgL_auxz00_12630,BFALSE,BFALSE);} } 
BgL_tmpz00_12626 = BgL_res2623z00_4688; } 
BgL_test5129z00_12625 = 
(BgL_tmpz00_12626==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5129z00_12625)
{ /* Llib/hash.scm 1007 */
 int BgL_tmpz00_12635;
BgL_tmpz00_12635 = 
(int)(3L); 
BgL_eqtz00_4681 = 
STRUCT_REF(BgL_tablez00_144, BgL_tmpz00_12635); }  else 
{ /* Llib/hash.scm 1007 */
BgL_eqtz00_4681 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_144); } } 
if(
PROCEDUREP(BgL_eqtz00_4681))
{ /* Llib/hash.scm 1007 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_4681, 2L))
{ /* Llib/hash.scm 1007 */
BgL_test5126z00_12610 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_4681 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_4681))(BgL_eqtz00_4681, BgL_arg1883z00_2336, BgL_keyz00_145, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_4681))(BgL_eqtz00_4681, BgL_arg1883z00_2336, BgL_keyz00_145) ))
; }  else 
{ /* Llib/hash.scm 1007 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4052z00zz__hashz00,BgL_eqtz00_4681);} }  else 
{ /* Llib/hash.scm 1007 */
if(
(BgL_arg1883z00_2336==BgL_keyz00_145))
{ /* Llib/hash.scm 1007 */
BgL_test5126z00_12610 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1007 */
if(
STRINGP(BgL_arg1883z00_2336))
{ /* Llib/hash.scm 1007 */
if(
STRINGP(BgL_keyz00_145))
{ /* Llib/hash.scm 1007 */
 long BgL_l1z00_4691;
BgL_l1z00_4691 = 
STRING_LENGTH(BgL_arg1883z00_2336); 
if(
(BgL_l1z00_4691==
STRING_LENGTH(BgL_keyz00_145)))
{ /* Llib/hash.scm 1007 */
 int BgL_arg2110z00_4694;
{ /* Llib/hash.scm 1007 */
 char * BgL_auxz00_12662; char * BgL_tmpz00_12660;
BgL_auxz00_12662 = 
BSTRING_TO_STRING(BgL_keyz00_145); 
BgL_tmpz00_12660 = 
BSTRING_TO_STRING(BgL_arg1883z00_2336); 
BgL_arg2110z00_4694 = 
memcmp(BgL_tmpz00_12660, BgL_auxz00_12662, BgL_l1z00_4691); } 
BgL_test5126z00_12610 = 
(
(long)(BgL_arg2110z00_4694)==0L); }  else 
{ /* Llib/hash.scm 1007 */
BgL_test5126z00_12610 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1007 */
BgL_test5126z00_12610 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1007 */
BgL_test5126z00_12610 = ((bool_t)0)
; } } } } } 
if(BgL_test5126z00_12610)
{ /* Llib/hash.scm 1008 */
 obj_t BgL_resz00_2331;
{ /* Llib/hash.scm 1008 */
 obj_t BgL_arg1880z00_2333;
{ /* Llib/hash.scm 1008 */
 obj_t BgL_pairz00_4700;
if(
PAIRP(BgL_buckz00_2319))
{ /* Llib/hash.scm 1008 */
BgL_pairz00_4700 = BgL_buckz00_2319; }  else 
{ 
 obj_t BgL_auxz00_12669;
BgL_auxz00_12669 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40725L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2319); 
FAILURE(BgL_auxz00_12669,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1008 */
 obj_t BgL_pairz00_4703;
{ /* Llib/hash.scm 1008 */
 obj_t BgL_aux3682z00_6577;
BgL_aux3682z00_6577 = 
CAR(BgL_pairz00_4700); 
if(
PAIRP(BgL_aux3682z00_6577))
{ /* Llib/hash.scm 1008 */
BgL_pairz00_4703 = BgL_aux3682z00_6577; }  else 
{ 
 obj_t BgL_auxz00_12676;
BgL_auxz00_12676 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40719L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3682z00_6577); 
FAILURE(BgL_auxz00_12676,BFALSE,BFALSE);} } 
BgL_arg1880z00_2333 = 
CDR(BgL_pairz00_4703); } } 
if(
PROCEDURE_CORRECT_ARITYP(BgL_procz00_146, 2L))
{ /* Llib/hash.scm 1008 */
BgL_resz00_2331 = 
(VA_PROCEDUREP( BgL_procz00_146 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_arg1880z00_2333, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_procz00_146))(BgL_procz00_146, BgL_objz00_147, BgL_arg1880z00_2333) ); }  else 
{ /* Llib/hash.scm 1008 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4055z00zz__hashz00,BgL_procz00_146);} } 
{ /* Llib/hash.scm 1009 */
 obj_t BgL_arg1879z00_2332;
{ /* Llib/hash.scm 1009 */
 obj_t BgL_pairz00_4704;
if(
PAIRP(BgL_buckz00_2319))
{ /* Llib/hash.scm 1009 */
BgL_pairz00_4704 = BgL_buckz00_2319; }  else 
{ 
 obj_t BgL_auxz00_12691;
BgL_auxz00_12691 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40755L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2319); 
FAILURE(BgL_auxz00_12691,BFALSE,BFALSE);} 
BgL_arg1879z00_2332 = 
CAR(BgL_pairz00_4704); } 
{ /* Llib/hash.scm 1009 */
 obj_t BgL_pairz00_4705;
if(
PAIRP(BgL_arg1879z00_2332))
{ /* Llib/hash.scm 1009 */
BgL_pairz00_4705 = BgL_arg1879z00_2332; }  else 
{ 
 obj_t BgL_auxz00_12698;
BgL_auxz00_12698 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40759L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_arg1879z00_2332); 
FAILURE(BgL_auxz00_12698,BFALSE,BFALSE);} 
SET_CDR(BgL_pairz00_4705, BgL_resz00_2331); } } 
return BgL_resz00_2331;}  else 
{ /* Llib/hash.scm 1012 */
 obj_t BgL_arg1881z00_2334; long BgL_arg1882z00_2335;
{ /* Llib/hash.scm 1012 */
 obj_t BgL_pairz00_4706;
if(
PAIRP(BgL_buckz00_2319))
{ /* Llib/hash.scm 1012 */
BgL_pairz00_4706 = BgL_buckz00_2319; }  else 
{ 
 obj_t BgL_auxz00_12705;
BgL_auxz00_12705 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(40800L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_buckz00_2319); 
FAILURE(BgL_auxz00_12705,BFALSE,BFALSE);} 
BgL_arg1881z00_2334 = 
CDR(BgL_pairz00_4706); } 
BgL_arg1882z00_2335 = 
(BgL_countz00_2320+1L); 
{ 
 long BgL_countz00_12712; obj_t BgL_buckz00_12711;
BgL_buckz00_12711 = BgL_arg1881z00_2334; 
BgL_countz00_12712 = BgL_arg1882z00_2335; 
BgL_countz00_2320 = BgL_countz00_12712; 
BgL_buckz00_2319 = BgL_buckz00_12711; 
goto BgL_zc3z04anonymousza31868ze3z87_2321;} } } } } } } } } } } 

}



/* hashtable-remove! */
BGL_EXPORTED_DEF bool_t BGl_hashtablezd2removez12zc0zz__hashz00(obj_t BgL_tablez00_149, obj_t BgL_keyz00_150)
{
{ /* Llib/hash.scm 1017 */
if(
BGl_hashtablezd2openzd2stringzf3zf3zz__hashz00(BgL_tablez00_149))
{ /* Llib/hash.scm 1020 */
 obj_t BgL_tmpz00_12715;
{ /* Llib/hash.scm 1020 */
 obj_t BgL_auxz00_12716;
if(
STRINGP(BgL_keyz00_150))
{ /* Llib/hash.scm 1020 */
BgL_auxz00_12716 = BgL_keyz00_150
; }  else 
{ 
 obj_t BgL_auxz00_12719;
BgL_auxz00_12719 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41195L), BGl_string4058z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_150); 
FAILURE(BgL_auxz00_12719,BFALSE,BFALSE);} 
BgL_tmpz00_12715 = 
BGl_openzd2stringzd2hashtablezd2removez12zc0zz__hashz00(BgL_tablez00_149, BgL_auxz00_12716); } 
return 
CBOOL(BgL_tmpz00_12715);}  else 
{ /* Llib/hash.scm 1019 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_149))
{ /* Llib/hash.scm 1021 */
return 
CBOOL(
BGl_weakzd2hashtablezd2removez12z12zz__weakhashz00(BgL_tablez00_149, BgL_keyz00_150));}  else 
{ /* Llib/hash.scm 1021 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2removez12z12zz__hashz00(BgL_tablez00_149, BgL_keyz00_150);} } } 

}



/* &hashtable-remove! */
obj_t BGl_z62hashtablezd2removez12za2zz__hashz00(obj_t BgL_envz00_5509, obj_t BgL_tablez00_5510, obj_t BgL_keyz00_5511)
{
{ /* Llib/hash.scm 1017 */
{ /* Llib/hash.scm 1019 */
 bool_t BgL_tmpz00_12730;
{ /* Llib/hash.scm 1019 */
 obj_t BgL_auxz00_12731;
if(
STRUCTP(BgL_tablez00_5510))
{ /* Llib/hash.scm 1019 */
BgL_auxz00_12731 = BgL_tablez00_5510
; }  else 
{ 
 obj_t BgL_auxz00_12734;
BgL_auxz00_12734 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41119L), BGl_string4059z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5510); 
FAILURE(BgL_auxz00_12734,BFALSE,BFALSE);} 
BgL_tmpz00_12730 = 
BGl_hashtablezd2removez12zc0zz__hashz00(BgL_auxz00_12731, BgL_keyz00_5511); } 
return 
BBOOL(BgL_tmpz00_12730);} } 

}



/* open-string-hashtable-remove! */
BGL_EXPORTED_DEF obj_t BGl_openzd2stringzd2hashtablezd2removez12zc0zz__hashz00(obj_t BgL_tz00_151, obj_t BgL_keyz00_152)
{
{ /* Llib/hash.scm 1029 */
{ /* Llib/hash.scm 1030 */
 obj_t BgL_siza7eza7_2341;
{ /* Llib/hash.scm 1030 */
 bool_t BgL_test5147z00_12740;
{ /* Llib/hash.scm 1030 */
 obj_t BgL_tmpz00_12741;
{ /* Llib/hash.scm 1030 */
 obj_t BgL_res2624z00_4713;
{ /* Llib/hash.scm 1030 */
 obj_t BgL_aux3695z00_6591;
BgL_aux3695z00_6591 = 
STRUCT_KEY(BgL_tz00_151); 
if(
SYMBOLP(BgL_aux3695z00_6591))
{ /* Llib/hash.scm 1030 */
BgL_res2624z00_4713 = BgL_aux3695z00_6591; }  else 
{ 
 obj_t BgL_auxz00_12745;
BgL_auxz00_12745 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41618L), BGl_string4060z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3695z00_6591); 
FAILURE(BgL_auxz00_12745,BFALSE,BFALSE);} } 
BgL_tmpz00_12741 = BgL_res2624z00_4713; } 
BgL_test5147z00_12740 = 
(BgL_tmpz00_12741==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5147z00_12740)
{ /* Llib/hash.scm 1030 */
 int BgL_tmpz00_12750;
BgL_tmpz00_12750 = 
(int)(1L); 
BgL_siza7eza7_2341 = 
STRUCT_REF(BgL_tz00_151, BgL_tmpz00_12750); }  else 
{ /* Llib/hash.scm 1030 */
BgL_siza7eza7_2341 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_151); } } 
{ /* Llib/hash.scm 1030 */
 obj_t BgL_bucketsz00_2342;
{ /* Llib/hash.scm 1031 */
 bool_t BgL_test5149z00_12754;
{ /* Llib/hash.scm 1031 */
 obj_t BgL_tmpz00_12755;
{ /* Llib/hash.scm 1031 */
 obj_t BgL_res2625z00_4717;
{ /* Llib/hash.scm 1031 */
 obj_t BgL_aux3697z00_6593;
BgL_aux3697z00_6593 = 
STRUCT_KEY(BgL_tz00_151); 
if(
SYMBOLP(BgL_aux3697z00_6593))
{ /* Llib/hash.scm 1031 */
BgL_res2625z00_4717 = BgL_aux3697z00_6593; }  else 
{ 
 obj_t BgL_auxz00_12759;
BgL_auxz00_12759 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41661L), BGl_string4060z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3697z00_6593); 
FAILURE(BgL_auxz00_12759,BFALSE,BFALSE);} } 
BgL_tmpz00_12755 = BgL_res2625z00_4717; } 
BgL_test5149z00_12754 = 
(BgL_tmpz00_12755==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5149z00_12754)
{ /* Llib/hash.scm 1031 */
 int BgL_tmpz00_12764;
BgL_tmpz00_12764 = 
(int)(2L); 
BgL_bucketsz00_2342 = 
STRUCT_REF(BgL_tz00_151, BgL_tmpz00_12764); }  else 
{ /* Llib/hash.scm 1031 */
BgL_bucketsz00_2342 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_151); } } 
{ /* Llib/hash.scm 1031 */
 long BgL_hashz00_2343;
{ /* Llib/hash.scm 1032 */
 long BgL_arg1900z00_2363;
BgL_arg1900z00_2363 = 
STRING_LENGTH(BgL_keyz00_152); 
BgL_hashz00_2343 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_152), 
(int)(0L), 
(int)(BgL_arg1900z00_2363)); } 
{ /* Llib/hash.scm 1032 */

{ /* Llib/hash.scm 1034 */
 long BgL_g1074z00_2344;
{ /* Llib/hash.scm 1034 */
 long BgL_n1z00_4719; long BgL_n2z00_4720;
BgL_n1z00_4719 = BgL_hashz00_2343; 
{ /* Llib/hash.scm 1034 */
 obj_t BgL_tmpz00_12773;
if(
INTEGERP(BgL_siza7eza7_2341))
{ /* Llib/hash.scm 1034 */
BgL_tmpz00_12773 = BgL_siza7eza7_2341
; }  else 
{ 
 obj_t BgL_auxz00_12776;
BgL_auxz00_12776 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41799L), BGl_string4060z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2341); 
FAILURE(BgL_auxz00_12776,BFALSE,BFALSE);} 
BgL_n2z00_4720 = 
(long)CINT(BgL_tmpz00_12773); } 
{ /* Llib/hash.scm 1034 */
 bool_t BgL_test5152z00_12781;
{ /* Llib/hash.scm 1034 */
 long BgL_arg2216z00_4722;
BgL_arg2216z00_4722 = 
(((BgL_n1z00_4719) | (BgL_n2z00_4720)) & -2147483648); 
BgL_test5152z00_12781 = 
(BgL_arg2216z00_4722==0L); } 
if(BgL_test5152z00_12781)
{ /* Llib/hash.scm 1034 */
 int32_t BgL_arg2213z00_4723;
{ /* Llib/hash.scm 1034 */
 int32_t BgL_arg2214z00_4724; int32_t BgL_arg2215z00_4725;
BgL_arg2214z00_4724 = 
(int32_t)(BgL_n1z00_4719); 
BgL_arg2215z00_4725 = 
(int32_t)(BgL_n2z00_4720); 
BgL_arg2213z00_4723 = 
(BgL_arg2214z00_4724%BgL_arg2215z00_4725); } 
{ /* Llib/hash.scm 1034 */
 long BgL_arg2320z00_4730;
BgL_arg2320z00_4730 = 
(long)(BgL_arg2213z00_4723); 
BgL_g1074z00_2344 = 
(long)(BgL_arg2320z00_4730); } }  else 
{ /* Llib/hash.scm 1034 */
BgL_g1074z00_2344 = 
(BgL_n1z00_4719%BgL_n2z00_4720); } } } 
{ 
 long BgL_offz00_2346; long BgL_iz00_2347;
BgL_offz00_2346 = BgL_g1074z00_2344; 
BgL_iz00_2347 = 1L; 
BgL_zc3z04anonymousza31887ze3z87_2348:
{ /* Llib/hash.scm 1036 */
 long BgL_off3z00_2349;
BgL_off3z00_2349 = 
(BgL_offz00_2346*3L); 
{ /* Llib/hash.scm 1037 */
 bool_t BgL_test5153z00_12791;
{ /* Llib/hash.scm 1037 */
 obj_t BgL_vectorz00_4733;
if(
VECTORP(BgL_bucketsz00_2342))
{ /* Llib/hash.scm 1037 */
BgL_vectorz00_4733 = BgL_bucketsz00_2342; }  else 
{ 
 obj_t BgL_auxz00_12794;
BgL_auxz00_12794 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41867L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2342); 
FAILURE(BgL_auxz00_12794,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1037 */
 bool_t BgL_test5155z00_12798;
{ /* Llib/hash.scm 1037 */
 long BgL_tmpz00_12799;
BgL_tmpz00_12799 = 
VECTOR_LENGTH(BgL_vectorz00_4733); 
BgL_test5155z00_12798 = 
BOUND_CHECK(BgL_off3z00_2349, BgL_tmpz00_12799); } 
if(BgL_test5155z00_12798)
{ /* Llib/hash.scm 1037 */
BgL_test5153z00_12791 = 
CBOOL(
VECTOR_REF(BgL_vectorz00_4733,BgL_off3z00_2349))
; }  else 
{ 
 obj_t BgL_auxz00_12804;
BgL_auxz00_12804 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41855L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4733, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4733)), 
(int)(BgL_off3z00_2349)); 
FAILURE(BgL_auxz00_12804,BFALSE,BFALSE);} } } 
if(BgL_test5153z00_12791)
{ /* Llib/hash.scm 1038 */
 bool_t BgL_test5156z00_12811;
{ /* Llib/hash.scm 1038 */
 obj_t BgL_arg1899z00_2361;
{ /* Llib/hash.scm 1038 */
 obj_t BgL_vectorz00_4735;
if(
VECTORP(BgL_bucketsz00_2342))
{ /* Llib/hash.scm 1038 */
BgL_vectorz00_4735 = BgL_bucketsz00_2342; }  else 
{ 
 obj_t BgL_auxz00_12814;
BgL_auxz00_12814 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41915L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2342); 
FAILURE(BgL_auxz00_12814,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1038 */
 bool_t BgL_test5158z00_12818;
{ /* Llib/hash.scm 1038 */
 long BgL_tmpz00_12819;
BgL_tmpz00_12819 = 
VECTOR_LENGTH(BgL_vectorz00_4735); 
BgL_test5158z00_12818 = 
BOUND_CHECK(BgL_off3z00_2349, BgL_tmpz00_12819); } 
if(BgL_test5158z00_12818)
{ /* Llib/hash.scm 1038 */
BgL_arg1899z00_2361 = 
VECTOR_REF(BgL_vectorz00_4735,BgL_off3z00_2349); }  else 
{ 
 obj_t BgL_auxz00_12823;
BgL_auxz00_12823 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41903L), BGl_string3872z00zz__hashz00, BgL_vectorz00_4735, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4735)), 
(int)(BgL_off3z00_2349)); 
FAILURE(BgL_auxz00_12823,BFALSE,BFALSE);} } } 
{ /* Llib/hash.scm 1038 */
 obj_t BgL_string1z00_4737;
if(
STRINGP(BgL_arg1899z00_2361))
{ /* Llib/hash.scm 1038 */
BgL_string1z00_4737 = BgL_arg1899z00_2361; }  else 
{ 
 obj_t BgL_auxz00_12832;
BgL_auxz00_12832 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41927L), BGl_string3922z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_arg1899z00_2361); 
FAILURE(BgL_auxz00_12832,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1038 */
 long BgL_l1z00_4739;
BgL_l1z00_4739 = 
STRING_LENGTH(BgL_string1z00_4737); 
if(
(BgL_l1z00_4739==
STRING_LENGTH(BgL_keyz00_152)))
{ /* Llib/hash.scm 1038 */
 int BgL_arg2110z00_4742;
{ /* Llib/hash.scm 1038 */
 char * BgL_auxz00_12842; char * BgL_tmpz00_12840;
BgL_auxz00_12842 = 
BSTRING_TO_STRING(BgL_keyz00_152); 
BgL_tmpz00_12840 = 
BSTRING_TO_STRING(BgL_string1z00_4737); 
BgL_arg2110z00_4742 = 
memcmp(BgL_tmpz00_12840, BgL_auxz00_12842, BgL_l1z00_4739); } 
BgL_test5156z00_12811 = 
(
(long)(BgL_arg2110z00_4742)==0L); }  else 
{ /* Llib/hash.scm 1038 */
BgL_test5156z00_12811 = ((bool_t)0)
; } } } } 
if(BgL_test5156z00_12811)
{ /* Llib/hash.scm 1038 */
{ /* Llib/hash.scm 1040 */
 long BgL_arg1892z00_2353;
BgL_arg1892z00_2353 = 
(BgL_off3z00_2349+1L); 
{ /* Llib/hash.scm 1040 */
 obj_t BgL_vectorz00_4749;
if(
VECTORP(BgL_bucketsz00_2342))
{ /* Llib/hash.scm 1040 */
BgL_vectorz00_4749 = BgL_bucketsz00_2342; }  else 
{ 
 obj_t BgL_auxz00_12850;
BgL_auxz00_12850 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41967L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2342); 
FAILURE(BgL_auxz00_12850,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1040 */
 bool_t BgL_test5162z00_12854;
{ /* Llib/hash.scm 1040 */
 long BgL_tmpz00_12855;
BgL_tmpz00_12855 = 
VECTOR_LENGTH(BgL_vectorz00_4749); 
BgL_test5162z00_12854 = 
BOUND_CHECK(BgL_arg1892z00_2353, BgL_tmpz00_12855); } 
if(BgL_test5162z00_12854)
{ /* Llib/hash.scm 1040 */
VECTOR_SET(BgL_vectorz00_4749,BgL_arg1892z00_2353,BFALSE); }  else 
{ 
 obj_t BgL_auxz00_12859;
BgL_auxz00_12859 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41954L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4749, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4749)), 
(int)(BgL_arg1892z00_2353)); 
FAILURE(BgL_auxz00_12859,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 1041 */
 long BgL_arg1893z00_2354;
BgL_arg1893z00_2354 = 
(BgL_off3z00_2349+2L); 
{ /* Llib/hash.scm 1041 */
 obj_t BgL_vectorz00_4752;
if(
VECTORP(BgL_bucketsz00_2342))
{ /* Llib/hash.scm 1041 */
BgL_vectorz00_4752 = BgL_bucketsz00_2342; }  else 
{ 
 obj_t BgL_auxz00_12869;
BgL_auxz00_12869 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42013L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2342); 
FAILURE(BgL_auxz00_12869,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1041 */
 bool_t BgL_test5164z00_12873;
{ /* Llib/hash.scm 1041 */
 long BgL_tmpz00_12874;
BgL_tmpz00_12874 = 
VECTOR_LENGTH(BgL_vectorz00_4752); 
BgL_test5164z00_12873 = 
BOUND_CHECK(BgL_arg1893z00_2354, BgL_tmpz00_12874); } 
if(BgL_test5164z00_12873)
{ /* Llib/hash.scm 1041 */
VECTOR_SET(BgL_vectorz00_4752,BgL_arg1893z00_2354,BFALSE); }  else 
{ 
 obj_t BgL_auxz00_12878;
BgL_auxz00_12878 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42000L), BGl_string3924z00zz__hashz00, BgL_vectorz00_4752, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_4752)), 
(int)(BgL_arg1893z00_2354)); 
FAILURE(BgL_auxz00_12878,BFALSE,BFALSE);} } } } 
{ /* Llib/hash.scm 1303 */
 long BgL_arg2042z00_4754;
{ /* Llib/hash.scm 1303 */
 obj_t BgL_arg2043z00_4755;
{ /* Llib/hash.scm 1272 */
 bool_t BgL_test5165z00_12885;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_tmpz00_12886;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_res2626z00_4759;
{ /* Llib/hash.scm 1272 */
 obj_t BgL_aux3710z00_6606;
BgL_aux3710z00_6606 = 
STRUCT_KEY(BgL_tz00_151); 
if(
SYMBOLP(BgL_aux3710z00_6606))
{ /* Llib/hash.scm 1272 */
BgL_res2626z00_4759 = BgL_aux3710z00_6606; }  else 
{ 
 obj_t BgL_auxz00_12890;
BgL_auxz00_12890 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50571L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3710z00_6606); 
FAILURE(BgL_auxz00_12890,BFALSE,BFALSE);} } 
BgL_tmpz00_12886 = BgL_res2626z00_4759; } 
BgL_test5165z00_12885 = 
(BgL_tmpz00_12886==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5165z00_12885)
{ /* Llib/hash.scm 1272 */
 int BgL_tmpz00_12895;
BgL_tmpz00_12895 = 
(int)(6L); 
BgL_arg2043z00_4755 = 
STRUCT_REF(BgL_tz00_151, BgL_tmpz00_12895); }  else 
{ /* Llib/hash.scm 1272 */
BgL_arg2043z00_4755 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_151); } } 
{ /* Llib/hash.scm 1303 */
 long BgL_za71za7_4760;
{ /* Llib/hash.scm 1303 */
 obj_t BgL_tmpz00_12899;
if(
INTEGERP(BgL_arg2043z00_4755))
{ /* Llib/hash.scm 1303 */
BgL_tmpz00_12899 = BgL_arg2043z00_4755
; }  else 
{ 
 obj_t BgL_auxz00_12902;
BgL_auxz00_12902 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51912L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2043z00_4755); 
FAILURE(BgL_auxz00_12902,BFALSE,BFALSE);} 
BgL_za71za7_4760 = 
(long)CINT(BgL_tmpz00_12899); } 
BgL_arg2042z00_4754 = 
(BgL_za71za7_4760+1L); } } 
{ /* Llib/hash.scm 1273 */
 bool_t BgL_test5168z00_12908;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_tmpz00_12909;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_res2627z00_4764;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_aux3713z00_6609;
BgL_aux3713z00_6609 = 
STRUCT_KEY(BgL_tz00_151); 
if(
SYMBOLP(BgL_aux3713z00_6609))
{ /* Llib/hash.scm 1273 */
BgL_res2627z00_4764 = BgL_aux3713z00_6609; }  else 
{ 
 obj_t BgL_auxz00_12913;
BgL_auxz00_12913 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50639L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3713z00_6609); 
FAILURE(BgL_auxz00_12913,BFALSE,BFALSE);} } 
BgL_tmpz00_12909 = BgL_res2627z00_4764; } 
BgL_test5168z00_12908 = 
(BgL_tmpz00_12909==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5168z00_12908)
{ /* Llib/hash.scm 1273 */
 obj_t BgL_auxz00_12920; int BgL_tmpz00_12918;
BgL_auxz00_12920 = 
BINT(BgL_arg2042z00_4754); 
BgL_tmpz00_12918 = 
(int)(6L); 
return 
STRUCT_SET(BgL_tz00_151, BgL_tmpz00_12918, BgL_auxz00_12920);}  else 
{ /* Llib/hash.scm 1273 */
return 
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_151);} } } }  else 
{ /* Llib/hash.scm 1043 */
 long BgL_noffz00_2355;
BgL_noffz00_2355 = 
(BgL_offz00_2346+
(BgL_iz00_2347*BgL_iz00_2347)); 
{ /* Llib/hash.scm 1044 */
 bool_t BgL_test5170z00_12926;
{ /* Llib/hash.scm 1044 */
 long BgL_n2z00_4770;
{ /* Llib/hash.scm 1044 */
 obj_t BgL_tmpz00_12927;
if(
INTEGERP(BgL_siza7eza7_2341))
{ /* Llib/hash.scm 1044 */
BgL_tmpz00_12927 = BgL_siza7eza7_2341
; }  else 
{ 
 obj_t BgL_auxz00_12930;
BgL_auxz00_12930 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42151L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2341); 
FAILURE(BgL_auxz00_12930,BFALSE,BFALSE);} 
BgL_n2z00_4770 = 
(long)CINT(BgL_tmpz00_12927); } 
BgL_test5170z00_12926 = 
(BgL_noffz00_2355>=BgL_n2z00_4770); } 
if(BgL_test5170z00_12926)
{ /* Llib/hash.scm 1045 */
 long BgL_arg1895z00_2357; long BgL_arg1896z00_2358;
{ /* Llib/hash.scm 1045 */
 long BgL_n1z00_4771; long BgL_n2z00_4772;
BgL_n1z00_4771 = BgL_noffz00_2355; 
{ /* Llib/hash.scm 1045 */
 obj_t BgL_tmpz00_12936;
if(
INTEGERP(BgL_siza7eza7_2341))
{ /* Llib/hash.scm 1045 */
BgL_tmpz00_12936 = BgL_siza7eza7_2341
; }  else 
{ 
 obj_t BgL_auxz00_12939;
BgL_auxz00_12939 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42186L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_siza7eza7_2341); 
FAILURE(BgL_auxz00_12939,BFALSE,BFALSE);} 
BgL_n2z00_4772 = 
(long)CINT(BgL_tmpz00_12936); } 
{ /* Llib/hash.scm 1045 */
 bool_t BgL_test5173z00_12944;
{ /* Llib/hash.scm 1045 */
 long BgL_arg2216z00_4774;
BgL_arg2216z00_4774 = 
(((BgL_n1z00_4771) | (BgL_n2z00_4772)) & -2147483648); 
BgL_test5173z00_12944 = 
(BgL_arg2216z00_4774==0L); } 
if(BgL_test5173z00_12944)
{ /* Llib/hash.scm 1045 */
 int32_t BgL_arg2213z00_4775;
{ /* Llib/hash.scm 1045 */
 int32_t BgL_arg2214z00_4776; int32_t BgL_arg2215z00_4777;
BgL_arg2214z00_4776 = 
(int32_t)(BgL_n1z00_4771); 
BgL_arg2215z00_4777 = 
(int32_t)(BgL_n2z00_4772); 
BgL_arg2213z00_4775 = 
(BgL_arg2214z00_4776%BgL_arg2215z00_4777); } 
{ /* Llib/hash.scm 1045 */
 long BgL_arg2320z00_4782;
BgL_arg2320z00_4782 = 
(long)(BgL_arg2213z00_4775); 
BgL_arg1895z00_2357 = 
(long)(BgL_arg2320z00_4782); } }  else 
{ /* Llib/hash.scm 1045 */
BgL_arg1895z00_2357 = 
(BgL_n1z00_4771%BgL_n2z00_4772); } } } 
BgL_arg1896z00_2358 = 
(BgL_iz00_2347+1L); 
{ 
 long BgL_iz00_12955; long BgL_offz00_12954;
BgL_offz00_12954 = BgL_arg1895z00_2357; 
BgL_iz00_12955 = BgL_arg1896z00_2358; 
BgL_iz00_2347 = BgL_iz00_12955; 
BgL_offz00_2346 = BgL_offz00_12954; 
goto BgL_zc3z04anonymousza31887ze3z87_2348;} }  else 
{ 
 long BgL_iz00_12957; long BgL_offz00_12956;
BgL_offz00_12956 = BgL_noffz00_2355; 
BgL_iz00_12957 = 
(BgL_iz00_2347+1L); 
BgL_iz00_2347 = BgL_iz00_12957; 
BgL_offz00_2346 = BgL_offz00_12956; 
goto BgL_zc3z04anonymousza31887ze3z87_2348;} } } }  else 
{ /* Llib/hash.scm 1037 */
return BFALSE;} } } } } } } } } } 

}



/* &open-string-hashtable-remove! */
obj_t BGl_z62openzd2stringzd2hashtablezd2removez12za2zz__hashz00(obj_t BgL_envz00_5512, obj_t BgL_tz00_5513, obj_t BgL_keyz00_5514)
{
{ /* Llib/hash.scm 1029 */
{ /* Llib/hash.scm 1030 */
 obj_t BgL_auxz00_12966; obj_t BgL_auxz00_12959;
if(
STRINGP(BgL_keyz00_5514))
{ /* Llib/hash.scm 1030 */
BgL_auxz00_12966 = BgL_keyz00_5514
; }  else 
{ 
 obj_t BgL_auxz00_12969;
BgL_auxz00_12969 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41605L), BGl_string4061z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_keyz00_5514); 
FAILURE(BgL_auxz00_12969,BFALSE,BFALSE);} 
if(
STRUCTP(BgL_tz00_5513))
{ /* Llib/hash.scm 1030 */
BgL_auxz00_12959 = BgL_tz00_5513
; }  else 
{ 
 obj_t BgL_auxz00_12962;
BgL_auxz00_12962 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(41605L), BGl_string4061z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tz00_5513); 
FAILURE(BgL_auxz00_12962,BFALSE,BFALSE);} 
return 
BGl_openzd2stringzd2hashtablezd2removez12zc0zz__hashz00(BgL_auxz00_12959, BgL_auxz00_12966);} } 

}



/* plain-hashtable-remove! */
bool_t BGl_plainzd2hashtablezd2removez12z12zz__hashz00(obj_t BgL_tablez00_153, obj_t BgL_keyz00_154)
{
{ /* Llib/hash.scm 1051 */
{ /* Llib/hash.scm 1052 */
 obj_t BgL_bucketsz00_2364;
{ /* Llib/hash.scm 1052 */
 bool_t BgL_test5176z00_12974;
{ /* Llib/hash.scm 1052 */
 obj_t BgL_tmpz00_12975;
{ /* Llib/hash.scm 1052 */
 obj_t BgL_res2628z00_4789;
{ /* Llib/hash.scm 1052 */
 obj_t BgL_aux3721z00_6617;
BgL_aux3721z00_6617 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3721z00_6617))
{ /* Llib/hash.scm 1052 */
BgL_res2628z00_4789 = BgL_aux3721z00_6617; }  else 
{ 
 obj_t BgL_auxz00_12979;
BgL_auxz00_12979 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42537L), BGl_string4062z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3721z00_6617); 
FAILURE(BgL_auxz00_12979,BFALSE,BFALSE);} } 
BgL_tmpz00_12975 = BgL_res2628z00_4789; } 
BgL_test5176z00_12974 = 
(BgL_tmpz00_12975==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5176z00_12974)
{ /* Llib/hash.scm 1052 */
 int BgL_tmpz00_12984;
BgL_tmpz00_12984 = 
(int)(2L); 
BgL_bucketsz00_2364 = 
STRUCT_REF(BgL_tablez00_153, BgL_tmpz00_12984); }  else 
{ /* Llib/hash.scm 1052 */
BgL_bucketsz00_2364 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } 
{ /* Llib/hash.scm 1052 */
 long BgL_bucketzd2lenzd2_2365;
{ /* Llib/hash.scm 1053 */
 obj_t BgL_vectorz00_4790;
if(
VECTORP(BgL_bucketsz00_2364))
{ /* Llib/hash.scm 1053 */
BgL_vectorz00_4790 = BgL_bucketsz00_2364; }  else 
{ 
 obj_t BgL_auxz00_12990;
BgL_auxz00_12990 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42595L), BGl_string4062z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2364); 
FAILURE(BgL_auxz00_12990,BFALSE,BFALSE);} 
BgL_bucketzd2lenzd2_2365 = 
VECTOR_LENGTH(BgL_vectorz00_4790); } 
{ /* Llib/hash.scm 1053 */
 long BgL_bucketzd2numzd2_2366;
{ /* Llib/hash.scm 1054 */
 long BgL_arg1923z00_2389;
BgL_arg1923z00_2389 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_153, BgL_keyz00_154); 
{ /* Llib/hash.scm 1054 */
 long BgL_n1z00_4791; long BgL_n2z00_4792;
BgL_n1z00_4791 = BgL_arg1923z00_2389; 
BgL_n2z00_4792 = BgL_bucketzd2lenzd2_2365; 
{ /* Llib/hash.scm 1054 */
 bool_t BgL_test5179z00_12996;
{ /* Llib/hash.scm 1054 */
 long BgL_arg2216z00_4794;
BgL_arg2216z00_4794 = 
(((BgL_n1z00_4791) | (BgL_n2z00_4792)) & -2147483648); 
BgL_test5179z00_12996 = 
(BgL_arg2216z00_4794==0L); } 
if(BgL_test5179z00_12996)
{ /* Llib/hash.scm 1054 */
 int32_t BgL_arg2213z00_4795;
{ /* Llib/hash.scm 1054 */
 int32_t BgL_arg2214z00_4796; int32_t BgL_arg2215z00_4797;
BgL_arg2214z00_4796 = 
(int32_t)(BgL_n1z00_4791); 
BgL_arg2215z00_4797 = 
(int32_t)(BgL_n2z00_4792); 
BgL_arg2213z00_4795 = 
(BgL_arg2214z00_4796%BgL_arg2215z00_4797); } 
{ /* Llib/hash.scm 1054 */
 long BgL_arg2320z00_4802;
BgL_arg2320z00_4802 = 
(long)(BgL_arg2213z00_4795); 
BgL_bucketzd2numzd2_2366 = 
(long)(BgL_arg2320z00_4802); } }  else 
{ /* Llib/hash.scm 1054 */
BgL_bucketzd2numzd2_2366 = 
(BgL_n1z00_4791%BgL_n2z00_4792); } } } } 
{ /* Llib/hash.scm 1054 */
 obj_t BgL_bucketz00_2367;
{ /* Llib/hash.scm 1055 */
 obj_t BgL_vectorz00_4804;
if(
VECTORP(BgL_bucketsz00_2364))
{ /* Llib/hash.scm 1055 */
BgL_vectorz00_4804 = BgL_bucketsz00_2364; }  else 
{ 
 obj_t BgL_auxz00_13007;
BgL_auxz00_13007 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42705L), BGl_string4062z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2364); 
FAILURE(BgL_auxz00_13007,BFALSE,BFALSE);} 
BgL_bucketz00_2367 = 
VECTOR_REF(BgL_vectorz00_4804,BgL_bucketzd2numzd2_2366); } 
{ /* Llib/hash.scm 1055 */

if(
NULLP(BgL_bucketz00_2367))
{ /* Llib/hash.scm 1057 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 1059 */
 bool_t BgL_test5182z00_13014;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_arg1922z00_2388;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_pairz00_4806;
if(
PAIRP(BgL_bucketz00_2367))
{ /* Llib/hash.scm 1059 */
BgL_pairz00_4806 = BgL_bucketz00_2367; }  else 
{ 
 obj_t BgL_auxz00_13017;
BgL_auxz00_13017 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42797L), BGl_string4062z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2367); 
FAILURE(BgL_auxz00_13017,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1059 */
 obj_t BgL_pairz00_4809;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_aux3729z00_6625;
BgL_aux3729z00_6625 = 
CAR(BgL_pairz00_4806); 
if(
PAIRP(BgL_aux3729z00_6625))
{ /* Llib/hash.scm 1059 */
BgL_pairz00_4809 = BgL_aux3729z00_6625; }  else 
{ 
 obj_t BgL_auxz00_13024;
BgL_auxz00_13024 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42791L), BGl_string4062z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3729z00_6625); 
FAILURE(BgL_auxz00_13024,BFALSE,BFALSE);} } 
BgL_arg1922z00_2388 = 
CAR(BgL_pairz00_4809); } } 
{ /* Llib/hash.scm 1059 */
 obj_t BgL_eqtz00_4810;
{ /* Llib/hash.scm 1059 */
 bool_t BgL_test5185z00_13029;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_tmpz00_13030;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_res2629z00_4817;
{ /* Llib/hash.scm 1059 */
 obj_t BgL_aux3731z00_6627;
BgL_aux3731z00_6627 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3731z00_6627))
{ /* Llib/hash.scm 1059 */
BgL_res2629z00_4817 = BgL_aux3731z00_6627; }  else 
{ 
 obj_t BgL_auxz00_13034;
BgL_auxz00_13034 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42767L), BGl_string4062z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3731z00_6627); 
FAILURE(BgL_auxz00_13034,BFALSE,BFALSE);} } 
BgL_tmpz00_13030 = BgL_res2629z00_4817; } 
BgL_test5185z00_13029 = 
(BgL_tmpz00_13030==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5185z00_13029)
{ /* Llib/hash.scm 1059 */
 int BgL_tmpz00_13039;
BgL_tmpz00_13039 = 
(int)(3L); 
BgL_eqtz00_4810 = 
STRUCT_REF(BgL_tablez00_153, BgL_tmpz00_13039); }  else 
{ /* Llib/hash.scm 1059 */
BgL_eqtz00_4810 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } 
if(
PROCEDUREP(BgL_eqtz00_4810))
{ /* Llib/hash.scm 1059 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_4810, 2L))
{ /* Llib/hash.scm 1059 */
BgL_test5182z00_13014 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_4810 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_4810))(BgL_eqtz00_4810, BgL_arg1922z00_2388, BgL_keyz00_154, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_4810))(BgL_eqtz00_4810, BgL_arg1922z00_2388, BgL_keyz00_154) ))
; }  else 
{ /* Llib/hash.scm 1059 */
FAILURE(BGl_string4063z00zz__hashz00,BGl_list4064z00zz__hashz00,BgL_eqtz00_4810);} }  else 
{ /* Llib/hash.scm 1059 */
if(
(BgL_arg1922z00_2388==BgL_keyz00_154))
{ /* Llib/hash.scm 1059 */
BgL_test5182z00_13014 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1059 */
if(
STRINGP(BgL_arg1922z00_2388))
{ /* Llib/hash.scm 1059 */
if(
STRINGP(BgL_keyz00_154))
{ /* Llib/hash.scm 1059 */
 long BgL_l1z00_4820;
BgL_l1z00_4820 = 
STRING_LENGTH(BgL_arg1922z00_2388); 
if(
(BgL_l1z00_4820==
STRING_LENGTH(BgL_keyz00_154)))
{ /* Llib/hash.scm 1059 */
 int BgL_arg2110z00_4823;
{ /* Llib/hash.scm 1059 */
 char * BgL_auxz00_13066; char * BgL_tmpz00_13064;
BgL_auxz00_13066 = 
BSTRING_TO_STRING(BgL_keyz00_154); 
BgL_tmpz00_13064 = 
BSTRING_TO_STRING(BgL_arg1922z00_2388); 
BgL_arg2110z00_4823 = 
memcmp(BgL_tmpz00_13064, BgL_auxz00_13066, BgL_l1z00_4820); } 
BgL_test5182z00_13014 = 
(
(long)(BgL_arg2110z00_4823)==0L); }  else 
{ /* Llib/hash.scm 1059 */
BgL_test5182z00_13014 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1059 */
BgL_test5182z00_13014 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1059 */
BgL_test5182z00_13014 = ((bool_t)0)
; } } } } } 
if(BgL_test5182z00_13014)
{ /* Llib/hash.scm 1059 */
{ /* Llib/hash.scm 1060 */
 obj_t BgL_arg1908z00_2371;
{ /* Llib/hash.scm 1060 */
 obj_t BgL_pairz00_4829;
if(
PAIRP(BgL_bucketz00_2367))
{ /* Llib/hash.scm 1060 */
BgL_pairz00_4829 = BgL_bucketz00_2367; }  else 
{ 
 obj_t BgL_auxz00_13073;
BgL_auxz00_13073 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42853L), BGl_string4062z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2367); 
FAILURE(BgL_auxz00_13073,BFALSE,BFALSE);} 
BgL_arg1908z00_2371 = 
CDR(BgL_pairz00_4829); } 
{ /* Llib/hash.scm 1060 */
 obj_t BgL_vectorz00_4830;
if(
VECTORP(BgL_bucketsz00_2364))
{ /* Llib/hash.scm 1060 */
BgL_vectorz00_4830 = BgL_bucketsz00_2364; }  else 
{ 
 obj_t BgL_auxz00_13080;
BgL_auxz00_13080 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42829L), BGl_string4062z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2364); 
FAILURE(BgL_auxz00_13080,BFALSE,BFALSE);} 
VECTOR_SET(BgL_vectorz00_4830,BgL_bucketzd2numzd2_2366,BgL_arg1908z00_2371); } } 
{ /* Llib/hash.scm 1061 */
 long BgL_arg1909z00_2372;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_arg1911z00_2373;
{ /* Llib/hash.scm 1061 */
 bool_t BgL_test5195z00_13085;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_tmpz00_13086;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_res2630z00_4835;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_aux3738z00_6635;
BgL_aux3738z00_6635 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3738z00_6635))
{ /* Llib/hash.scm 1061 */
BgL_res2630z00_4835 = BgL_aux3738z00_6635; }  else 
{ 
 obj_t BgL_auxz00_13090;
BgL_auxz00_13090 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42898L), BGl_string4062z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3738z00_6635); 
FAILURE(BgL_auxz00_13090,BFALSE,BFALSE);} } 
BgL_tmpz00_13086 = BgL_res2630z00_4835; } 
BgL_test5195z00_13085 = 
(BgL_tmpz00_13086==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5195z00_13085)
{ /* Llib/hash.scm 1061 */
 int BgL_tmpz00_13095;
BgL_tmpz00_13095 = 
(int)(0L); 
BgL_arg1911z00_2373 = 
STRUCT_REF(BgL_tablez00_153, BgL_tmpz00_13095); }  else 
{ /* Llib/hash.scm 1061 */
BgL_arg1911z00_2373 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } 
{ /* Llib/hash.scm 1061 */
 long BgL_za71za7_4836;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_tmpz00_13099;
if(
INTEGERP(BgL_arg1911z00_2373))
{ /* Llib/hash.scm 1061 */
BgL_tmpz00_13099 = BgL_arg1911z00_2373
; }  else 
{ 
 obj_t BgL_auxz00_13102;
BgL_auxz00_13102 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42920L), BGl_string4062z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1911z00_2373); 
FAILURE(BgL_auxz00_13102,BFALSE,BFALSE);} 
BgL_za71za7_4836 = 
(long)CINT(BgL_tmpz00_13099); } 
BgL_arg1909z00_2372 = 
(BgL_za71za7_4836-1L); } } 
{ /* Llib/hash.scm 1061 */
 bool_t BgL_test5198z00_13108;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_tmpz00_13109;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_res2631z00_4840;
{ /* Llib/hash.scm 1061 */
 obj_t BgL_aux3741z00_6638;
BgL_aux3741z00_6638 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3741z00_6638))
{ /* Llib/hash.scm 1061 */
BgL_res2631z00_4840 = BgL_aux3741z00_6638; }  else 
{ 
 obj_t BgL_auxz00_13113;
BgL_auxz00_13113 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42865L), BGl_string4062z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3741z00_6638); 
FAILURE(BgL_auxz00_13113,BFALSE,BFALSE);} } 
BgL_tmpz00_13109 = BgL_res2631z00_4840; } 
BgL_test5198z00_13108 = 
(BgL_tmpz00_13109==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5198z00_13108)
{ /* Llib/hash.scm 1061 */
 obj_t BgL_auxz00_13120; int BgL_tmpz00_13118;
BgL_auxz00_13120 = 
BINT(BgL_arg1909z00_2372); 
BgL_tmpz00_13118 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_153, BgL_tmpz00_13118, BgL_auxz00_13120); }  else 
{ /* Llib/hash.scm 1061 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } } 
return ((bool_t)1);}  else 
{ /* Llib/hash.scm 1064 */
 obj_t BgL_g1075z00_2374;
{ /* Llib/hash.scm 1064 */
 obj_t BgL_pairz00_4841;
if(
PAIRP(BgL_bucketz00_2367))
{ /* Llib/hash.scm 1064 */
BgL_pairz00_4841 = BgL_bucketz00_2367; }  else 
{ 
 obj_t BgL_auxz00_13126;
BgL_auxz00_13126 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(42968L), BGl_string4062z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2367); 
FAILURE(BgL_auxz00_13126,BFALSE,BFALSE);} 
BgL_g1075z00_2374 = 
CDR(BgL_pairz00_4841); } 
{ 
 obj_t BgL_bucketz00_2376; obj_t BgL_prevz00_2377;
BgL_bucketz00_2376 = BgL_g1075z00_2374; 
BgL_prevz00_2377 = BgL_bucketz00_2367; 
BgL_zc3z04anonymousza31912ze3z87_2378:
if(
PAIRP(BgL_bucketz00_2376))
{ /* Llib/hash.scm 1067 */
 bool_t BgL_test5202z00_13133;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_arg1921z00_2386;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_pairz00_4845;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_aux3745z00_6642;
BgL_aux3745z00_6642 = 
CAR(BgL_bucketz00_2376); 
if(
PAIRP(BgL_aux3745z00_6642))
{ /* Llib/hash.scm 1067 */
BgL_pairz00_4845 = BgL_aux3745z00_6642; }  else 
{ 
 obj_t BgL_auxz00_13137;
BgL_auxz00_13137 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43055L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_aux3745z00_6642); 
FAILURE(BgL_auxz00_13137,BFALSE,BFALSE);} } 
BgL_arg1921z00_2386 = 
CAR(BgL_pairz00_4845); } 
{ /* Llib/hash.scm 1067 */
 obj_t BgL_eqtz00_4846;
{ /* Llib/hash.scm 1067 */
 bool_t BgL_test5204z00_13142;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_tmpz00_13143;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_res2632z00_4853;
{ /* Llib/hash.scm 1067 */
 obj_t BgL_aux3747z00_6644;
BgL_aux3747z00_6644 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3747z00_6644))
{ /* Llib/hash.scm 1067 */
BgL_res2632z00_4853 = BgL_aux3747z00_6644; }  else 
{ 
 obj_t BgL_auxz00_13147;
BgL_auxz00_13147 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43031L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3747z00_6644); 
FAILURE(BgL_auxz00_13147,BFALSE,BFALSE);} } 
BgL_tmpz00_13143 = BgL_res2632z00_4853; } 
BgL_test5204z00_13142 = 
(BgL_tmpz00_13143==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5204z00_13142)
{ /* Llib/hash.scm 1067 */
 int BgL_tmpz00_13152;
BgL_tmpz00_13152 = 
(int)(3L); 
BgL_eqtz00_4846 = 
STRUCT_REF(BgL_tablez00_153, BgL_tmpz00_13152); }  else 
{ /* Llib/hash.scm 1067 */
BgL_eqtz00_4846 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } 
if(
PROCEDUREP(BgL_eqtz00_4846))
{ /* Llib/hash.scm 1067 */
if(
PROCEDURE_CORRECT_ARITYP(BgL_eqtz00_4846, 2L))
{ /* Llib/hash.scm 1067 */
BgL_test5202z00_13133 = 
CBOOL(
(VA_PROCEDUREP( BgL_eqtz00_4846 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_eqtz00_4846))(BgL_eqtz00_4846, BgL_arg1921z00_2386, BgL_keyz00_154, BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_eqtz00_4846))(BgL_eqtz00_4846, BgL_arg1921z00_2386, BgL_keyz00_154) ))
; }  else 
{ /* Llib/hash.scm 1067 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4067z00zz__hashz00,BgL_eqtz00_4846);} }  else 
{ /* Llib/hash.scm 1067 */
if(
(BgL_arg1921z00_2386==BgL_keyz00_154))
{ /* Llib/hash.scm 1067 */
BgL_test5202z00_13133 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1067 */
if(
STRINGP(BgL_arg1921z00_2386))
{ /* Llib/hash.scm 1067 */
if(
STRINGP(BgL_keyz00_154))
{ /* Llib/hash.scm 1067 */
 long BgL_l1z00_4856;
BgL_l1z00_4856 = 
STRING_LENGTH(BgL_arg1921z00_2386); 
if(
(BgL_l1z00_4856==
STRING_LENGTH(BgL_keyz00_154)))
{ /* Llib/hash.scm 1067 */
 int BgL_arg2110z00_4859;
{ /* Llib/hash.scm 1067 */
 char * BgL_auxz00_13179; char * BgL_tmpz00_13177;
BgL_auxz00_13179 = 
BSTRING_TO_STRING(BgL_keyz00_154); 
BgL_tmpz00_13177 = 
BSTRING_TO_STRING(BgL_arg1921z00_2386); 
BgL_arg2110z00_4859 = 
memcmp(BgL_tmpz00_13177, BgL_auxz00_13179, BgL_l1z00_4856); } 
BgL_test5202z00_13133 = 
(
(long)(BgL_arg2110z00_4859)==0L); }  else 
{ /* Llib/hash.scm 1067 */
BgL_test5202z00_13133 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1067 */
BgL_test5202z00_13133 = ((bool_t)0)
; } }  else 
{ /* Llib/hash.scm 1067 */
BgL_test5202z00_13133 = ((bool_t)0)
; } } } } } 
if(BgL_test5202z00_13133)
{ /* Llib/hash.scm 1067 */
{ /* Llib/hash.scm 1069 */
 obj_t BgL_arg1916z00_2382;
BgL_arg1916z00_2382 = 
CDR(BgL_bucketz00_2376); 
{ /* Llib/hash.scm 1069 */
 obj_t BgL_pairz00_4866;
if(
PAIRP(BgL_prevz00_2377))
{ /* Llib/hash.scm 1069 */
BgL_pairz00_4866 = BgL_prevz00_2377; }  else 
{ 
 obj_t BgL_auxz00_13187;
BgL_auxz00_13187 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43101L), BGl_string3922z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_prevz00_2377); 
FAILURE(BgL_auxz00_13187,BFALSE,BFALSE);} 
SET_CDR(BgL_pairz00_4866, BgL_arg1916z00_2382); } } 
{ /* Llib/hash.scm 1071 */
 long BgL_arg1917z00_2383;
{ /* Llib/hash.scm 1071 */
 obj_t BgL_arg1918z00_2384;
{ /* Llib/hash.scm 1071 */
 bool_t BgL_test5213z00_13192;
{ /* Llib/hash.scm 1071 */
 obj_t BgL_tmpz00_13193;
{ /* Llib/hash.scm 1071 */
 obj_t BgL_res2633z00_4870;
{ /* Llib/hash.scm 1071 */
 obj_t BgL_aux3752z00_6650;
BgL_aux3752z00_6650 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3752z00_6650))
{ /* Llib/hash.scm 1071 */
BgL_res2633z00_4870 = BgL_aux3752z00_6650; }  else 
{ 
 obj_t BgL_auxz00_13197;
BgL_auxz00_13197 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43167L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3752z00_6650); 
FAILURE(BgL_auxz00_13197,BFALSE,BFALSE);} } 
BgL_tmpz00_13193 = BgL_res2633z00_4870; } 
BgL_test5213z00_13192 = 
(BgL_tmpz00_13193==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5213z00_13192)
{ /* Llib/hash.scm 1071 */
 int BgL_tmpz00_13202;
BgL_tmpz00_13202 = 
(int)(0L); 
BgL_arg1918z00_2384 = 
STRUCT_REF(BgL_tablez00_153, BgL_tmpz00_13202); }  else 
{ /* Llib/hash.scm 1071 */
BgL_arg1918z00_2384 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } 
{ /* Llib/hash.scm 1071 */
 long BgL_za71za7_4871;
{ /* Llib/hash.scm 1071 */
 obj_t BgL_tmpz00_13206;
if(
INTEGERP(BgL_arg1918z00_2384))
{ /* Llib/hash.scm 1071 */
BgL_tmpz00_13206 = BgL_arg1918z00_2384
; }  else 
{ 
 obj_t BgL_auxz00_13209;
BgL_auxz00_13209 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43189L), BGl_string3922z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg1918z00_2384); 
FAILURE(BgL_auxz00_13209,BFALSE,BFALSE);} 
BgL_za71za7_4871 = 
(long)CINT(BgL_tmpz00_13206); } 
BgL_arg1917z00_2383 = 
(BgL_za71za7_4871-1L); } } 
{ /* Llib/hash.scm 1070 */
 bool_t BgL_test5216z00_13215;
{ /* Llib/hash.scm 1070 */
 obj_t BgL_tmpz00_13216;
{ /* Llib/hash.scm 1070 */
 obj_t BgL_res2634z00_4875;
{ /* Llib/hash.scm 1070 */
 obj_t BgL_aux3755z00_6653;
BgL_aux3755z00_6653 = 
STRUCT_KEY(BgL_tablez00_153); 
if(
SYMBOLP(BgL_aux3755z00_6653))
{ /* Llib/hash.scm 1070 */
BgL_res2634z00_4875 = BgL_aux3755z00_6653; }  else 
{ 
 obj_t BgL_auxz00_13220;
BgL_auxz00_13220 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43123L), BGl_string3922z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3755z00_6653); 
FAILURE(BgL_auxz00_13220,BFALSE,BFALSE);} } 
BgL_tmpz00_13216 = BgL_res2634z00_4875; } 
BgL_test5216z00_13215 = 
(BgL_tmpz00_13216==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5216z00_13215)
{ /* Llib/hash.scm 1070 */
 obj_t BgL_auxz00_13227; int BgL_tmpz00_13225;
BgL_auxz00_13227 = 
BINT(BgL_arg1917z00_2383); 
BgL_tmpz00_13225 = 
(int)(0L); 
STRUCT_SET(BgL_tablez00_153, BgL_tmpz00_13225, BgL_auxz00_13227); }  else 
{ /* Llib/hash.scm 1070 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_153); } } } 
return ((bool_t)1);}  else 
{ 
 obj_t BgL_prevz00_13233; obj_t BgL_bucketz00_13231;
BgL_bucketz00_13231 = 
CDR(BgL_bucketz00_2376); 
BgL_prevz00_13233 = BgL_bucketz00_2376; 
BgL_prevz00_2377 = BgL_prevz00_13233; 
BgL_bucketz00_2376 = BgL_bucketz00_13231; 
goto BgL_zc3z04anonymousza31912ze3z87_2378;} }  else 
{ /* Llib/hash.scm 1066 */
return ((bool_t)0);} } } } } } } } } } 

}



/* plain-hashtable-expand! */
obj_t BGl_plainzd2hashtablezd2expandz12z12zz__hashz00(obj_t BgL_tablez00_156)
{
{ /* Llib/hash.scm 1087 */
{ /* Llib/hash.scm 1088 */
 obj_t BgL_oldzd2buckszd2_2391;
{ /* Llib/hash.scm 1088 */
 bool_t BgL_test5218z00_13234;
{ /* Llib/hash.scm 1088 */
 obj_t BgL_tmpz00_13235;
{ /* Llib/hash.scm 1088 */
 obj_t BgL_res2635z00_4880;
{ /* Llib/hash.scm 1088 */
 obj_t BgL_aux3757z00_6655;
BgL_aux3757z00_6655 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3757z00_6655))
{ /* Llib/hash.scm 1088 */
BgL_res2635z00_4880 = BgL_aux3757z00_6655; }  else 
{ 
 obj_t BgL_auxz00_13239;
BgL_auxz00_13239 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43903L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3757z00_6655); 
FAILURE(BgL_auxz00_13239,BFALSE,BFALSE);} } 
BgL_tmpz00_13235 = BgL_res2635z00_4880; } 
BgL_test5218z00_13234 = 
(BgL_tmpz00_13235==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5218z00_13234)
{ /* Llib/hash.scm 1088 */
 int BgL_tmpz00_13244;
BgL_tmpz00_13244 = 
(int)(2L); 
BgL_oldzd2buckszd2_2391 = 
STRUCT_REF(BgL_tablez00_156, BgL_tmpz00_13244); }  else 
{ /* Llib/hash.scm 1088 */
BgL_oldzd2buckszd2_2391 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } 
{ /* Llib/hash.scm 1088 */
 long BgL_lenz00_2392;
{ /* Llib/hash.scm 1089 */
 obj_t BgL_vectorz00_4881;
if(
VECTORP(BgL_oldzd2buckszd2_2391))
{ /* Llib/hash.scm 1089 */
BgL_vectorz00_4881 = BgL_oldzd2buckszd2_2391; }  else 
{ 
 obj_t BgL_auxz00_13250;
BgL_auxz00_13250 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(43954L), BGl_string4070z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_oldzd2buckszd2_2391); 
FAILURE(BgL_auxz00_13250,BFALSE,BFALSE);} 
BgL_lenz00_2392 = 
VECTOR_LENGTH(BgL_vectorz00_4881); } 
{ /* Llib/hash.scm 1089 */
 long BgL_newzd2lenzd2_2393;
BgL_newzd2lenzd2_2393 = 
(2L*BgL_lenz00_2392); 
{ /* Llib/hash.scm 1090 */
 obj_t BgL_maxzd2lenzd2_2394;
{ /* Llib/hash.scm 1091 */
 bool_t BgL_test5221z00_13256;
{ /* Llib/hash.scm 1091 */
 obj_t BgL_tmpz00_13257;
{ /* Llib/hash.scm 1091 */
 obj_t BgL_res2636z00_4886;
{ /* Llib/hash.scm 1091 */
 obj_t BgL_aux3761z00_6659;
BgL_aux3761z00_6659 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3761z00_6659))
{ /* Llib/hash.scm 1091 */
BgL_res2636z00_4886 = BgL_aux3761z00_6659; }  else 
{ 
 obj_t BgL_auxz00_13261;
BgL_auxz00_13261 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44003L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3761z00_6659); 
FAILURE(BgL_auxz00_13261,BFALSE,BFALSE);} } 
BgL_tmpz00_13257 = BgL_res2636z00_4886; } 
BgL_test5221z00_13256 = 
(BgL_tmpz00_13257==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5221z00_13256)
{ /* Llib/hash.scm 1091 */
 int BgL_tmpz00_13266;
BgL_tmpz00_13266 = 
(int)(6L); 
BgL_maxzd2lenzd2_2394 = 
STRUCT_REF(BgL_tablez00_156, BgL_tmpz00_13266); }  else 
{ /* Llib/hash.scm 1091 */
BgL_maxzd2lenzd2_2394 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } 
{ /* Llib/hash.scm 1091 */

{ /* Llib/hash.scm 1093 */
 obj_t BgL_nmaxz00_2395;
{ /* Llib/hash.scm 1093 */
 obj_t BgL_a1138z00_2398;
{ /* Llib/hash.scm 1093 */
 bool_t BgL_test5223z00_13270;
{ /* Llib/hash.scm 1093 */
 obj_t BgL_tmpz00_13271;
{ /* Llib/hash.scm 1093 */
 obj_t BgL_res2637z00_4890;
{ /* Llib/hash.scm 1093 */
 obj_t BgL_aux3763z00_6661;
BgL_aux3763z00_6661 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3763z00_6661))
{ /* Llib/hash.scm 1093 */
BgL_res2637z00_4890 = BgL_aux3763z00_6661; }  else 
{ 
 obj_t BgL_auxz00_13275;
BgL_auxz00_13275 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44092L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3763z00_6661); 
FAILURE(BgL_auxz00_13275,BFALSE,BFALSE);} } 
BgL_tmpz00_13271 = BgL_res2637z00_4890; } 
BgL_test5223z00_13270 = 
(BgL_tmpz00_13271==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5223z00_13270)
{ /* Llib/hash.scm 1093 */
 int BgL_tmpz00_13280;
BgL_tmpz00_13280 = 
(int)(1L); 
BgL_a1138z00_2398 = 
STRUCT_REF(BgL_tablez00_156, BgL_tmpz00_13280); }  else 
{ /* Llib/hash.scm 1093 */
BgL_a1138z00_2398 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } 
{ /* Llib/hash.scm 1094 */
 obj_t BgL_b1139z00_2399;
{ /* Llib/hash.scm 1094 */
 bool_t BgL_test5225z00_13284;
{ /* Llib/hash.scm 1094 */
 obj_t BgL_tmpz00_13285;
{ /* Llib/hash.scm 1094 */
 obj_t BgL_res2638z00_4894;
{ /* Llib/hash.scm 1094 */
 obj_t BgL_aux3765z00_6663;
BgL_aux3765z00_6663 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3765z00_6663))
{ /* Llib/hash.scm 1094 */
BgL_res2638z00_4894 = BgL_aux3765z00_6663; }  else 
{ 
 obj_t BgL_auxz00_13289;
BgL_auxz00_13289 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44133L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3765z00_6663); 
FAILURE(BgL_auxz00_13289,BFALSE,BFALSE);} } 
BgL_tmpz00_13285 = BgL_res2638z00_4894; } 
BgL_test5225z00_13284 = 
(BgL_tmpz00_13285==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5225z00_13284)
{ /* Llib/hash.scm 1094 */
 int BgL_tmpz00_13294;
BgL_tmpz00_13294 = 
(int)(7L); 
BgL_b1139z00_2399 = 
STRUCT_REF(BgL_tablez00_156, BgL_tmpz00_13294); }  else 
{ /* Llib/hash.scm 1094 */
BgL_b1139z00_2399 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } 
{ /* Llib/hash.scm 1093 */

{ /* Llib/hash.scm 1093 */
 bool_t BgL_test5227z00_13298;
if(
INTEGERP(BgL_a1138z00_2398))
{ /* Llib/hash.scm 1093 */
BgL_test5227z00_13298 = 
INTEGERP(BgL_b1139z00_2399)
; }  else 
{ /* Llib/hash.scm 1093 */
BgL_test5227z00_13298 = ((bool_t)0)
; } 
if(BgL_test5227z00_13298)
{ /* Llib/hash.scm 1093 */
BgL_nmaxz00_2395 = 
BINT(
(
(long)CINT(BgL_a1138z00_2398)*
(long)CINT(BgL_b1139z00_2399))); }  else 
{ /* Llib/hash.scm 1093 */
BgL_nmaxz00_2395 = 
BGl_2za2za2zz__r4_numbers_6_5z00(BgL_a1138z00_2398, BgL_b1139z00_2399); } } } } } 
{ /* Llib/hash.scm 1096 */
 obj_t BgL_arg1925z00_2396;
if(
REALP(BgL_nmaxz00_2395))
{ /* Llib/hash.scm 1096 */
BgL_arg1925z00_2396 = 
BINT(
(long)(
REAL_TO_DOUBLE(BgL_nmaxz00_2395))); }  else 
{ /* Llib/hash.scm 1096 */
BgL_arg1925z00_2396 = BgL_nmaxz00_2395; } 
{ /* Llib/hash.scm 1095 */
 bool_t BgL_test5230z00_13312;
{ /* Llib/hash.scm 1095 */
 obj_t BgL_tmpz00_13313;
{ /* Llib/hash.scm 1095 */
 obj_t BgL_res2639z00_4901;
{ /* Llib/hash.scm 1095 */
 obj_t BgL_aux3767z00_6665;
BgL_aux3767z00_6665 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3767z00_6665))
{ /* Llib/hash.scm 1095 */
BgL_res2639z00_4901 = BgL_aux3767z00_6665; }  else 
{ 
 obj_t BgL_auxz00_13317;
BgL_auxz00_13317 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44174L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3767z00_6665); 
FAILURE(BgL_auxz00_13317,BFALSE,BFALSE);} } 
BgL_tmpz00_13313 = BgL_res2639z00_4901; } 
BgL_test5230z00_13312 = 
(BgL_tmpz00_13313==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5230z00_13312)
{ /* Llib/hash.scm 1095 */
 int BgL_tmpz00_13322;
BgL_tmpz00_13322 = 
(int)(1L); 
STRUCT_SET(BgL_tablez00_156, BgL_tmpz00_13322, BgL_arg1925z00_2396); }  else 
{ /* Llib/hash.scm 1095 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } } } 
{ /* Llib/hash.scm 1098 */
 bool_t BgL_test5232z00_13326;
{ /* Llib/hash.scm 1098 */
 bool_t BgL_test5233z00_13327;
{ /* Llib/hash.scm 1098 */
 long BgL_n1z00_4902;
{ /* Llib/hash.scm 1098 */
 obj_t BgL_tmpz00_13328;
if(
INTEGERP(BgL_maxzd2lenzd2_2394))
{ /* Llib/hash.scm 1098 */
BgL_tmpz00_13328 = BgL_maxzd2lenzd2_2394
; }  else 
{ 
 obj_t BgL_auxz00_13331;
BgL_auxz00_13331 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44319L), BGl_string4070z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2lenzd2_2394); 
FAILURE(BgL_auxz00_13331,BFALSE,BFALSE);} 
BgL_n1z00_4902 = 
(long)CINT(BgL_tmpz00_13328); } 
BgL_test5233z00_13327 = 
(BgL_n1z00_4902<0L); } 
if(BgL_test5233z00_13327)
{ /* Llib/hash.scm 1098 */
BgL_test5232z00_13326 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1098 */
 long BgL_n2z00_4904;
{ /* Llib/hash.scm 1098 */
 obj_t BgL_tmpz00_13337;
if(
INTEGERP(BgL_maxzd2lenzd2_2394))
{ /* Llib/hash.scm 1098 */
BgL_tmpz00_13337 = BgL_maxzd2lenzd2_2394
; }  else 
{ 
 obj_t BgL_auxz00_13340;
BgL_auxz00_13340 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44344L), BGl_string4070z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_maxzd2lenzd2_2394); 
FAILURE(BgL_auxz00_13340,BFALSE,BFALSE);} 
BgL_n2z00_4904 = 
(long)CINT(BgL_tmpz00_13337); } 
BgL_test5232z00_13326 = 
(BgL_newzd2lenzd2_2393<=BgL_n2z00_4904); } } 
if(BgL_test5232z00_13326)
{ /* Llib/hash.scm 1099 */
 obj_t BgL_newzd2buckszd2_2403;
BgL_newzd2buckszd2_2403 = 
make_vector(BgL_newzd2lenzd2_2393, BNIL); 
{ /* Llib/hash.scm 1100 */
 bool_t BgL_test5236z00_13347;
{ /* Llib/hash.scm 1100 */
 obj_t BgL_tmpz00_13348;
{ /* Llib/hash.scm 1100 */
 obj_t BgL_res2640z00_4908;
{ /* Llib/hash.scm 1100 */
 obj_t BgL_aux3771z00_6669;
BgL_aux3771z00_6669 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3771z00_6669))
{ /* Llib/hash.scm 1100 */
BgL_res2640z00_4908 = BgL_aux3771z00_6669; }  else 
{ 
 obj_t BgL_auxz00_13352;
BgL_auxz00_13352 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44408L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3771z00_6669); 
FAILURE(BgL_auxz00_13352,BFALSE,BFALSE);} } 
BgL_tmpz00_13348 = BgL_res2640z00_4908; } 
BgL_test5236z00_13347 = 
(BgL_tmpz00_13348==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5236z00_13347)
{ /* Llib/hash.scm 1100 */
 int BgL_tmpz00_13357;
BgL_tmpz00_13357 = 
(int)(2L); 
STRUCT_SET(BgL_tablez00_156, BgL_tmpz00_13357, BgL_newzd2buckszd2_2403); }  else 
{ /* Llib/hash.scm 1100 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); } } 
{ 
 long BgL_iz00_2405;
{ /* Llib/hash.scm 1101 */
 bool_t BgL_tmpz00_13361;
BgL_iz00_2405 = 0L; 
BgL_zc3z04anonymousza31930ze3z87_2406:
if(
(BgL_iz00_2405<BgL_lenz00_2392))
{ /* Llib/hash.scm 1102 */
{ /* Llib/hash.scm 1103 */
 obj_t BgL_g1142z00_2408;
{ /* Llib/hash.scm 1109 */
 obj_t BgL_vectorz00_4911;
if(
VECTORP(BgL_oldzd2buckszd2_2391))
{ /* Llib/hash.scm 1109 */
BgL_vectorz00_4911 = BgL_oldzd2buckszd2_2391; }  else 
{ 
 obj_t BgL_auxz00_13366;
BgL_auxz00_13366 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44748L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_oldzd2buckszd2_2391); 
FAILURE(BgL_auxz00_13366,BFALSE,BFALSE);} 
BgL_g1142z00_2408 = 
VECTOR_REF(BgL_vectorz00_4911,BgL_iz00_2405); } 
{ 
 obj_t BgL_l1140z00_2410;
BgL_l1140z00_2410 = BgL_g1142z00_2408; 
BgL_zc3z04anonymousza31932ze3z87_2411:
if(
PAIRP(BgL_l1140z00_2410))
{ /* Llib/hash.scm 1109 */
{ /* Llib/hash.scm 1104 */
 obj_t BgL_cellz00_2413;
BgL_cellz00_2413 = 
CAR(BgL_l1140z00_2410); 
{ /* Llib/hash.scm 1104 */
 obj_t BgL_keyz00_2414;
{ /* Llib/hash.scm 1104 */
 obj_t BgL_pairz00_4914;
if(
PAIRP(BgL_cellz00_2413))
{ /* Llib/hash.scm 1104 */
BgL_pairz00_4914 = BgL_cellz00_2413; }  else 
{ 
 obj_t BgL_auxz00_13376;
BgL_auxz00_13376 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44545L), BGl_string4071z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_cellz00_2413); 
FAILURE(BgL_auxz00_13376,BFALSE,BFALSE);} 
BgL_keyz00_2414 = 
CAR(BgL_pairz00_4914); } 
{ /* Llib/hash.scm 1104 */
 long BgL_nz00_2415;
BgL_nz00_2415 = 
BGl_tablezd2getzd2hashnumberz00zz__hashz00(BgL_tablez00_156, BgL_keyz00_2414); 
{ /* Llib/hash.scm 1105 */
 long BgL_hz00_2416;
{ /* Llib/hash.scm 1106 */
 long BgL_n1z00_4915; long BgL_n2z00_4916;
BgL_n1z00_4915 = BgL_nz00_2415; 
BgL_n2z00_4916 = BgL_newzd2lenzd2_2393; 
{ /* Llib/hash.scm 1106 */
 bool_t BgL_test5242z00_13382;
{ /* Llib/hash.scm 1106 */
 long BgL_arg2216z00_4918;
BgL_arg2216z00_4918 = 
(((BgL_n1z00_4915) | (BgL_n2z00_4916)) & -2147483648); 
BgL_test5242z00_13382 = 
(BgL_arg2216z00_4918==0L); } 
if(BgL_test5242z00_13382)
{ /* Llib/hash.scm 1106 */
 int32_t BgL_arg2213z00_4919;
{ /* Llib/hash.scm 1106 */
 int32_t BgL_arg2214z00_4920; int32_t BgL_arg2215z00_4921;
BgL_arg2214z00_4920 = 
(int32_t)(BgL_n1z00_4915); 
BgL_arg2215z00_4921 = 
(int32_t)(BgL_n2z00_4916); 
BgL_arg2213z00_4919 = 
(BgL_arg2214z00_4920%BgL_arg2215z00_4921); } 
{ /* Llib/hash.scm 1106 */
 long BgL_arg2320z00_4926;
BgL_arg2320z00_4926 = 
(long)(BgL_arg2213z00_4919); 
BgL_hz00_2416 = 
(long)(BgL_arg2320z00_4926); } }  else 
{ /* Llib/hash.scm 1106 */
BgL_hz00_2416 = 
(BgL_n1z00_4915%BgL_n2z00_4916); } } } 
{ /* Llib/hash.scm 1106 */

{ /* Llib/hash.scm 1108 */
 obj_t BgL_arg1934z00_2417;
{ /* Llib/hash.scm 1108 */
 obj_t BgL_arg1935z00_2418;
{ /* Llib/hash.scm 1108 */
 bool_t BgL_test5243z00_13391;
{ /* Llib/hash.scm 1108 */
 long BgL_tmpz00_13392;
BgL_tmpz00_13392 = 
VECTOR_LENGTH(BgL_newzd2buckszd2_2403); 
BgL_test5243z00_13391 = 
BOUND_CHECK(BgL_hz00_2416, BgL_tmpz00_13392); } 
if(BgL_test5243z00_13391)
{ /* Llib/hash.scm 1108 */
BgL_arg1935z00_2418 = 
VECTOR_REF(BgL_newzd2buckszd2_2403,BgL_hz00_2416); }  else 
{ 
 obj_t BgL_auxz00_13396;
BgL_auxz00_13396 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(44696L), BGl_string3872z00zz__hashz00, BgL_newzd2buckszd2_2403, 
(int)(
VECTOR_LENGTH(BgL_newzd2buckszd2_2403)), 
(int)(BgL_hz00_2416)); 
FAILURE(BgL_auxz00_13396,BFALSE,BFALSE);} } 
BgL_arg1934z00_2417 = 
MAKE_YOUNG_PAIR(BgL_cellz00_2413, BgL_arg1935z00_2418); } 
VECTOR_SET(BgL_newzd2buckszd2_2403,BgL_hz00_2416,BgL_arg1934z00_2417); } } } } } } 
{ 
 obj_t BgL_l1140z00_13405;
BgL_l1140z00_13405 = 
CDR(BgL_l1140z00_2410); 
BgL_l1140z00_2410 = BgL_l1140z00_13405; 
goto BgL_zc3z04anonymousza31932ze3z87_2411;} }  else 
{ /* Llib/hash.scm 1109 */
if(
NULLP(BgL_l1140z00_2410))
{ /* Llib/hash.scm 1109 */BTRUE; }  else 
{ /* Llib/hash.scm 1109 */
BGl_bigloozd2typezd2errorzf2locationzf2zz__errorz00(BGl_string3969z00zz__hashz00, BGl_string3970z00zz__hashz00, BgL_l1140z00_2410, BGl_string3867z00zz__hashz00, 
BINT(44499L)); } } } } 
{ 
 long BgL_iz00_13411;
BgL_iz00_13411 = 
(BgL_iz00_2405+1L); 
BgL_iz00_2405 = BgL_iz00_13411; 
goto BgL_zc3z04anonymousza31930ze3z87_2406;} }  else 
{ /* Llib/hash.scm 1102 */
BgL_tmpz00_13361 = ((bool_t)0)
; } 
return 
BBOOL(BgL_tmpz00_13361);} } }  else 
{ /* Llib/hash.scm 1114 */
 obj_t BgL_arg1939z00_2424;
{ /* Llib/hash.scm 1114 */
 long BgL_arg1940z00_2425;
{ /* Llib/hash.scm 1114 */
 long BgL_res2642z00_4939;
{ /* Llib/hash.scm 318 */
 bool_t BgL_test5245z00_13414;
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_13415;
{ /* Llib/hash.scm 318 */
 obj_t BgL_res2641z00_4938;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3777z00_6675;
BgL_aux3777z00_6675 = 
STRUCT_KEY(BgL_tablez00_156); 
if(
SYMBOLP(BgL_aux3777z00_6675))
{ /* Llib/hash.scm 318 */
BgL_res2641z00_4938 = BgL_aux3777z00_6675; }  else 
{ 
 obj_t BgL_auxz00_13419;
BgL_auxz00_13419 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string4070z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3777z00_6675); 
FAILURE(BgL_auxz00_13419,BFALSE,BFALSE);} } 
BgL_tmpz00_13415 = BgL_res2641z00_4938; } 
BgL_test5245z00_13414 = 
(BgL_tmpz00_13415==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5245z00_13414)
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_13424;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3779z00_6677;
{ /* Llib/hash.scm 318 */
 int BgL_tmpz00_13425;
BgL_tmpz00_13425 = 
(int)(0L); 
BgL_aux3779z00_6677 = 
STRUCT_REF(BgL_tablez00_156, BgL_tmpz00_13425); } 
if(
INTEGERP(BgL_aux3779z00_6677))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_13424 = BgL_aux3779z00_6677
; }  else 
{ 
 obj_t BgL_auxz00_13430;
BgL_auxz00_13430 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string4070z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3779z00_6677); 
FAILURE(BgL_auxz00_13430,BFALSE,BFALSE);} } 
BgL_res2642z00_4939 = 
(long)CINT(BgL_tmpz00_13424); }  else 
{ /* Llib/hash.scm 318 */
 obj_t BgL_tmpz00_13435;
{ /* Llib/hash.scm 318 */
 obj_t BgL_aux3780z00_6678;
BgL_aux3780z00_6678 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_156); 
if(
INTEGERP(BgL_aux3780z00_6678))
{ /* Llib/hash.scm 318 */
BgL_tmpz00_13435 = BgL_aux3780z00_6678
; }  else 
{ 
 obj_t BgL_auxz00_13439;
BgL_auxz00_13439 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(12331L), BGl_string4070z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_aux3780z00_6678); 
FAILURE(BgL_auxz00_13439,BFALSE,BFALSE);} } 
BgL_res2642z00_4939 = 
(long)CINT(BgL_tmpz00_13435); } } 
BgL_arg1940z00_2425 = BgL_res2642z00_4939; } 
{ /* Llib/hash.scm 1112 */
 obj_t BgL_list1941z00_2426;
{ /* Llib/hash.scm 1112 */
 obj_t BgL_arg1942z00_2427;
{ /* Llib/hash.scm 1112 */
 obj_t BgL_arg1943z00_2428;
BgL_arg1943z00_2428 = 
MAKE_YOUNG_PAIR(
BINT(BgL_arg1940z00_2425), BNIL); 
BgL_arg1942z00_2427 = 
MAKE_YOUNG_PAIR(BgL_maxzd2lenzd2_2394, BgL_arg1943z00_2428); } 
BgL_list1941z00_2426 = 
MAKE_YOUNG_PAIR(
BINT(BgL_newzd2lenzd2_2393), BgL_arg1942z00_2427); } 
BgL_arg1939z00_2424 = 
BGl_formatz00zz__r4_output_6_10_3z00(BGl_string4072z00zz__hashz00, BgL_list1941z00_2426); } } 
return 
BGl_errorz00zz__errorz00(BGl_string4014z00zz__hashz00, BgL_arg1939z00_2424, BgL_tablez00_156);} } } } } } } } 

}



/* hashtable-collisions */
BGL_EXPORTED_DEF obj_t BGl_hashtablezd2collisionszd2zz__hashz00(obj_t BgL_tablez00_157)
{
{ /* Llib/hash.scm 1120 */
if(
BGl_hashtablezd2weakzf3z21zz__hashz00(BgL_tablez00_157))
{ /* Llib/hash.scm 1121 */
return BNIL;}  else 
{ /* Llib/hash.scm 1121 */
BGL_TAIL return 
BGl_plainzd2hashtablezd2collisionsz00zz__hashz00(BgL_tablez00_157);} } 

}



/* &hashtable-collisions */
obj_t BGl_z62hashtablezd2collisionszb0zz__hashz00(obj_t BgL_envz00_5515, obj_t BgL_tablez00_5516)
{
{ /* Llib/hash.scm 1120 */
{ /* Llib/hash.scm 1121 */
 obj_t BgL_auxz00_13454;
if(
STRUCTP(BgL_tablez00_5516))
{ /* Llib/hash.scm 1121 */
BgL_auxz00_13454 = BgL_tablez00_5516
; }  else 
{ 
 obj_t BgL_auxz00_13457;
BgL_auxz00_13457 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(45206L), BGl_string4073z00zz__hashz00, BGl_string3915z00zz__hashz00, BgL_tablez00_5516); 
FAILURE(BgL_auxz00_13457,BFALSE,BFALSE);} 
return 
BGl_hashtablezd2collisionszd2zz__hashz00(BgL_auxz00_13454);} } 

}



/* plain-hashtable-collisions */
obj_t BGl_plainzd2hashtablezd2collisionsz00zz__hashz00(obj_t BgL_tablez00_158)
{
{ /* Llib/hash.scm 1128 */
{ /* Llib/hash.scm 1129 */
 obj_t BgL_bucketsz00_2431;
{ /* Llib/hash.scm 1129 */
 bool_t BgL_test5251z00_13462;
{ /* Llib/hash.scm 1129 */
 obj_t BgL_tmpz00_13463;
{ /* Llib/hash.scm 1129 */
 obj_t BgL_res2643z00_4945;
{ /* Llib/hash.scm 1129 */
 obj_t BgL_aux3783z00_6681;
BgL_aux3783z00_6681 = 
STRUCT_KEY(BgL_tablez00_158); 
if(
SYMBOLP(BgL_aux3783z00_6681))
{ /* Llib/hash.scm 1129 */
BgL_res2643z00_4945 = BgL_aux3783z00_6681; }  else 
{ 
 obj_t BgL_auxz00_13467;
BgL_auxz00_13467 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(45612L), BGl_string4074z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3783z00_6681); 
FAILURE(BgL_auxz00_13467,BFALSE,BFALSE);} } 
BgL_tmpz00_13463 = BgL_res2643z00_4945; } 
BgL_test5251z00_13462 = 
(BgL_tmpz00_13463==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5251z00_13462)
{ /* Llib/hash.scm 1129 */
 int BgL_tmpz00_13472;
BgL_tmpz00_13472 = 
(int)(2L); 
BgL_bucketsz00_2431 = 
STRUCT_REF(BgL_tablez00_158, BgL_tmpz00_13472); }  else 
{ /* Llib/hash.scm 1129 */
BgL_bucketsz00_2431 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tablez00_158); } } 
{ /* Llib/hash.scm 1129 */
 long BgL_bucketszd2lenzd2_2432;
{ /* Llib/hash.scm 1130 */
 obj_t BgL_vectorz00_4946;
if(
VECTORP(BgL_bucketsz00_2431))
{ /* Llib/hash.scm 1130 */
BgL_vectorz00_4946 = BgL_bucketsz00_2431; }  else 
{ 
 obj_t BgL_auxz00_13478;
BgL_auxz00_13478 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(45671L), BGl_string4074z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2431); 
FAILURE(BgL_auxz00_13478,BFALSE,BFALSE);} 
BgL_bucketszd2lenzd2_2432 = 
VECTOR_LENGTH(BgL_vectorz00_4946); } 
{ /* Llib/hash.scm 1130 */

{ 
 long BgL_iz00_2435; obj_t BgL_resz00_2436;
BgL_iz00_2435 = 0L; 
BgL_resz00_2436 = BNIL; 
BgL_zc3z04anonymousza31945ze3z87_2437:
if(
(BgL_iz00_2435==BgL_bucketszd2lenzd2_2432))
{ /* Llib/hash.scm 1133 */
return BgL_resz00_2436;}  else 
{ /* Llib/hash.scm 1135 */
 obj_t BgL_g1078z00_2439;
{ /* Llib/hash.scm 1135 */
 obj_t BgL_vectorz00_4949;
if(
VECTORP(BgL_bucketsz00_2431))
{ /* Llib/hash.scm 1135 */
BgL_vectorz00_4949 = BgL_bucketsz00_2431; }  else 
{ 
 obj_t BgL_auxz00_13487;
BgL_auxz00_13487 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(45809L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_bucketsz00_2431); 
FAILURE(BgL_auxz00_13487,BFALSE,BFALSE);} 
BgL_g1078z00_2439 = 
VECTOR_REF(BgL_vectorz00_4949,BgL_iz00_2435); } 
{ 
 obj_t BgL_bucketz00_2441; obj_t BgL_resz00_2442; long BgL_collz00_2443;
BgL_bucketz00_2441 = BgL_g1078z00_2439; 
BgL_resz00_2442 = BgL_resz00_2436; 
BgL_collz00_2443 = 0L; 
BgL_zc3z04anonymousza31947ze3z87_2444:
if(
NULLP(BgL_bucketz00_2441))
{ 
 obj_t BgL_resz00_13496; long BgL_iz00_13494;
BgL_iz00_13494 = 
(BgL_iz00_2435+1L); 
BgL_resz00_13496 = BgL_resz00_2442; 
BgL_resz00_2436 = BgL_resz00_13496; 
BgL_iz00_2435 = BgL_iz00_13494; 
goto BgL_zc3z04anonymousza31945ze3z87_2437;}  else 
{ /* Llib/hash.scm 1140 */
 obj_t BgL_arg1950z00_2447; obj_t BgL_arg1951z00_2448; long BgL_arg1952z00_2449;
{ /* Llib/hash.scm 1140 */
 obj_t BgL_pairz00_4952;
if(
PAIRP(BgL_bucketz00_2441))
{ /* Llib/hash.scm 1140 */
BgL_pairz00_4952 = BgL_bucketz00_2441; }  else 
{ 
 obj_t BgL_auxz00_13499;
BgL_auxz00_13499 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(45912L), BGl_string3926z00zz__hashz00, BGl_string3927z00zz__hashz00, BgL_bucketz00_2441); 
FAILURE(BgL_auxz00_13499,BFALSE,BFALSE);} 
BgL_arg1950z00_2447 = 
CDR(BgL_pairz00_4952); } 
if(
(BgL_collz00_2443>0L))
{ /* Llib/hash.scm 1141 */
BgL_arg1951z00_2448 = 
MAKE_YOUNG_PAIR(
BINT(BgL_collz00_2443), BgL_resz00_2442); }  else 
{ /* Llib/hash.scm 1141 */
BgL_arg1951z00_2448 = BgL_resz00_2442; } 
BgL_arg1952z00_2449 = 
(BgL_collz00_2443+1L); 
{ 
 long BgL_collz00_13511; obj_t BgL_resz00_13510; obj_t BgL_bucketz00_13509;
BgL_bucketz00_13509 = BgL_arg1950z00_2447; 
BgL_resz00_13510 = BgL_arg1951z00_2448; 
BgL_collz00_13511 = BgL_arg1952z00_2449; 
BgL_collz00_2443 = BgL_collz00_13511; 
BgL_resz00_2442 = BgL_resz00_13510; 
BgL_bucketz00_2441 = BgL_bucketz00_13509; 
goto BgL_zc3z04anonymousza31947ze3z87_2444;} } } } } } } } } 

}



/* get-hashnumber */
BGL_EXPORTED_DEF long BGl_getzd2hashnumberzd2zz__hashz00(obj_t BgL_keyz00_160)
{
{ /* Llib/hash.scm 1153 */
BGl_getzd2hashnumberzd2zz__hashz00:
if(
STRINGP(BgL_keyz00_160))
{ /* Llib/hash.scm 1156 */
 long BgL_arg1955z00_2454;
{ /* Llib/hash.scm 1267 */
 long BgL_arg2033z00_4956;
BgL_arg2033z00_4956 = 
STRING_LENGTH(BgL_keyz00_160); 
BgL_arg1955z00_2454 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_keyz00_160), 
(int)(0L), 
(int)(BgL_arg2033z00_4956)); } 
if(
(BgL_arg1955z00_2454<0L))
{ /* Llib/hash.scm 1156 */
return 
NEG(BgL_arg1955z00_2454);}  else 
{ /* Llib/hash.scm 1156 */
return BgL_arg1955z00_2454;} }  else 
{ /* Llib/hash.scm 1155 */
if(
SYMBOLP(BgL_keyz00_160))
{ /* Llib/hash.scm 1158 */
 long BgL_arg1957z00_2456;
BgL_arg1957z00_2456 = 
bgl_symbol_hash_number(BgL_keyz00_160); 
if(
(BgL_arg1957z00_2456<0L))
{ /* Llib/hash.scm 1158 */
return 
NEG(BgL_arg1957z00_2456);}  else 
{ /* Llib/hash.scm 1158 */
return BgL_arg1957z00_2456;} }  else 
{ /* Llib/hash.scm 1157 */
if(
KEYWORDP(BgL_keyz00_160))
{ /* Llib/hash.scm 1160 */
 long BgL_arg1959z00_2458;
BgL_arg1959z00_2458 = 
bgl_keyword_hash_number(BgL_keyz00_160); 
if(
(BgL_arg1959z00_2458<0L))
{ /* Llib/hash.scm 1160 */
return 
NEG(BgL_arg1959z00_2458);}  else 
{ /* Llib/hash.scm 1160 */
return BgL_arg1959z00_2458;} }  else 
{ /* Llib/hash.scm 1159 */
if(
INTEGERP(BgL_keyz00_160))
{ /* Llib/hash.scm 1162 */
 long BgL_nz00_4970;
BgL_nz00_4970 = 
(long)CINT(BgL_keyz00_160); 
if(
(BgL_nz00_4970<0L))
{ /* Llib/hash.scm 1162 */
return 
NEG(BgL_nz00_4970);}  else 
{ /* Llib/hash.scm 1162 */
return BgL_nz00_4970;} }  else 
{ /* Llib/hash.scm 1161 */
if(
ELONGP(BgL_keyz00_160))
{ /* Llib/hash.scm 1164 */
 long BgL_arg1962z00_2461;
{ /* Llib/hash.scm 1164 */
 long BgL_tmpz00_13542;
BgL_tmpz00_13542 = 
BELONG_TO_LONG(BgL_keyz00_160); 
BgL_arg1962z00_2461 = 
(long)(BgL_tmpz00_13542); } 
if(
(BgL_arg1962z00_2461<0L))
{ /* Llib/hash.scm 1164 */
return 
NEG(BgL_arg1962z00_2461);}  else 
{ /* Llib/hash.scm 1164 */
return BgL_arg1962z00_2461;} }  else 
{ /* Llib/hash.scm 1163 */
if(
LLONGP(BgL_keyz00_160))
{ /* Llib/hash.scm 1166 */
 long BgL_arg1964z00_2463;
{ /* Llib/hash.scm 1166 */
 BGL_LONGLONG_T BgL_tmpz00_13550;
BgL_tmpz00_13550 = 
BLLONG_TO_LLONG(BgL_keyz00_160); 
BgL_arg1964z00_2463 = 
(long)(BgL_tmpz00_13550); } 
if(
(BgL_arg1964z00_2463<0L))
{ /* Llib/hash.scm 1166 */
return 
NEG(BgL_arg1964z00_2463);}  else 
{ /* Llib/hash.scm 1166 */
return BgL_arg1964z00_2463;} }  else 
{ /* Llib/hash.scm 1165 */
if(
BGL_OBJECTP(BgL_keyz00_160))
{ /* Llib/hash.scm 1168 */
 long BgL_arg1966z00_2465;
BgL_arg1966z00_2465 = 
BGl_objectzd2hashnumberzd2zz__objectz00(
((BgL_objectz00_bglt)BgL_keyz00_160)); 
if(
(BgL_arg1966z00_2465<0L))
{ /* Llib/hash.scm 1168 */
return 
NEG(BgL_arg1966z00_2465);}  else 
{ /* Llib/hash.scm 1168 */
return BgL_arg1966z00_2465;} }  else 
{ /* Llib/hash.scm 1167 */
if(
FOREIGNP(BgL_keyz00_160))
{ /* Llib/hash.scm 1170 */
 long BgL_arg1968z00_2467;
BgL_arg1968z00_2467 = 
bgl_foreign_hash_number(BgL_keyz00_160); 
if(
(BgL_arg1968z00_2467<0L))
{ /* Llib/hash.scm 1170 */
return 
NEG(BgL_arg1968z00_2467);}  else 
{ /* Llib/hash.scm 1170 */
return BgL_arg1968z00_2467;} }  else 
{ /* Llib/hash.scm 1171 */
 bool_t BgL_test5275z00_13569;
if(
INTEGERP(BgL_keyz00_160))
{ /* Llib/hash.scm 1171 */
BgL_test5275z00_13569 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1171 */
BgL_test5275z00_13569 = 
REALP(BgL_keyz00_160)
; } 
if(BgL_test5275z00_13569)
{ /* Llib/hash.scm 1172 */
 long BgL_arg1970z00_2469;
{ /* Llib/hash.scm 1172 */
 double BgL_xz00_4990;
{ /* Llib/hash.scm 1172 */
 obj_t BgL_tmpz00_13573;
if(
REALP(BgL_keyz00_160))
{ /* Llib/hash.scm 1172 */
BgL_tmpz00_13573 = BgL_keyz00_160
; }  else 
{ 
 obj_t BgL_auxz00_13576;
BgL_auxz00_13576 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(47058L), BGl_string4075z00zz__hashz00, BGl_string4076z00zz__hashz00, BgL_keyz00_160); 
FAILURE(BgL_auxz00_13576,BFALSE,BFALSE);} 
BgL_xz00_4990 = 
REAL_TO_DOUBLE(BgL_tmpz00_13573); } 
BgL_arg1970z00_2469 = 
(long)(BgL_xz00_4990); } 
{ 
 obj_t BgL_keyz00_13582;
BgL_keyz00_13582 = 
BINT(BgL_arg1970z00_2469); 
BgL_keyz00_160 = BgL_keyz00_13582; 
goto BGl_getzd2hashnumberzd2zz__hashz00;} }  else 
{ /* Llib/hash.scm 1174 */
 long BgL_arg1971z00_2470;
BgL_arg1971z00_2470 = 
bgl_obj_hash_number(BgL_keyz00_160); 
if(
(BgL_arg1971z00_2470<0L))
{ /* Llib/hash.scm 1174 */
return 
NEG(BgL_arg1971z00_2470);}  else 
{ /* Llib/hash.scm 1174 */
return BgL_arg1971z00_2470;} } } } } } } } } } } 

}



/* &get-hashnumber */
obj_t BGl_z62getzd2hashnumberzb0zz__hashz00(obj_t BgL_envz00_5517, obj_t BgL_keyz00_5518)
{
{ /* Llib/hash.scm 1153 */
return 
BINT(
BGl_getzd2hashnumberzd2zz__hashz00(BgL_keyz00_5518));} 

}



/* get-hashnumber-persistent */
BGL_EXPORTED_DEF long BGl_getzd2hashnumberzd2persistentz00zz__hashz00(obj_t BgL_keyz00_161)
{
{ /* Llib/hash.scm 1181 */
BGL_TAIL return 
BGl_objzd2hashze70z35zz__hashz00(BgL_keyz00_161);} 

}



/* obj-hash~0 */
long BGl_objzd2hashze70z35zz__hashz00(obj_t BgL_keyz00_2519)
{
{ /* Llib/hash.scm 1247 */
BGl_objzd2hashze70z35zz__hashz00:
{ 
 obj_t BgL_keyz00_2477; obj_t BgL_keyz00_2502;
if(
CNSTP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1212 */
if(
(BgL_keyz00_2519==BTRUE))
{ /* Llib/hash.scm 1214 */
return 12L;}  else 
{ /* Llib/hash.scm 1214 */
if(
(BgL_keyz00_2519==BFALSE))
{ /* Llib/hash.scm 1215 */
return 445L;}  else 
{ /* Llib/hash.scm 1215 */
if(
(BgL_keyz00_2519==BUNSPEC))
{ /* Llib/hash.scm 1216 */
return 3199L;}  else 
{ /* Llib/hash.scm 1216 */
if(
(BgL_keyz00_2519==BNIL))
{ /* Llib/hash.scm 1217 */
return 453343L;}  else 
{ /* Llib/hash.scm 1217 */
return 21354L;} } } } }  else 
{ /* Llib/hash.scm 1212 */
if(
STRINGP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1220 */
 long BgL_arg1996z00_2523;
{ /* Llib/hash.scm 1220 */
 long BgL_arg1997z00_2524;
BgL_arg1997z00_2524 = 
STRING_LENGTH(BgL_keyz00_2519); 
BgL_arg1996z00_2523 = 
bgl_string_hash_persistent(
BSTRING_TO_STRING(BgL_keyz00_2519), 
(int)(0L), 
(int)(BgL_arg1997z00_2524)); } 
return 
(134217727L & BgL_arg1996z00_2523);}  else 
{ /* Llib/hash.scm 1219 */
if(
SYMBOLP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1221 */
return 
(134217727L & 
bgl_symbol_hash_number_persistent(BgL_keyz00_2519));}  else 
{ /* Llib/hash.scm 1221 */
if(
KEYWORDP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1223 */
return 
(134217727L & 
bgl_keyword_hash_number_persistent(BgL_keyz00_2519));}  else 
{ /* Llib/hash.scm 1223 */
if(
CHARP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1225 */
return 
(
CCHAR(BgL_keyz00_2519));}  else 
{ /* Llib/hash.scm 1225 */
if(
INTEGERP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1227 */
return 
(134217727L & 
(long)CINT(BgL_keyz00_2519));}  else 
{ /* Llib/hash.scm 1227 */
if(
ELONGP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1230 */
 long BgL_arg2006z00_2532;
{ /* Llib/hash.scm 1230 */
 long BgL_tmpz00_13627;
BgL_tmpz00_13627 = 
BELONG_TO_LONG(BgL_keyz00_2519); 
BgL_arg2006z00_2532 = 
(long)(BgL_tmpz00_13627); } 
return 
(134217727L & BgL_arg2006z00_2532);}  else 
{ /* Llib/hash.scm 1229 */
if(
LLONGP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1232 */
 long BgL_arg2008z00_2534;
{ /* Llib/hash.scm 1232 */
 BGL_LONGLONG_T BgL_tmpz00_13633;
BgL_tmpz00_13633 = 
BLLONG_TO_LLONG(BgL_keyz00_2519); 
BgL_arg2008z00_2534 = 
(long)(BgL_tmpz00_13633); } 
return 
(134217727L & BgL_arg2008z00_2534);}  else 
{ /* Llib/hash.scm 1231 */
if(
UCS2P(BgL_keyz00_2519))
{ /* Llib/hash.scm 1234 */
 long BgL_arg2010z00_2536;
{ /* Llib/hash.scm 1234 */
 int BgL_arg2011z00_2537;
{ /* Llib/hash.scm 1234 */
 ucs2_t BgL_ucs2z00_5042;
BgL_ucs2z00_5042 = 
CUCS2(BgL_keyz00_2519); 
{ /* Llib/hash.scm 1234 */
 obj_t BgL_tmpz00_13640;
BgL_tmpz00_13640 = 
BUCS2(BgL_ucs2z00_5042); 
BgL_arg2011z00_2537 = 
CUCS2(BgL_tmpz00_13640); } } 
BgL_arg2010z00_2536 = 
(39434L ^ 
(long)(BgL_arg2011z00_2537)); } 
return 
(134217727L & BgL_arg2010z00_2536);}  else 
{ /* Llib/hash.scm 1233 */
if(
BGL_DATEP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1236 */
 long BgL_arg2013z00_2539;
{ /* Llib/hash.scm 1236 */
 long BgL_arg2014z00_2540;
{ /* Llib/hash.scm 1236 */
 long BgL_arg2015z00_2541;
BgL_arg2015z00_2541 = 
bgl_date_to_seconds(BgL_keyz00_2519); 
BgL_arg2014z00_2540 = 
BGl_objzd2hashze70z35zz__hashz00(
make_belong(BgL_arg2015z00_2541)); } 
BgL_arg2013z00_2539 = 
(908L ^ BgL_arg2014z00_2540); } 
return 
(134217727L & BgL_arg2013z00_2539);}  else 
{ /* Llib/hash.scm 1237 */
 bool_t BgL_test5293z00_13653;
if(
INTEGERP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1237 */
BgL_test5293z00_13653 = ((bool_t)1)
; }  else 
{ /* Llib/hash.scm 1237 */
BgL_test5293z00_13653 = 
REALP(BgL_keyz00_2519)
; } 
if(BgL_test5293z00_13653)
{ /* Llib/hash.scm 1240 */
 long BgL_arg2018z00_2543;
{ /* Llib/hash.scm 1240 */
 int64_t BgL_arg2019z00_2544;
{ /* Llib/hash.scm 1240 */
 int64_t BgL_arg2020z00_2545; int64_t BgL_arg2021z00_2546;
{ /* Llib/hash.scm 1240 */
 double BgL_arg2023z00_2547;
{ /* Llib/hash.scm 1240 */
 double BgL_r1z00_5048;
{ /* Llib/hash.scm 1240 */
 obj_t BgL_tmpz00_13657;
if(
REALP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1240 */
BgL_tmpz00_13657 = BgL_keyz00_2519
; }  else 
{ 
 obj_t BgL_auxz00_13660;
BgL_auxz00_13660 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49092L), BGl_string4087z00zz__hashz00, BGl_string4076z00zz__hashz00, BgL_keyz00_2519); 
FAILURE(BgL_auxz00_13660,BFALSE,BFALSE);} 
BgL_r1z00_5048 = 
REAL_TO_DOUBLE(BgL_tmpz00_13657); } 
BgL_arg2023z00_2547 = 
(BgL_r1z00_5048*((double)1000.0)); } 
BgL_arg2020z00_2545 = 
(int64_t)(BgL_arg2023z00_2547); } 
BgL_arg2021z00_2546 = 
((int64_t)(1) << 
(int)(29L)); 
BgL_arg2019z00_2544 = 
(BgL_arg2020z00_2545 & BgL_arg2021z00_2546); } 
{ /* Llib/hash.scm 1239 */
 long BgL_arg2317z00_5055;
BgL_arg2317z00_5055 = 
(long)(BgL_arg2019z00_2544); 
BgL_arg2018z00_2543 = 
(long)(BgL_arg2317z00_5055); } } 
{ 
 obj_t BgL_keyz00_13672;
BgL_keyz00_13672 = 
BINT(BgL_arg2018z00_2543); 
BgL_keyz00_2519 = BgL_keyz00_13672; 
goto BGl_objzd2hashze70z35zz__hashz00;} }  else 
{ /* Llib/hash.scm 1237 */
if(
UCS2_STRINGP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1184 */
 long BgL_tmpz00_13676;
BgL_keyz00_2502 = BgL_keyz00_2519; 
{ /* Llib/hash.scm 1200 */
 int BgL_lenz00_2504;
BgL_lenz00_2504 = 
UCS2_STRING_LENGTH(BgL_keyz00_2502); 
{ /* Llib/hash.scm 1201 */
 long BgL_g1081z00_2505; long BgL_g1082z00_2506;
BgL_g1081z00_2505 = 
(
(long)(BgL_lenz00_2504)-1L); 
BgL_g1082z00_2506 = 
(134217727L & 
(235643L ^ 
(long)(BgL_lenz00_2504))); 
{ 
 long BgL_iz00_2508; long BgL_accz00_2509;
BgL_iz00_2508 = BgL_g1081z00_2505; 
BgL_accz00_2509 = BgL_g1082z00_2506; 
BgL_zc3z04anonymousza31985ze3z87_2510:
if(
(BgL_iz00_2508==-1L))
{ /* Llib/hash.scm 1203 */
BgL_tmpz00_13676 = BgL_accz00_2509
; }  else 
{ /* Llib/hash.scm 1205 */
 long BgL_arg1987z00_2512; long BgL_arg1988z00_2513;
BgL_arg1987z00_2512 = 
(BgL_iz00_2508-1L); 
{ /* Llib/hash.scm 1208 */
 long BgL_arg1989z00_2514;
{ /* Llib/hash.scm 1208 */
 long BgL_arg1990z00_2515;
{ /* Llib/hash.scm 1208 */
 ucs2_t BgL_arg1991z00_2516;
{ /* Llib/hash.scm 1208 */
 ucs2_t BgL_res2644z00_5030;
{ /* Llib/hash.scm 1208 */
 int BgL_kz00_5018;
BgL_kz00_5018 = 
(int)(BgL_iz00_2508); 
{ /* Llib/hash.scm 1208 */
 bool_t BgL_test5298z00_13687;
{ /* Llib/hash.scm 1208 */
 long BgL_auxz00_13690; long BgL_tmpz00_13688;
BgL_auxz00_13690 = 
(long)(
UCS2_STRING_LENGTH(BgL_keyz00_2502)); 
BgL_tmpz00_13688 = 
(long)(BgL_kz00_5018); 
BgL_test5298z00_13687 = 
BOUND_CHECK(BgL_tmpz00_13688, BgL_auxz00_13690); } 
if(BgL_test5298z00_13687)
{ /* Llib/hash.scm 1208 */
BgL_res2644z00_5030 = 
UCS2_STRING_REF(BgL_keyz00_2502, BgL_kz00_5018); }  else 
{ /* Llib/hash.scm 1208 */
 obj_t BgL_arg2377z00_5021;
{ /* Llib/hash.scm 1208 */
 obj_t BgL_arg2378z00_5022;
{ /* Llib/hash.scm 1208 */

BgL_arg2378z00_5022 = 
BGl_integerzd2ze3stringz31zz__r4_numbers_6_5_fixnumz00(
(
(long)(
UCS2_STRING_LENGTH(BgL_keyz00_2502))-1L), 10L); } 
BgL_arg2377z00_5021 = 
string_append_3(BGl_string4077z00zz__hashz00, BgL_arg2378z00_5022, BGl_string4078z00zz__hashz00); } 
{ /* Llib/hash.scm 1208 */
 obj_t BgL_tmpz00_13700;
{ /* Llib/hash.scm 1208 */
 obj_t BgL_aux3793z00_6691;
BgL_aux3793z00_6691 = 
BGl_errorz00zz__errorz00(BGl_symbol4079z00zz__hashz00, BgL_arg2377z00_5021, 
BINT(BgL_kz00_5018)); 
if(
UCS2P(BgL_aux3793z00_6691))
{ /* Llib/hash.scm 1208 */
BgL_tmpz00_13700 = BgL_aux3793z00_6691
; }  else 
{ 
 obj_t BgL_auxz00_13705;
BgL_auxz00_13705 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(48264L), BGl_string3922z00zz__hashz00, BGl_string4081z00zz__hashz00, BgL_aux3793z00_6691); 
FAILURE(BgL_auxz00_13705,BFALSE,BFALSE);} } 
BgL_res2644z00_5030 = 
CUCS2(BgL_tmpz00_13700); } } } } 
BgL_arg1991z00_2516 = BgL_res2644z00_5030; } 
BgL_arg1990z00_2515 = 
BGl_objzd2hashze70z35zz__hashz00(
BUCS2(BgL_arg1991z00_2516)); } 
BgL_arg1989z00_2514 = 
(BgL_arg1990z00_2515 ^ BgL_accz00_2509); } 
BgL_arg1988z00_2513 = 
(134217727L & BgL_arg1989z00_2514); } 
{ 
 long BgL_accz00_13715; long BgL_iz00_13714;
BgL_iz00_13714 = BgL_arg1987z00_2512; 
BgL_accz00_13715 = BgL_arg1988z00_2513; 
BgL_accz00_2509 = BgL_accz00_13715; 
BgL_iz00_2508 = BgL_iz00_13714; 
goto BgL_zc3z04anonymousza31985ze3z87_2510;} } } } } 
return 
(134217727L & BgL_tmpz00_13676);}  else 
{ /* Llib/hash.scm 1242 */
if(
BGL_HVECTORP(BgL_keyz00_2519))
{ /* Llib/hash.scm 1244 */
BgL_keyz00_2477 = BgL_keyz00_2519; 
{ /* Llib/hash.scm 1187 */
 long BgL_lenz00_2479;
BgL_lenz00_2479 = 
BGL_HVECTOR_LENGTH(BgL_keyz00_2477); 
{ /* Llib/hash.scm 1188 */
 obj_t BgL_tagz00_2480;
BgL_tagz00_2480 = 
BGl_homogeneouszd2vectorzd2infoz00zz__srfi4z00(BgL_keyz00_2477); 
{ /* Llib/hash.scm 1189 */
 obj_t BgL__z00_2481; obj_t BgL_getz00_2482; obj_t BgL__z00_2483; obj_t BgL__z00_2484;
{ /* Llib/hash.scm 1190 */
 obj_t BgL_tmpz00_4996;
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13721;
BgL_tmpz00_13721 = 
(int)(1L); 
BgL_tmpz00_4996 = 
BGL_MVALUES_VAL(BgL_tmpz00_13721); } 
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13724;
BgL_tmpz00_13724 = 
(int)(1L); 
BGL_MVALUES_VAL_SET(BgL_tmpz00_13724, BUNSPEC); } 
BgL__z00_2481 = BgL_tmpz00_4996; } 
{ /* Llib/hash.scm 1190 */
 obj_t BgL_tmpz00_4997;
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13727;
BgL_tmpz00_13727 = 
(int)(2L); 
BgL_tmpz00_4997 = 
BGL_MVALUES_VAL(BgL_tmpz00_13727); } 
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13730;
BgL_tmpz00_13730 = 
(int)(2L); 
BGL_MVALUES_VAL_SET(BgL_tmpz00_13730, BUNSPEC); } 
BgL_getz00_2482 = BgL_tmpz00_4997; } 
{ /* Llib/hash.scm 1190 */
 obj_t BgL_tmpz00_4998;
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13733;
BgL_tmpz00_13733 = 
(int)(3L); 
BgL_tmpz00_4998 = 
BGL_MVALUES_VAL(BgL_tmpz00_13733); } 
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13736;
BgL_tmpz00_13736 = 
(int)(3L); 
BGL_MVALUES_VAL_SET(BgL_tmpz00_13736, BUNSPEC); } 
BgL__z00_2483 = BgL_tmpz00_4998; } 
{ /* Llib/hash.scm 1190 */
 obj_t BgL_tmpz00_4999;
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13739;
BgL_tmpz00_13739 = 
(int)(4L); 
BgL_tmpz00_4999 = 
BGL_MVALUES_VAL(BgL_tmpz00_13739); } 
{ /* Llib/hash.scm 1190 */
 int BgL_tmpz00_13742;
BgL_tmpz00_13742 = 
(int)(4L); 
BGL_MVALUES_VAL_SET(BgL_tmpz00_13742, BUNSPEC); } 
BgL__z00_2484 = BgL_tmpz00_4999; } 
{ /* Llib/hash.scm 1190 */
 long BgL_g1079z00_2485; long BgL_g1080z00_2486;
BgL_g1079z00_2485 = 
(BgL_lenz00_2479-1L); 
BgL_g1080z00_2486 = 
(134217727L & 
(98723L ^ 
(134217727L & 
(BgL_lenz00_2479 ^ 
BGl_objzd2hashze70z35zz__hashz00(BgL_tagz00_2480))))); 
{ 
 long BgL_iz00_2488; long BgL_accz00_2489;
BgL_iz00_2488 = BgL_g1079z00_2485; 
BgL_accz00_2489 = BgL_g1080z00_2486; 
BgL_zc3z04anonymousza31974ze3z87_2490:
if(
(BgL_iz00_2488==-1L))
{ /* Llib/hash.scm 1193 */
return BgL_accz00_2489;}  else 
{ /* Llib/hash.scm 1195 */
 obj_t BgL_oz00_2492;
{ /* Llib/hash.scm 1195 */
 obj_t BgL_funz00_6695;
if(
PROCEDUREP(BgL_getz00_2482))
{ /* Llib/hash.scm 1195 */
BgL_funz00_6695 = BgL_getz00_2482; }  else 
{ 
 obj_t BgL_auxz00_13755;
BgL_auxz00_13755 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(47937L), BGl_string3922z00zz__hashz00, BGl_string3935z00zz__hashz00, BgL_getz00_2482); 
FAILURE(BgL_auxz00_13755,BFALSE,BFALSE);} 
if(
PROCEDURE_CORRECT_ARITYP(BgL_funz00_6695, 2L))
{ /* Llib/hash.scm 1195 */
BgL_oz00_2492 = 
(VA_PROCEDUREP( BgL_funz00_6695 ) ? ((obj_t (*)(obj_t, ...))PROCEDURE_ENTRY(BgL_funz00_6695))(BgL_getz00_2482, BgL_keyz00_2477, 
BINT(BgL_iz00_2488), BEOA) : ((obj_t (*)(obj_t, obj_t, obj_t))PROCEDURE_ENTRY(BgL_funz00_6695))(BgL_getz00_2482, BgL_keyz00_2477, 
BINT(BgL_iz00_2488)) ); }  else 
{ /* Llib/hash.scm 1195 */
FAILURE(BGl_string3937z00zz__hashz00,BGl_list4082z00zz__hashz00,BgL_funz00_6695);} } 
{ 
 long BgL_accz00_13770; long BgL_iz00_13768;
BgL_iz00_13768 = 
(BgL_iz00_2488-1L); 
BgL_accz00_13770 = 
(134217727L & 
(BgL_accz00_2489 ^ 
BGl_objzd2hashze70z35zz__hashz00(BgL_oz00_2492))); 
BgL_accz00_2489 = BgL_accz00_13770; 
BgL_iz00_2488 = BgL_iz00_13768; 
goto BgL_zc3z04anonymousza31974ze3z87_2490;} } } } } } } }  else 
{ /* Llib/hash.scm 1247 */
 obj_t BgL_arg2028z00_2551;
{ /* Llib/hash.scm 1247 */

BgL_arg2028z00_2551 = 
obj_to_string(BgL_keyz00_2519, BFALSE); } 
{ 
 obj_t BgL_keyz00_13775;
BgL_keyz00_13775 = BgL_arg2028z00_2551; 
BgL_keyz00_2519 = BgL_keyz00_13775; 
goto BGl_objzd2hashze70z35zz__hashz00;} } } } } } } } } } } } } } } } 

}



/* &get-hashnumber-persistent */
obj_t BGl_z62getzd2hashnumberzd2persistentz62zz__hashz00(obj_t BgL_envz00_5519, obj_t BgL_keyz00_5520)
{
{ /* Llib/hash.scm 1181 */
return 
BINT(
BGl_getzd2hashnumberzd2persistentz00zz__hashz00(BgL_keyz00_5520));} 

}



/* get-pointer-hashnumber */
BGL_EXPORTED_DEF long BGl_getzd2pointerzd2hashnumberz00zz__hashz00(obj_t BgL_ptrz00_162, long BgL_powerz00_163)
{
{ /* Llib/hash.scm 1254 */
BGL_TAIL return 
bgl_pointer_hashnumber(BgL_ptrz00_162, BgL_powerz00_163);} 

}



/* &get-pointer-hashnumber */
obj_t BGl_z62getzd2pointerzd2hashnumberz62zz__hashz00(obj_t BgL_envz00_5521, obj_t BgL_ptrz00_5522, obj_t BgL_powerz00_5523)
{
{ /* Llib/hash.scm 1254 */
{ /* Llib/hash.scm 1255 */
 long BgL_tmpz00_13779;
{ /* Llib/hash.scm 1255 */
 long BgL_auxz00_13780;
{ /* Llib/hash.scm 1255 */
 obj_t BgL_tmpz00_13781;
if(
INTEGERP(BgL_powerz00_5523))
{ /* Llib/hash.scm 1255 */
BgL_tmpz00_13781 = BgL_powerz00_5523
; }  else 
{ 
 obj_t BgL_auxz00_13784;
BgL_auxz00_13784 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49622L), BGl_string4088z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_powerz00_5523); 
FAILURE(BgL_auxz00_13784,BFALSE,BFALSE);} 
BgL_auxz00_13780 = 
(long)CINT(BgL_tmpz00_13781); } 
BgL_tmpz00_13779 = 
BGl_getzd2pointerzd2hashnumberz00zz__hashz00(BgL_ptrz00_5522, BgL_auxz00_13780); } 
return 
BINT(BgL_tmpz00_13779);} } 

}



/* _string-hash */
obj_t BGl__stringzd2hashzd2zz__hashz00(obj_t BgL_env1174z00_168, obj_t BgL_opt1173z00_167)
{
{ /* Llib/hash.scm 1260 */
{ /* Llib/hash.scm 1260 */
 obj_t BgL_g1175z00_2558;
BgL_g1175z00_2558 = 
VECTOR_REF(BgL_opt1173z00_167,0L); 
{ 

switch( 
VECTOR_LENGTH(BgL_opt1173z00_167)) { case 1L : 

{ /* Llib/hash.scm 1260 */

{ /* Llib/hash.scm 1260 */
 obj_t BgL_stringz00_5058;
if(
STRINGP(BgL_g1175z00_2558))
{ /* Llib/hash.scm 1260 */
BgL_stringz00_5058 = BgL_g1175z00_2558; }  else 
{ 
 obj_t BgL_auxz00_13794;
BgL_auxz00_13794 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49879L), BGl_string4092z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_g1175z00_2558); 
FAILURE(BgL_auxz00_13794,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_arg2032z00_5059;
BgL_arg2032z00_5059 = 
BINT(
STRING_LENGTH(BgL_stringz00_5058)); 
{ /* Llib/hash.scm 1261 */
 long BgL_tmpz00_13800;
{ /* Llib/hash.scm 1261 */
 int BgL_tmpz00_13801;
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13804;
if(
INTEGERP(BgL_arg2032z00_5059))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13804 = BgL_arg2032z00_5059
; }  else 
{ 
 obj_t BgL_auxz00_13807;
BgL_auxz00_13807 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49993L), BGl_string4092z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2032z00_5059); 
FAILURE(BgL_auxz00_13807,BFALSE,BFALSE);} 
BgL_tmpz00_13801 = 
CINT(BgL_tmpz00_13804); } 
BgL_tmpz00_13800 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_stringz00_5058), 
(int)(0L), BgL_tmpz00_13801); } 
return 
BINT(BgL_tmpz00_13800);} } } } break;case 2L : 

{ /* Llib/hash.scm 1260 */
 obj_t BgL_startz00_2563;
BgL_startz00_2563 = 
VECTOR_REF(BgL_opt1173z00_167,1L); 
{ /* Llib/hash.scm 1260 */

{ /* Llib/hash.scm 1260 */
 obj_t BgL_stringz00_5062;
if(
STRINGP(BgL_g1175z00_2558))
{ /* Llib/hash.scm 1260 */
BgL_stringz00_5062 = BgL_g1175z00_2558; }  else 
{ 
 obj_t BgL_auxz00_13817;
BgL_auxz00_13817 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49879L), BGl_string4092z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_g1175z00_2558); 
FAILURE(BgL_auxz00_13817,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_arg2032z00_5063;
BgL_arg2032z00_5063 = 
BINT(
STRING_LENGTH(BgL_stringz00_5062)); 
{ /* Llib/hash.scm 1261 */
 long BgL_tmpz00_13823;
{ /* Llib/hash.scm 1261 */
 int BgL_auxz00_13834; int BgL_tmpz00_13824;
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13835;
if(
INTEGERP(BgL_arg2032z00_5063))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13835 = BgL_arg2032z00_5063
; }  else 
{ 
 obj_t BgL_auxz00_13838;
BgL_auxz00_13838 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49993L), BGl_string4092z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2032z00_5063); 
FAILURE(BgL_auxz00_13838,BFALSE,BFALSE);} 
BgL_auxz00_13834 = 
CINT(BgL_tmpz00_13835); } 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13826;
if(
INTEGERP(BgL_startz00_2563))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13826 = BgL_startz00_2563
; }  else 
{ 
 obj_t BgL_auxz00_13829;
BgL_auxz00_13829 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49957L), BGl_string4092z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_startz00_2563); 
FAILURE(BgL_auxz00_13829,BFALSE,BFALSE);} 
BgL_tmpz00_13824 = 
CINT(BgL_tmpz00_13826); } 
BgL_tmpz00_13823 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_stringz00_5062), BgL_tmpz00_13824, BgL_auxz00_13834); } 
return 
BINT(BgL_tmpz00_13823);} } } } } break;case 3L : 

{ /* Llib/hash.scm 1260 */
 obj_t BgL_startz00_2565;
BgL_startz00_2565 = 
VECTOR_REF(BgL_opt1173z00_167,1L); 
{ /* Llib/hash.scm 1260 */
 obj_t BgL_lenz00_2566;
BgL_lenz00_2566 = 
VECTOR_REF(BgL_opt1173z00_167,2L); 
{ /* Llib/hash.scm 1260 */

{ /* Llib/hash.scm 1260 */
 obj_t BgL_stringz00_5066;
if(
STRINGP(BgL_g1175z00_2558))
{ /* Llib/hash.scm 1260 */
BgL_stringz00_5066 = BgL_g1175z00_2558; }  else 
{ 
 obj_t BgL_auxz00_13849;
BgL_auxz00_13849 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49879L), BGl_string4092z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_g1175z00_2558); 
FAILURE(BgL_auxz00_13849,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_arg2032z00_5067;
if(
CBOOL(BgL_lenz00_2566))
{ /* Llib/hash.scm 1261 */
BgL_arg2032z00_5067 = BgL_lenz00_2566; }  else 
{ /* Llib/hash.scm 1261 */
BgL_arg2032z00_5067 = 
BINT(
STRING_LENGTH(BgL_stringz00_5066)); } 
{ /* Llib/hash.scm 1261 */
 long BgL_tmpz00_13857;
{ /* Llib/hash.scm 1261 */
 int BgL_auxz00_13868; int BgL_tmpz00_13858;
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13869;
if(
INTEGERP(BgL_arg2032z00_5067))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13869 = BgL_arg2032z00_5067
; }  else 
{ 
 obj_t BgL_auxz00_13872;
BgL_auxz00_13872 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49993L), BGl_string4092z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2032z00_5067); 
FAILURE(BgL_auxz00_13872,BFALSE,BFALSE);} 
BgL_auxz00_13868 = 
CINT(BgL_tmpz00_13869); } 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13860;
if(
INTEGERP(BgL_startz00_2565))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13860 = BgL_startz00_2565
; }  else 
{ 
 obj_t BgL_auxz00_13863;
BgL_auxz00_13863 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49957L), BGl_string4092z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_startz00_2565); 
FAILURE(BgL_auxz00_13863,BFALSE,BFALSE);} 
BgL_tmpz00_13858 = 
CINT(BgL_tmpz00_13860); } 
BgL_tmpz00_13857 = 
bgl_string_hash(
BSTRING_TO_STRING(BgL_stringz00_5066), BgL_tmpz00_13858, BgL_auxz00_13868); } 
return 
BINT(BgL_tmpz00_13857);} } } } } } break;
default: 
return 
BGl_errorz00zz__errorz00(BGl_symbol4089z00zz__hashz00, BGl_string4091z00zz__hashz00, 
BINT(
VECTOR_LENGTH(BgL_opt1173z00_167)));} } } } 

}



/* string-hash */
BGL_EXPORTED_DEF long BGl_stringzd2hashzd2zz__hashz00(obj_t BgL_stringz00_164, obj_t BgL_startz00_165, obj_t BgL_lenz00_166)
{
{ /* Llib/hash.scm 1260 */
{ /* Llib/hash.scm 1261 */
 obj_t BgL_arg2032z00_5070;
if(
CBOOL(BgL_lenz00_166))
{ /* Llib/hash.scm 1261 */
BgL_arg2032z00_5070 = BgL_lenz00_166; }  else 
{ /* Llib/hash.scm 1261 */
BgL_arg2032z00_5070 = 
BINT(
STRING_LENGTH(BgL_stringz00_164)); } 
{ /* Llib/hash.scm 1261 */
 int BgL_auxz00_13898; int BgL_tmpz00_13888;
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13899;
if(
INTEGERP(BgL_arg2032z00_5070))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13899 = BgL_arg2032z00_5070
; }  else 
{ 
 obj_t BgL_auxz00_13902;
BgL_auxz00_13902 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49993L), BGl_string4090z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2032z00_5070); 
FAILURE(BgL_auxz00_13902,BFALSE,BFALSE);} 
BgL_auxz00_13898 = 
CINT(BgL_tmpz00_13899); } 
{ /* Llib/hash.scm 1261 */
 obj_t BgL_tmpz00_13890;
if(
INTEGERP(BgL_startz00_165))
{ /* Llib/hash.scm 1261 */
BgL_tmpz00_13890 = BgL_startz00_165
; }  else 
{ 
 obj_t BgL_auxz00_13893;
BgL_auxz00_13893 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(49957L), BGl_string4090z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_startz00_165); 
FAILURE(BgL_auxz00_13893,BFALSE,BFALSE);} 
BgL_tmpz00_13888 = 
CINT(BgL_tmpz00_13890); } 
return 
bgl_string_hash(
BSTRING_TO_STRING(BgL_stringz00_164), BgL_tmpz00_13888, BgL_auxz00_13898);} } } 

}



/* string-hash-number */
BGL_EXPORTED_DEF long BGl_stringzd2hashzd2numberz00zz__hashz00(obj_t BgL_stringz00_169)
{
{ /* Llib/hash.scm 1266 */
{ /* Llib/hash.scm 1267 */
 long BgL_arg2033z00_6752;
BgL_arg2033z00_6752 = 
STRING_LENGTH(BgL_stringz00_169); 
return 
bgl_string_hash(
BSTRING_TO_STRING(BgL_stringz00_169), 
(int)(0L), 
(int)(BgL_arg2033z00_6752));} } 

}



/* &string-hash-number */
obj_t BGl_z62stringzd2hashzd2numberz62zz__hashz00(obj_t BgL_envz00_5524, obj_t BgL_stringz00_5525)
{
{ /* Llib/hash.scm 1266 */
{ /* Llib/hash.scm 1267 */
 long BgL_tmpz00_13913;
{ /* Llib/hash.scm 1267 */
 obj_t BgL_auxz00_13914;
if(
STRINGP(BgL_stringz00_5525))
{ /* Llib/hash.scm 1267 */
BgL_auxz00_13914 = BgL_stringz00_5525
; }  else 
{ 
 obj_t BgL_auxz00_13917;
BgL_auxz00_13917 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50289L), BGl_string4093z00zz__hashz00, BGl_string3909z00zz__hashz00, BgL_stringz00_5525); 
FAILURE(BgL_auxz00_13917,BFALSE,BFALSE);} 
BgL_tmpz00_13913 = 
BGl_stringzd2hashzd2numberz00zz__hashz00(BgL_auxz00_13914); } 
return 
BINT(BgL_tmpz00_13913);} } 

}



/* open-string-hashtable-rehash! */
bool_t BGl_openzd2stringzd2hashtablezd2rehashz12zc0zz__hashz00(obj_t BgL_tz00_173)
{
{ /* Llib/hash.scm 1278 */
{ /* Llib/hash.scm 1279 */
 obj_t BgL_osiza7eza7_2571;
{ /* Llib/hash.scm 1279 */
 bool_t BgL_test5318z00_13923;
{ /* Llib/hash.scm 1279 */
 obj_t BgL_tmpz00_13924;
{ /* Llib/hash.scm 1279 */
 obj_t BgL_res2647z00_5086;
{ /* Llib/hash.scm 1279 */
 obj_t BgL_aux3816z00_6715;
BgL_aux3816z00_6715 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3816z00_6715))
{ /* Llib/hash.scm 1279 */
BgL_res2647z00_5086 = BgL_aux3816z00_6715; }  else 
{ 
 obj_t BgL_auxz00_13928;
BgL_auxz00_13928 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50955L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3816z00_6715); 
FAILURE(BgL_auxz00_13928,BFALSE,BFALSE);} } 
BgL_tmpz00_13924 = BgL_res2647z00_5086; } 
BgL_test5318z00_13923 = 
(BgL_tmpz00_13924==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5318z00_13923)
{ /* Llib/hash.scm 1279 */
 int BgL_tmpz00_13933;
BgL_tmpz00_13933 = 
(int)(1L); 
BgL_osiza7eza7_2571 = 
STRUCT_REF(BgL_tz00_173, BgL_tmpz00_13933); }  else 
{ /* Llib/hash.scm 1279 */
BgL_osiza7eza7_2571 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ /* Llib/hash.scm 1279 */
 long BgL_osiza7e3za7_2572;
{ /* Llib/hash.scm 1280 */
 long BgL_za72za7_5087;
{ /* Llib/hash.scm 1280 */
 obj_t BgL_tmpz00_13937;
if(
INTEGERP(BgL_osiza7eza7_2571))
{ /* Llib/hash.scm 1280 */
BgL_tmpz00_13937 = BgL_osiza7eza7_2571
; }  else 
{ 
 obj_t BgL_auxz00_13940;
BgL_auxz00_13940 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51004L), BGl_string4094z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_osiza7eza7_2571); 
FAILURE(BgL_auxz00_13940,BFALSE,BFALSE);} 
BgL_za72za7_5087 = 
(long)CINT(BgL_tmpz00_13937); } 
BgL_osiza7e3za7_2572 = 
(3L*BgL_za72za7_5087); } 
{ /* Llib/hash.scm 1280 */
 obj_t BgL_obucketsz00_2573;
{ /* Llib/hash.scm 1281 */
 bool_t BgL_test5321z00_13946;
{ /* Llib/hash.scm 1281 */
 obj_t BgL_tmpz00_13947;
{ /* Llib/hash.scm 1281 */
 obj_t BgL_res2648z00_5091;
{ /* Llib/hash.scm 1281 */
 obj_t BgL_aux3819z00_6718;
BgL_aux3819z00_6718 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3819z00_6718))
{ /* Llib/hash.scm 1281 */
BgL_res2648z00_5091 = BgL_aux3819z00_6718; }  else 
{ 
 obj_t BgL_auxz00_13951;
BgL_auxz00_13951 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51025L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3819z00_6718); 
FAILURE(BgL_auxz00_13951,BFALSE,BFALSE);} } 
BgL_tmpz00_13947 = BgL_res2648z00_5091; } 
BgL_test5321z00_13946 = 
(BgL_tmpz00_13947==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5321z00_13946)
{ /* Llib/hash.scm 1281 */
 int BgL_tmpz00_13956;
BgL_tmpz00_13956 = 
(int)(2L); 
BgL_obucketsz00_2573 = 
STRUCT_REF(BgL_tz00_173, BgL_tmpz00_13956); }  else 
{ /* Llib/hash.scm 1281 */
BgL_obucketsz00_2573 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ /* Llib/hash.scm 1281 */
 long BgL_nsiza7eza7_2574;
{ /* Llib/hash.scm 1282 */
 long BgL_tmpz00_13960;
{ /* Llib/hash.scm 1282 */
 long BgL_za71za7_5092;
{ /* Llib/hash.scm 1282 */
 obj_t BgL_tmpz00_13961;
if(
INTEGERP(BgL_osiza7eza7_2571))
{ /* Llib/hash.scm 1282 */
BgL_tmpz00_13961 = BgL_osiza7eza7_2571
; }  else 
{ 
 obj_t BgL_auxz00_13964;
BgL_auxz00_13964 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51071L), BGl_string4094z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_osiza7eza7_2571); 
FAILURE(BgL_auxz00_13964,BFALSE,BFALSE);} 
BgL_za71za7_5092 = 
(long)CINT(BgL_tmpz00_13961); } 
BgL_tmpz00_13960 = 
(BgL_za71za7_5092*2L); } 
BgL_nsiza7eza7_2574 = 
(1L+BgL_tmpz00_13960); } 
{ /* Llib/hash.scm 1282 */
 obj_t BgL_nbucketsz00_2575;
BgL_nbucketsz00_2575 = 
make_vector(
(BgL_nsiza7eza7_2574*3L), BFALSE); 
{ /* Llib/hash.scm 1283 */

{ /* Llib/hash.scm 1284 */
 bool_t BgL_test5324z00_13973;
{ /* Llib/hash.scm 1284 */
 obj_t BgL_tmpz00_13974;
{ /* Llib/hash.scm 1284 */
 obj_t BgL_res2649z00_5098;
{ /* Llib/hash.scm 1284 */
 obj_t BgL_aux3822z00_6721;
BgL_aux3822z00_6721 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3822z00_6721))
{ /* Llib/hash.scm 1284 */
BgL_res2649z00_5098 = BgL_aux3822z00_6721; }  else 
{ 
 obj_t BgL_auxz00_13978;
BgL_auxz00_13978 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51134L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3822z00_6721); 
FAILURE(BgL_auxz00_13978,BFALSE,BFALSE);} } 
BgL_tmpz00_13974 = BgL_res2649z00_5098; } 
BgL_test5324z00_13973 = 
(BgL_tmpz00_13974==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5324z00_13973)
{ /* Llib/hash.scm 1284 */
 obj_t BgL_auxz00_13985; int BgL_tmpz00_13983;
BgL_auxz00_13985 = 
BINT(BgL_nsiza7eza7_2574); 
BgL_tmpz00_13983 = 
(int)(1L); 
STRUCT_SET(BgL_tz00_173, BgL_tmpz00_13983, BgL_auxz00_13985); }  else 
{ /* Llib/hash.scm 1284 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ /* Llib/hash.scm 1285 */
 bool_t BgL_test5326z00_13989;
{ /* Llib/hash.scm 1285 */
 obj_t BgL_tmpz00_13990;
{ /* Llib/hash.scm 1285 */
 obj_t BgL_res2650z00_5102;
{ /* Llib/hash.scm 1285 */
 obj_t BgL_aux3824z00_6723;
BgL_aux3824z00_6723 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3824z00_6723))
{ /* Llib/hash.scm 1285 */
BgL_res2650z00_5102 = BgL_aux3824z00_6723; }  else 
{ 
 obj_t BgL_auxz00_13994;
BgL_auxz00_13994 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51181L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3824z00_6723); 
FAILURE(BgL_auxz00_13994,BFALSE,BFALSE);} } 
BgL_tmpz00_13990 = BgL_res2650z00_5102; } 
BgL_test5326z00_13989 = 
(BgL_tmpz00_13990==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5326z00_13989)
{ /* Llib/hash.scm 1285 */
 int BgL_tmpz00_13999;
BgL_tmpz00_13999 = 
(int)(2L); 
STRUCT_SET(BgL_tz00_173, BgL_tmpz00_13999, BgL_nbucketsz00_2575); }  else 
{ /* Llib/hash.scm 1285 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ /* Llib/hash.scm 1273 */
 bool_t BgL_test5328z00_14003;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_tmpz00_14004;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_res2651z00_5106;
{ /* Llib/hash.scm 1273 */
 obj_t BgL_aux3826z00_6725;
BgL_aux3826z00_6725 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3826z00_6725))
{ /* Llib/hash.scm 1273 */
BgL_res2651z00_5106 = BgL_aux3826z00_6725; }  else 
{ 
 obj_t BgL_auxz00_14008;
BgL_auxz00_14008 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(50639L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3826z00_6725); 
FAILURE(BgL_auxz00_14008,BFALSE,BFALSE);} } 
BgL_tmpz00_14004 = BgL_res2651z00_5106; } 
BgL_test5328z00_14003 = 
(BgL_tmpz00_14004==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5328z00_14003)
{ /* Llib/hash.scm 1273 */
 obj_t BgL_auxz00_14015; int BgL_tmpz00_14013;
BgL_auxz00_14015 = 
BINT(0L); 
BgL_tmpz00_14013 = 
(int)(6L); 
STRUCT_SET(BgL_tz00_173, BgL_tmpz00_14013, BgL_auxz00_14015); }  else 
{ /* Llib/hash.scm 1273 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ /* Llib/hash.scm 1287 */
 bool_t BgL_test5330z00_14019;
{ /* Llib/hash.scm 1287 */
 obj_t BgL_tmpz00_14020;
{ /* Llib/hash.scm 1287 */
 obj_t BgL_res2652z00_5110;
{ /* Llib/hash.scm 1287 */
 obj_t BgL_aux3828z00_6727;
BgL_aux3828z00_6727 = 
STRUCT_KEY(BgL_tz00_173); 
if(
SYMBOLP(BgL_aux3828z00_6727))
{ /* Llib/hash.scm 1287 */
BgL_res2652z00_5110 = BgL_aux3828z00_6727; }  else 
{ 
 obj_t BgL_auxz00_14024;
BgL_auxz00_14024 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51263L), BGl_string4094z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3828z00_6727); 
FAILURE(BgL_auxz00_14024,BFALSE,BFALSE);} } 
BgL_tmpz00_14020 = BgL_res2652z00_5110; } 
BgL_test5330z00_14019 = 
(BgL_tmpz00_14020==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5330z00_14019)
{ /* Llib/hash.scm 1287 */
 obj_t BgL_auxz00_14031; int BgL_tmpz00_14029;
BgL_auxz00_14031 = 
BINT(0L); 
BgL_tmpz00_14029 = 
(int)(0L); 
STRUCT_SET(BgL_tz00_173, BgL_tmpz00_14029, BgL_auxz00_14031); }  else 
{ /* Llib/hash.scm 1287 */
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_173); } } 
{ 
 long BgL_iz00_2577;
BgL_iz00_2577 = 0L; 
BgL_zc3z04anonymousza32034ze3z87_2578:
if(
(BgL_iz00_2577==BgL_osiza7e3za7_2572))
{ /* Llib/hash.scm 1289 */
return ((bool_t)0);}  else 
{ /* Llib/hash.scm 1290 */
 obj_t BgL_cz00_2580;
{ /* Llib/hash.scm 1290 */
 obj_t BgL_vectorz00_5113;
if(
VECTORP(BgL_obucketsz00_2573))
{ /* Llib/hash.scm 1290 */
BgL_vectorz00_5113 = BgL_obucketsz00_2573; }  else 
{ 
 obj_t BgL_auxz00_14039;
BgL_auxz00_14039 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51365L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_obucketsz00_2573); 
FAILURE(BgL_auxz00_14039,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1290 */
 bool_t BgL_test5334z00_14043;
{ /* Llib/hash.scm 1290 */
 long BgL_tmpz00_14044;
BgL_tmpz00_14044 = 
VECTOR_LENGTH(BgL_vectorz00_5113); 
BgL_test5334z00_14043 = 
BOUND_CHECK(BgL_iz00_2577, BgL_tmpz00_14044); } 
if(BgL_test5334z00_14043)
{ /* Llib/hash.scm 1290 */
BgL_cz00_2580 = 
VECTOR_REF(BgL_vectorz00_5113,BgL_iz00_2577); }  else 
{ 
 obj_t BgL_auxz00_14048;
BgL_auxz00_14048 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51353L), BGl_string3872z00zz__hashz00, BgL_vectorz00_5113, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_5113)), 
(int)(BgL_iz00_2577)); 
FAILURE(BgL_auxz00_14048,BFALSE,BFALSE);} } } 
if(
CBOOL(BgL_cz00_2580))
{ /* Llib/hash.scm 1292 */
 obj_t BgL_hz00_2581;
{ /* Llib/hash.scm 1292 */
 long BgL_arg2038z00_2584;
BgL_arg2038z00_2584 = 
(BgL_iz00_2577+2L); 
{ /* Llib/hash.scm 1292 */
 obj_t BgL_vectorz00_5116;
if(
VECTORP(BgL_obucketsz00_2573))
{ /* Llib/hash.scm 1292 */
BgL_vectorz00_5116 = BgL_obucketsz00_2573; }  else 
{ 
 obj_t BgL_auxz00_14060;
BgL_auxz00_14060 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51420L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_obucketsz00_2573); 
FAILURE(BgL_auxz00_14060,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1292 */
 bool_t BgL_test5337z00_14064;
{ /* Llib/hash.scm 1292 */
 long BgL_tmpz00_14065;
BgL_tmpz00_14065 = 
VECTOR_LENGTH(BgL_vectorz00_5116); 
BgL_test5337z00_14064 = 
BOUND_CHECK(BgL_arg2038z00_2584, BgL_tmpz00_14065); } 
if(BgL_test5337z00_14064)
{ /* Llib/hash.scm 1292 */
BgL_hz00_2581 = 
VECTOR_REF(BgL_vectorz00_5116,BgL_arg2038z00_2584); }  else 
{ 
 obj_t BgL_auxz00_14069;
BgL_auxz00_14069 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51408L), BGl_string3872z00zz__hashz00, BgL_vectorz00_5116, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_5116)), 
(int)(BgL_arg2038z00_2584)); 
FAILURE(BgL_auxz00_14069,BFALSE,BFALSE);} } } } 
if(
CBOOL(BgL_hz00_2581))
{ /* Llib/hash.scm 1295 */
 obj_t BgL_arg2036z00_2582;
{ /* Llib/hash.scm 1295 */
 long BgL_arg2037z00_2583;
BgL_arg2037z00_2583 = 
(BgL_iz00_2577+1L); 
{ /* Llib/hash.scm 1295 */
 obj_t BgL_vectorz00_5119;
if(
VECTORP(BgL_obucketsz00_2573))
{ /* Llib/hash.scm 1295 */
BgL_vectorz00_5119 = BgL_obucketsz00_2573; }  else 
{ 
 obj_t BgL_auxz00_14081;
BgL_auxz00_14081 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51515L), BGl_string3922z00zz__hashz00, BGl_string3923z00zz__hashz00, BgL_obucketsz00_2573); 
FAILURE(BgL_auxz00_14081,BFALSE,BFALSE);} 
{ /* Llib/hash.scm 1295 */
 bool_t BgL_test5340z00_14085;
{ /* Llib/hash.scm 1295 */
 long BgL_tmpz00_14086;
BgL_tmpz00_14086 = 
VECTOR_LENGTH(BgL_vectorz00_5119); 
BgL_test5340z00_14085 = 
BOUND_CHECK(BgL_arg2037z00_2583, BgL_tmpz00_14086); } 
if(BgL_test5340z00_14085)
{ /* Llib/hash.scm 1295 */
BgL_arg2036z00_2582 = 
VECTOR_REF(BgL_vectorz00_5119,BgL_arg2037z00_2583); }  else 
{ 
 obj_t BgL_auxz00_14090;
BgL_auxz00_14090 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(51503L), BGl_string3872z00zz__hashz00, BgL_vectorz00_5119, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_5119)), 
(int)(BgL_arg2037z00_2583)); 
FAILURE(BgL_auxz00_14090,BFALSE,BFALSE);} } } } 
BGl_openzd2stringzd2hashtablezd2putzf2hashz12z32zz__hashz00(BgL_tz00_173, BgL_cz00_2580, BgL_arg2036z00_2582, BgL_hz00_2581); }  else 
{ /* Llib/hash.scm 1293 */BFALSE; } }  else 
{ /* Llib/hash.scm 1291 */BFALSE; } 
{ 
 long BgL_iz00_14098;
BgL_iz00_14098 = 
(BgL_iz00_2577+3L); 
BgL_iz00_2577 = BgL_iz00_14098; 
goto BgL_zc3z04anonymousza32034ze3z87_2578;} } } } } } } } } } 

}



/* open-string-hashtable-size-inc! */
obj_t BGl_openzd2stringzd2hashtablezd2siza7ezd2incz12zb5zz__hashz00(obj_t BgL_tz00_175)
{
{ /* Llib/hash.scm 1308 */
{ /* Llib/hash.scm 1309 */
 obj_t BgL_nz00_2591;
{ /* Llib/hash.scm 1309 */
 bool_t BgL_test5341z00_14100;
{ /* Llib/hash.scm 1309 */
 obj_t BgL_tmpz00_14101;
{ /* Llib/hash.scm 1309 */
 obj_t BgL_res2655z00_5136;
{ /* Llib/hash.scm 1309 */
 obj_t BgL_aux3836z00_6735;
BgL_aux3836z00_6735 = 
STRUCT_KEY(BgL_tz00_175); 
if(
SYMBOLP(BgL_aux3836z00_6735))
{ /* Llib/hash.scm 1309 */
BgL_res2655z00_5136 = BgL_aux3836z00_6735; }  else 
{ 
 obj_t BgL_auxz00_14105;
BgL_auxz00_14105 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52198L), BGl_string4095z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3836z00_6735); 
FAILURE(BgL_auxz00_14105,BFALSE,BFALSE);} } 
BgL_tmpz00_14101 = BgL_res2655z00_5136; } 
BgL_test5341z00_14100 = 
(BgL_tmpz00_14101==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5341z00_14100)
{ /* Llib/hash.scm 1309 */
 int BgL_tmpz00_14110;
BgL_tmpz00_14110 = 
(int)(0L); 
BgL_nz00_2591 = 
STRUCT_REF(BgL_tz00_175, BgL_tmpz00_14110); }  else 
{ /* Llib/hash.scm 1309 */
BgL_nz00_2591 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_175); } } 
{ /* Llib/hash.scm 1310 */
 bool_t BgL_test5343z00_14114;
{ /* Llib/hash.scm 1310 */
 long BgL_arg2050z00_2597; long BgL_arg2051z00_2598;
{ /* Llib/hash.scm 1310 */
 long BgL_za71za7_5137;
{ /* Llib/hash.scm 1310 */
 obj_t BgL_tmpz00_14115;
if(
INTEGERP(BgL_nz00_2591))
{ /* Llib/hash.scm 1310 */
BgL_tmpz00_14115 = BgL_nz00_2591
; }  else 
{ 
 obj_t BgL_auxz00_14118;
BgL_auxz00_14118 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52240L), BGl_string4095z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_nz00_2591); 
FAILURE(BgL_auxz00_14118,BFALSE,BFALSE);} 
BgL_za71za7_5137 = 
(long)CINT(BgL_tmpz00_14115); } 
BgL_arg2050z00_2597 = 
(BgL_za71za7_5137*3L); } 
{ /* Llib/hash.scm 1310 */
 obj_t BgL_arg2053z00_2599;
{ /* Llib/hash.scm 1310 */
 bool_t BgL_test5345z00_14124;
{ /* Llib/hash.scm 1310 */
 obj_t BgL_tmpz00_14125;
{ /* Llib/hash.scm 1310 */
 obj_t BgL_res2656z00_5141;
{ /* Llib/hash.scm 1310 */
 obj_t BgL_aux3839z00_6738;
BgL_aux3839z00_6738 = 
STRUCT_KEY(BgL_tz00_175); 
if(
SYMBOLP(BgL_aux3839z00_6738))
{ /* Llib/hash.scm 1310 */
BgL_res2656z00_5141 = BgL_aux3839z00_6738; }  else 
{ 
 obj_t BgL_auxz00_14129;
BgL_auxz00_14129 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52252L), BGl_string4095z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3839z00_6738); 
FAILURE(BgL_auxz00_14129,BFALSE,BFALSE);} } 
BgL_tmpz00_14125 = BgL_res2656z00_5141; } 
BgL_test5345z00_14124 = 
(BgL_tmpz00_14125==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5345z00_14124)
{ /* Llib/hash.scm 1310 */
 int BgL_tmpz00_14134;
BgL_tmpz00_14134 = 
(int)(1L); 
BgL_arg2053z00_2599 = 
STRUCT_REF(BgL_tz00_175, BgL_tmpz00_14134); }  else 
{ /* Llib/hash.scm 1310 */
BgL_arg2053z00_2599 = 
BGl_errorz00zz__errorz00(BGl_string3850z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_175); } } 
{ /* Llib/hash.scm 1310 */
 long BgL_za72za7_5142;
{ /* Llib/hash.scm 1310 */
 obj_t BgL_tmpz00_14138;
if(
INTEGERP(BgL_arg2053z00_2599))
{ /* Llib/hash.scm 1310 */
BgL_tmpz00_14138 = BgL_arg2053z00_2599
; }  else 
{ 
 obj_t BgL_auxz00_14141;
BgL_auxz00_14141 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52280L), BGl_string4095z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_arg2053z00_2599); 
FAILURE(BgL_auxz00_14141,BFALSE,BFALSE);} 
BgL_za72za7_5142 = 
(long)CINT(BgL_tmpz00_14138); } 
BgL_arg2051z00_2598 = 
(2L*BgL_za72za7_5142); } } 
BgL_test5343z00_14114 = 
(BgL_arg2050z00_2597>BgL_arg2051z00_2598); } 
if(BgL_test5343z00_14114)
{ /* Llib/hash.scm 1310 */
return 
BBOOL(
BGl_openzd2stringzd2hashtablezd2rehashz12zc0zz__hashz00(BgL_tz00_175));}  else 
{ /* Llib/hash.scm 1312 */
 long BgL_arg2049z00_2596;
{ /* Llib/hash.scm 1312 */
 long BgL_za71za7_5145;
{ /* Llib/hash.scm 1312 */
 obj_t BgL_tmpz00_14150;
if(
INTEGERP(BgL_nz00_2591))
{ /* Llib/hash.scm 1312 */
BgL_tmpz00_14150 = BgL_nz00_2591
; }  else 
{ 
 obj_t BgL_auxz00_14153;
BgL_auxz00_14153 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52353L), BGl_string4095z00zz__hashz00, BGl_string3859z00zz__hashz00, BgL_nz00_2591); 
FAILURE(BgL_auxz00_14153,BFALSE,BFALSE);} 
BgL_za71za7_5145 = 
(long)CINT(BgL_tmpz00_14150); } 
BgL_arg2049z00_2596 = 
(BgL_za71za7_5145+1L); } 
{ /* Llib/hash.scm 1312 */
 bool_t BgL_test5349z00_14159;
{ /* Llib/hash.scm 1312 */
 obj_t BgL_tmpz00_14160;
{ /* Llib/hash.scm 1312 */
 obj_t BgL_res2657z00_5149;
{ /* Llib/hash.scm 1312 */
 obj_t BgL_aux3843z00_6742;
BgL_aux3843z00_6742 = 
STRUCT_KEY(BgL_tz00_175); 
if(
SYMBOLP(BgL_aux3843z00_6742))
{ /* Llib/hash.scm 1312 */
BgL_res2657z00_5149 = BgL_aux3843z00_6742; }  else 
{ 
 obj_t BgL_auxz00_14164;
BgL_auxz00_14164 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string3867z00zz__hashz00, 
BINT(52324L), BGl_string4095z00zz__hashz00, BGl_string3847z00zz__hashz00, BgL_aux3843z00_6742); 
FAILURE(BgL_auxz00_14164,BFALSE,BFALSE);} } 
BgL_tmpz00_14160 = BgL_res2657z00_5149; } 
BgL_test5349z00_14159 = 
(BgL_tmpz00_14160==BGl_symbol3848z00zz__hashz00); } 
if(BgL_test5349z00_14159)
{ /* Llib/hash.scm 1312 */
 obj_t BgL_auxz00_14171; int BgL_tmpz00_14169;
BgL_auxz00_14171 = 
BINT(BgL_arg2049z00_2596); 
BgL_tmpz00_14169 = 
(int)(0L); 
return 
STRUCT_SET(BgL_tz00_175, BgL_tmpz00_14169, BgL_auxz00_14171);}  else 
{ /* Llib/hash.scm 1312 */
return 
BGl_errorz00zz__errorz00(BGl_string3868z00zz__hashz00, BGl_string3849z00zz__hashz00, BgL_tz00_175);} } } } } } 

}



/* object-init */
obj_t BGl_objectzd2initzd2zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
return BUNSPEC;} 

}



/* generic-init */
obj_t BGl_genericzd2initzd2zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
return BUNSPEC;} 

}



/* method-init */
obj_t BGl_methodzd2initzd2zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
return BUNSPEC;} 

}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__hashz00(void)
{
{ /* Llib/hash.scm 18 */
BGl_modulezd2initializa7ationz75zz__errorz00(88804785L, 
BSTRING_TO_STRING(BGl_string4096z00zz__hashz00)); 
BGl_modulezd2initializa7ationz75zz__r4_symbols_6_4z00(460262918L, 
BSTRING_TO_STRING(BGl_string4096z00zz__hashz00)); 
BGl_modulezd2initializa7ationz75zz__paramz00(453939141L, 
BSTRING_TO_STRING(BGl_string4096z00zz__hashz00)); 
return 
BGl_modulezd2initializa7ationz75zz__weakhashz00(56552828L, 
BSTRING_TO_STRING(BGl_string4096z00zz__hashz00));} 

}

#ifdef __cplusplus
}
#endif
