/*===========================================================================*/
/*   (Llib/socket.scm)                                                       */
/*   Bigloo (4.7a)                                                           */
/*   Inria -- Sophia Antipolis (c)       Thu Feb 19 09:11:58 AM CET 2026     */
/*===========================================================================*/
/* COMPILATION: (/home/serrano/prgm/project/bigloo/4.7a/bin/bigloo -srfi bigloo-safe -O3 -fcfa-arithmetic -q -lib-dir /home/serrano/prgm/project/bigloo/4.7a/lib/bigloo/4.7a +rm -O3 -mklib -cc gcc -fsharing -q -unsafev -eval (set! *indent* 4) -stdc -c Llib/socket.scm -indent -o objs/obj_s/Llib/socket.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___SOCKET_TYPE_DEFINITIONS
#define BGL___SOCKET_TYPE_DEFINITIONS
#endif // BGL___SOCKET_TYPE_DEFINITIONS
#endif // BGL_MODULE_TYPE_DEFINITIONS

extern obj_t bgl_gethostname_by_address(obj_t);
extern obj_t bgl_socket_host_addr(obj_t);
static obj_t BGl_z62socketzd2localzf3z43zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2outputzd2zz__socketz00(obj_t);
static obj_t BGl_keyword2213z00zz__socketz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_socketzd2portzd2numberz00zz__socketz00(obj_t);
extern obj_t bgl_datagram_socket_send(obj_t, obj_t, obj_t, int);
extern obj_t bgl_datagram_socket_close(obj_t);
static obj_t BGl_z62hostz62zz__socketz00(obj_t, obj_t);
extern obj_t bgl_make_client_socket(obj_t, int, int, obj_t, obj_t, obj_t);
static obj_t BGl_z62socketzd2hostzd2addresszd3zf3z42zz__socketz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2closezd2zz__socketz00(obj_t);
extern long bgl_socket_accept_many(obj_t, bool_t, obj_t, obj_t, obj_t);
static obj_t BGl_keyword2222z00zz__socketz00 = BUNSPEC;
extern obj_t bstring_to_keyword(obj_t);
static obj_t BGl_keyword2224z00zz__socketz00 = BUNSPEC;
static obj_t BGl_requirezd2initializa7ationz75zz__socketz00 = BUNSPEC;
static obj_t BGl_z62zc3z04anonymousza31249ze3ze5zz__socketz00(obj_t, obj_t);
extern obj_t bgl_make_server_socket(obj_t, int, int, obj_t);
static obj_t BGl_z62datagramzd2socketzd2portzd2numberzb0zz__socketz00(obj_t, obj_t);
extern obj_t BGl_applyz00zz__r4_control_features_6_9z00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2acceptzd2zz__socketz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_z62socketzd2inputzb0zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62socketzd2portzd2numberz62zz__socketz00(obj_t, obj_t);
extern obj_t bgl_setsockopt(obj_t, obj_t, obj_t);
extern obj_t BGl_typezd2errorzd2zz__errorz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_z62socketzd2localzd2addressz62zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zz__socketz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__threadz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zz__errorz00(long, char *);
BGL_EXPORTED_DECL obj_t BGl_hostz00zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2clientzd2socketz00zz__socketz00(obj_t, int, obj_t, obj_t, obj_t, obj_t);
extern obj_t bgl_gethostname(void);
extern obj_t bgl_gethostinterfaces(void);
BGL_EXPORTED_DECL obj_t BGl_socketzd2acceptzd2manyz00zz__socketz00(obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2optionzd2setz12z12zz__socketz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2outputz00zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2serverzd2socketz00zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2inputzd2zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_socketzd2hostzd2addressz00zz__socketz00(obj_t);
static obj_t BGl_toplevelzd2initzd2zz__socketz00(void);
static obj_t BGl_z62socketzd2outputzb0zz__socketz00(obj_t, obj_t);
extern obj_t bgl_make_datagram_unbound_socket(obj_t);
extern void socket_cleanup(void);
BGL_EXPORTED_DECL obj_t BGl_z52socketzd2initz12z92zz__socketz00(void);
static obj_t BGl__socketzd2shutdownzd2zz__socketz00(obj_t, obj_t);
static obj_t BGl_keyword2173z00zz__socketz00 = BUNSPEC;
static obj_t BGl_keyword2175z00zz__socketz00 = BUNSPEC;
BGL_EXPORTED_DECL obj_t BGl_socketzd2localzd2addressz00zz__socketz00(obj_t);
static obj_t BGl_keyword2177z00zz__socketz00 = BUNSPEC;
static obj_t BGl_z62getzd2interfaceszb0zz__socketz00(obj_t);
static obj_t BGl_keyword2179z00zz__socketz00 = BUNSPEC;
static obj_t BGl_z62datagramzd2socketzd2optionzd2setz12za2zz__socketz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl__hostnamez00zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hostnamez00zz__socketz00(obj_t);
static obj_t BGl_symbol2215z00zz__socketz00 = BUNSPEC;
static obj_t BGl_z62datagramzd2socketzd2optionz62zz__socketz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2hostnamez00zz__socketz00(obj_t);
extern obj_t bgl_getsockopt(obj_t, obj_t);
extern obj_t BGl_formatz00zz__r4_output_6_10_3z00(obj_t, obj_t);
extern bool_t BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00(obj_t);
static obj_t BGl_z62socketzd2optionzd2setz12z70zz__socketz00(obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_z62zc3z04anonymousza31293ze3ze5zz__socketz00(obj_t, obj_t);
extern obj_t BGl_dssslzd2getzd2keyzd2argzd2zz__dssslz00(obj_t, obj_t, obj_t);
extern obj_t bgl_getprotobyname(char *);
BGL_EXPORTED_DECL obj_t BGl_socketzd2hostnamezd2zz__socketz00(obj_t);
static obj_t BGl_cnstzd2initzd2zz__socketz00(void);
extern obj_t BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(obj_t, obj_t, int);
static obj_t BGl_z62socketzd2hostnamezb0zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62makezd2serverzd2socketz62zz__socketz00(obj_t, obj_t);
static obj_t BGl_genericzd2initzd2zz__socketz00(void);
static obj_t BGl_z62resolvz62zz__socketz00(obj_t, obj_t, obj_t);
static obj_t BGl_symbol2226z00zz__socketz00 = BUNSPEC;
extern bool_t bgl_socket_localp(obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2receivez00zz__socketz00(obj_t, int);
static obj_t BGl_search1131ze70ze7zz__socketz00(long, obj_t, obj_t, long);
static obj_t BGl_importedzd2moduleszd2initz00zz__socketz00(void);
static obj_t BGl_z62datagramzd2socketzd2receivez62zz__socketz00(obj_t, obj_t, obj_t);
static obj_t BGl__makezd2datagramzd2clientzd2socketzd2zz__socketz00(obj_t, obj_t);
static obj_t BGl_gczd2rootszd2initz00zz__socketz00(void);
BGL_EXPORTED_DECL obj_t BGl_getzd2protocolszd2zz__socketz00(void);
static obj_t BGl_z62socketzd2downzf3z43zz__socketz00(obj_t, obj_t);
static obj_t BGl_objectzd2initzd2zz__socketz00(void);
static obj_t BGl_z62socketzd2clientzf3z43zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2closez00zz__socketz00(obj_t);
static obj_t BGl_list2200z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2234z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2237z00zz__socketz00 = BUNSPEC;
static obj_t BGl__makezd2datagramzd2serverzd2socketzd2zz__socketz00(obj_t, obj_t);
static obj_t BGl_symbol2239z00zz__socketz00 = BUNSPEC;
extern obj_t bgl_make_server_unix_socket(obj_t, int);
BGL_EXPORTED_DECL obj_t BGl_socketzd2optionzd2zz__socketz00(obj_t, obj_t);
extern obj_t BGl_memqz00zz__r4_pairs_and_lists_6_3z00(obj_t, obj_t);
extern obj_t socket_close(obj_t);
static obj_t BGl_z62socketzd2serverzf3z43zz__socketz00(obj_t, obj_t);
static obj_t BGl_symbol2241z00zz__socketz00 = BUNSPEC;
static bool_t BGl_za2socketzd2initializa7edza2z75zz__socketz00;
static obj_t BGl_list2212z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2248z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2168z00zz__socketz00 = BUNSPEC;
extern obj_t bgl_datagram_socket_receive(obj_t, long);
BGL_EXPORTED_DECL bool_t BGl_socketzd2downzf3z21zz__socketz00(obj_t);
static obj_t BGl_z62datagramzd2socketzd2sendz62zz__socketz00(obj_t, obj_t, obj_t, obj_t, obj_t);
static obj_t BGl_z62z52socketzd2initz12zf0zz__socketz00(obj_t);
BGL_EXPORTED_DECL bool_t BGl_datagramzd2socketzf3z21zz__socketz00(obj_t);
static obj_t BGl_za2socketzd2mutexza2zd2zz__socketz00 = BUNSPEC;
static obj_t BGl__makezd2clientzd2socketz00zz__socketz00(obj_t, obj_t);
extern obj_t bgl_host(obj_t);
static obj_t BGl_list2221z00zz__socketz00 = BUNSPEC;
static obj_t BGl__socketzd2acceptzd2manyz00zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_socketzf3zf3zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_hostinfoz00zz__socketz00(obj_t);
static obj_t BGl_search1141ze70ze7zz__socketz00(long, obj_t, obj_t, long);
extern obj_t bgl_getsockopt(obj_t, obj_t);
static obj_t BGl_z62socketzf3z91zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2datagramzd2clientzd2socketzd2zz__socketz00(obj_t, int, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2inputz00zz__socketz00(obj_t);
static obj_t BGl_z62datagramzd2socketzd2hostzd2addresszb0zz__socketz00(obj_t, obj_t);
extern obj_t bstring_to_symbol(obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2portzd2numberzd2zz__socketz00(obj_t);
extern obj_t bgl_res_query(obj_t, obj_t);
static obj_t BGl_symbol2181z00zz__socketz00 = BUNSPEC;
extern obj_t make_vector(long, obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2datagramzd2serverzd2socketzd2zz__socketz00(obj_t, obj_t);
static obj_t BGl_symbol2188z00zz__socketz00 = BUNSPEC;
static obj_t BGl__makezd2datagramzd2unboundzd2socketzd2zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2sendz00zz__socketz00(obj_t, obj_t, obj_t, int);
BGL_EXPORTED_DECL obj_t BGl_getzd2interfaceszd2zz__socketz00(void);
extern obj_t bgl_setsockopt(obj_t, obj_t, obj_t);
static obj_t BGl_z62getzd2protocolszb0zz__socketz00(obj_t);
extern bool_t bgl_socket_host_addr_cmp(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2optionz00zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62datagramzd2socketzd2closez62zz__socketz00(obj_t, obj_t);
extern obj_t BGl_registerzd2exitzd2functionz12z12zz__biglooz00(obj_t);
static obj_t BGl_symbol2270z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2190z00zz__socketz00 = BUNSPEC;
static obj_t BGl_methodzd2initzd2zz__socketz00(void);
static obj_t BGl_symbol2193z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2275z00zz__socketz00 = BUNSPEC;
static obj_t BGl_symbol2195z00zz__socketz00 = BUNSPEC;
static obj_t BGl_z62datagramzd2socketzd2hostnamez62zz__socketz00(obj_t, obj_t);
extern obj_t BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(obj_t, obj_t, obj_t, obj_t, int, int);
BGL_EXPORTED_DECL int BGl_socketzd2shutdownzd2zz__socketz00(obj_t, obj_t);
extern obj_t bgl_make_datagram_client_socket(obj_t, int, bool_t, obj_t);
static obj_t BGl_z62socketzd2optionzb0zz__socketz00(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2hostzd2addresszd2zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_resolvz00zz__socketz00(obj_t, obj_t);
extern obj_t BGl_mapz00zz__r4_control_features_6_9z00(obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_socketzd2localzf3z21zz__socketz00(obj_t);
static obj_t BGl_symbol2280z00zz__socketz00 = BUNSPEC;
static obj_t BGl_list2172z00zz__socketz00 = BUNSPEC;
extern obj_t bgl_make_datagram_server_socket(int, obj_t);
extern obj_t bgl_socket_accept(obj_t, bool_t, obj_t, obj_t);
static obj_t BGl_z62socketzd2hostzd2addressz62zz__socketz00(obj_t, obj_t);
static obj_t BGl_search1117ze70ze7zz__socketz00(long, obj_t, obj_t, long);
BGL_EXPORTED_DECL bool_t BGl_socketzd2clientzf3z21zz__socketz00(obj_t);
BGL_EXPORTED_DECL obj_t BGl_datagramzd2socketzd2optionzd2setz12zc0zz__socketz00(obj_t, obj_t, obj_t);
extern void socket_startup(void);
extern obj_t BGl_dssslzd2getzd2keyzd2restzd2argz00zz__dssslz00(obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_socketzd2hostzd2addresszd3zf3z20zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62getzd2protocolzb0zz__socketz00(obj_t, obj_t);
static obj_t BGl__socketzd2acceptzd2zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_socketzd2serverzf3z21zz__socketz00(obj_t);
extern obj_t bgl_socket_local_addr(obj_t);
extern obj_t bgl_getprotoents(void);
extern int socket_shutdown(obj_t, int);
static obj_t BGl_z62datagramzd2socketzd2inputz62zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62datagramzd2socketzd2outputz62zz__socketz00(obj_t, obj_t);
extern obj_t bgl_getprotobynumber(int);
BGL_EXPORTED_DECL bool_t BGl_datagramzd2socketzd2clientzf3zf3zz__socketz00(obj_t);
static obj_t BGl_z62datagramzd2socketzd2clientzf3z91zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_makezd2datagramzd2unboundzd2socketzd2zz__socketz00(obj_t);
extern obj_t bgl_make_client_unix_socket(obj_t, int, obj_t, obj_t);
BGL_EXPORTED_DECL bool_t BGl_datagramzd2socketzd2serverzf3zf3zz__socketz00(obj_t);
static obj_t BGl_z62datagramzd2socketzf3z43zz__socketz00(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_getzd2protocolzd2zz__socketz00(obj_t);
static obj_t BGl_z62datagramzd2socketzd2serverzf3z91zz__socketz00(obj_t, obj_t);
static obj_t BGl_keyword2201z00zz__socketz00 = BUNSPEC;
extern obj_t BGl_errorz00zz__errorz00(obj_t, obj_t, obj_t);
static obj_t BGl_keyword2203z00zz__socketz00 = BUNSPEC;
extern obj_t bgl_hostinfo(obj_t);
static obj_t BGl_z62hostinfoz62zz__socketz00(obj_t, obj_t);
static obj_t BGl_z62socketzd2closezb0zz__socketz00(obj_t, obj_t);
static obj_t *__cnst;


BGL_DEFINE_STRING(BGl_string2202z00zz__socketz00, BgL_bgl_string2202za700za7za7_2289za7, "backlog", 7 );
BGL_DEFINE_STRING(BGl_string2204z00zz__socketz00, BgL_bgl_string2204za700za7za7_2290za7, "name", 4 );
BGL_DEFINE_STRING(BGl_string2205z00zz__socketz00, BgL_bgl_string2205za700za7za7_2291za7, "Unsupported domain", 18 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_hostinfozd2envzd2zz__socketz00, BgL_bgl_za762hostinfoza762za7za72292z00, BGl_z62hostinfoz62zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2207z00zz__socketz00, BgL_bgl_string2207za700za7za7_2293za7, "Illegal extra key arguments: ", 29 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2closezd2envz00zz__socketz00, BgL_bgl_za762socketza7d2clos2294z00, BGl_z62socketzd2closezb0zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2208z00zz__socketz00, BgL_bgl_string2208za700za7za7_2295za7, "dsssl-get-key-arg", 17 );
BGL_DEFINE_STRING(BGl_string2209z00zz__socketz00, BgL_bgl_string2209za700za7za7_2296za7, "~a ", 3 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2datagramzd2clientzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2297za7, opt_generic_entry, BGl__makezd2datagramzd2clientzd2socketzd2zz__socketz00, BFALSE, -1);
BGL_DEFINE_STRING(BGl_string2210z00zz__socketz00, BgL_bgl_string2210za700za7za7_2298za7, "_socket-accept", 14 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2datagramzd2serverzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2299za7, opt_generic_entry, BGl__makezd2datagramzd2serverzd2socketzd2zz__socketz00, BFALSE, -1);
BGL_DEFINE_STRING(BGl_string2211z00zz__socketz00, BgL_bgl_string2211za700za7za7_2300za7, "check1132", 9 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2receivezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2301z00, BGl_z62datagramzd2socketzd2receivez62zz__socketz00, 0L, BUNSPEC, 2);
DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2206z00zz__socketz00, BgL_bgl_za762za7c3za704anonymo2302za7, BGl_z62zc3z04anonymousza31293ze3ze5zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2214z00zz__socketz00, BgL_bgl_string2214za700za7za7_2303za7, "errp", 4 );
BGL_DEFINE_STRING(BGl_string2216z00zz__socketz00, BgL_bgl_string2216za700za7za7_2304za7, "socket-accept", 13 );
BGL_DEFINE_STRING(BGl_string2217z00zz__socketz00, BgL_bgl_string2217za700za7za7_2305za7, "search1131~0", 12 );
BGL_DEFINE_STRING(BGl_string2218z00zz__socketz00, BgL_bgl_string2218za700za7za7_2306za7, "wrong number of arguments: [1..4] expected, provided", 52 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2sendzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2307z00, BGl_z62datagramzd2socketzd2sendz62zz__socketz00, 0L, BUNSPEC, 4);
BGL_DEFINE_STRING(BGl_string2219z00zz__socketz00, BgL_bgl_string2219za700za7za7_2308za7, "_socket-accept-many", 19 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2clientzd2socketzd2envzd2zz__socketz00, BgL_bgl__makeza7d2clientza7d2309z00, opt_generic_entry, BGl__makezd2clientzd2socketz00zz__socketz00, BFALSE, -1);
BGL_DEFINE_STRING(BGl_string2220z00zz__socketz00, BgL_bgl_string2220za700za7za7_2310za7, "check1142", 9 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2acceptzd2manyzd2envzd2zz__socketz00, BgL_bgl__socketza7d2accept2311za7, opt_generic_entry, BGl__socketzd2acceptzd2manyz00zz__socketz00, BFALSE, -1);
BGL_DEFINE_STRING(BGl_string2223z00zz__socketz00, BgL_bgl_string2223za700za7za7_2312za7, "inbufs", 6 );
BGL_DEFINE_STRING(BGl_string2225z00zz__socketz00, BgL_bgl_string2225za700za7za7_2313za7, "outbufs", 7 );
BGL_DEFINE_STRING(BGl_string2227z00zz__socketz00, BgL_bgl_string2227za700za7za7_2314za7, "socket-accept-many", 18 );
BGL_DEFINE_STRING(BGl_string2228z00zz__socketz00, BgL_bgl_string2228za700za7za7_2315za7, "search1141~0", 12 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2optionzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2opti2316z00, BGl_z62socketzd2optionzb0zz__socketz00, 0L, BUNSPEC, 2);
BGL_DEFINE_STRING(BGl_string2229z00zz__socketz00, BgL_bgl_string2229za700za7za7_2317za7, "wrong number of arguments: [2..5] expected, provided", 52 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2shutdownzd2envz00zz__socketz00, BgL_bgl__socketza7d2shutdo2318za7, opt_generic_entry, BGl__socketzd2shutdownzd2zz__socketz00, BFALSE, -1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2serverzd2socketzd2envzd2zz__socketz00, BgL_bgl_za762makeza7d2server2319z00, va_generic_entry, BGl_z62makezd2serverzd2socketz62zz__socketz00, BUNSPEC, -1);
extern obj_t BGl_stringzd2appendzd2envz00zz__r4_strings_6_7z00;
BGL_DEFINE_STRING(BGl_string2230z00zz__socketz00, BgL_bgl_string2230za700za7za7_2320za7, "loop", 4 );
BGL_DEFINE_STRING(BGl_string2231z00zz__socketz00, BgL_bgl_string2231za700za7za7_2321za7, "vector-set!", 11 );
BGL_DEFINE_STRING(BGl_string2232z00zz__socketz00, BgL_bgl_string2232za700za7za7_2322za7, "_socket-shutdown", 16 );
BGL_DEFINE_STRING(BGl_string2233z00zz__socketz00, BgL_bgl_string2233za700za7za7_2323za7, "case_else1152", 13 );
BGL_DEFINE_STRING(BGl_string2153z00zz__socketz00, BgL_bgl_string2153za700za7za7_2324za7, "socket", 6 );
BGL_DEFINE_STRING(BGl_string2235z00zz__socketz00, BgL_bgl_string2235za700za7za7_2325za7, "socket-shutdown", 15 );
BGL_DEFINE_STRING(BGl_string2236z00zz__socketz00, BgL_bgl_string2236za700za7za7_2326za7, "wrong number of arguments: [1..2] expected, provided", 52 );
BGL_DEFINE_STRING(BGl_string2155z00zz__socketz00, BgL_bgl_string2155za700za7za7_2327za7, "/tmp/bigloo/runtime/Llib/socket.scm", 35 );
BGL_DEFINE_STRING(BGl_string2156z00zz__socketz00, BgL_bgl_string2156za700za7za7_2328za7, "&socket-hostname", 16 );
BGL_DEFINE_STRING(BGl_string2238z00zz__socketz00, BgL_bgl_string2238za700za7za7_2329za7, "RDWR", 4 );
BGL_DEFINE_STRING(BGl_string2157z00zz__socketz00, BgL_bgl_string2157za700za7za7_2330za7, "&socket-host-address", 20 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_z52socketzd2initz12zd2envz40zz__socketz00, BgL_bgl_za762za752socketza7d2i2331za7, BGl_z62z52socketzd2initz12zf0zz__socketz00, 0L, BUNSPEC, 0);
BGL_DEFINE_STRING(BGl_string2158z00zz__socketz00, BgL_bgl_string2158za700za7za7_2332za7, "&socket-local-address", 21 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2portzd2numberzd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2port2333z00, BGl_z62socketzd2portzd2numberz62zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2159z00zz__socketz00, BgL_bgl_string2159za700za7za7_2334za7, "&socket-local?", 14 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2localzd2addresszd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2loca2335z00, BGl_z62socketzd2localzd2addressz62zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2240z00zz__socketz00, BgL_bgl_string2240za700za7za7_2336za7, "WR", 2 );
BGL_DEFINE_STRING(BGl_string2160z00zz__socketz00, BgL_bgl_string2160za700za7za7_2337za7, "&socket-host-address=?", 22 );
DEFINE_STATIC_BGL_PROCEDURE(BGl_proc2154z00zz__socketz00, BgL_bgl_za762za7c3za704anonymo2338za7, BGl_z62zc3z04anonymousza31249ze3ze5zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2242z00zz__socketz00, BgL_bgl_string2242za700za7za7_2339za7, "RD", 2 );
BGL_DEFINE_STRING(BGl_string2161z00zz__socketz00, BgL_bgl_string2161za700za7za7_2340za7, "bstring", 7 );
BGL_DEFINE_STRING(BGl_string2243z00zz__socketz00, BgL_bgl_string2243za700za7za7_2341za7, "wrong optional argument", 23 );
BGL_DEFINE_STRING(BGl_string2162z00zz__socketz00, BgL_bgl_string2162za700za7za7_2342za7, "&socket-down?", 13 );
BGL_DEFINE_STRING(BGl_string2244z00zz__socketz00, BgL_bgl_string2244za700za7za7_2343za7, "&socket-close", 13 );
BGL_DEFINE_STRING(BGl_string2163z00zz__socketz00, BgL_bgl_string2163za700za7za7_2344za7, "&socket-port-number", 19 );
BGL_DEFINE_STRING(BGl_string2245z00zz__socketz00, BgL_bgl_string2245za700za7za7_2345za7, "&host", 5 );
BGL_DEFINE_STRING(BGl_string2164z00zz__socketz00, BgL_bgl_string2164za700za7za7_2346za7, "&socket-input", 13 );
BGL_DEFINE_STRING(BGl_string2246z00zz__socketz00, BgL_bgl_string2246za700za7za7_2347za7, "&hostinfo", 9 );
BGL_DEFINE_STRING(BGl_string2165z00zz__socketz00, BgL_bgl_string2165za700za7za7_2348za7, "&socket-output", 14 );
BGL_DEFINE_STRING(BGl_string2247z00zz__socketz00, BgL_bgl_string2247za700za7za7_2349za7, "case_else1156", 13 );
BGL_DEFINE_STRING(BGl_string2166z00zz__socketz00, BgL_bgl_string2166za700za7za7_2350za7, "_make-client-socket", 19 );
BGL_DEFINE_STRING(BGl_string2167z00zz__socketz00, BgL_bgl_string2167za700za7za7_2351za7, "vector", 6 );
BGL_DEFINE_STRING(BGl_string2249z00zz__socketz00, BgL_bgl_string2249za700za7za7_2352za7, "hostname", 8 );
BGL_DEFINE_STRING(BGl_string2169z00zz__socketz00, BgL_bgl_string2169za700za7za7_2353za7, "inet", 4 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2portzd2numberzd2envz00zz__socketz00, BgL_bgl_za762datagramza7d2so2354z00, BGl_z62datagramzd2socketzd2portzd2numberzb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2clientzf3zd2envz21zz__socketz00, BgL_bgl_za762datagramza7d2so2355z00, BGl_z62datagramzd2socketzd2clientzf3z91zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2250z00zz__socketz00, BgL_bgl_string2250za700za7za7_2356za7, "wrong number of arguments: [0..1] expected, provided", 52 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_makezd2datagramzd2unboundzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2357za7, opt_generic_entry, BGl__makezd2datagramzd2unboundzd2socketzd2zz__socketz00, BFALSE, -1);
BGL_DEFINE_STRING(BGl_string2251z00zz__socketz00, BgL_bgl_string2251za700za7za7_2358za7, "_hostname", 9 );
BGL_DEFINE_STRING(BGl_string2170z00zz__socketz00, BgL_bgl_string2170za700za7za7_2359za7, "check1118", 9 );
BGL_DEFINE_STRING(BGl_string2252z00zz__socketz00, BgL_bgl_string2252za700za7za7_2360za7, "&resolv", 7 );
BGL_DEFINE_STRING(BGl_string2171z00zz__socketz00, BgL_bgl_string2171za700za7za7_2361za7, "vector-ref", 10 );
BGL_DEFINE_STRING(BGl_string2253z00zz__socketz00, BgL_bgl_string2253za700za7za7_2362za7, "get-protocol", 12 );
BGL_DEFINE_STRING(BGl_string2254z00zz__socketz00, BgL_bgl_string2254za700za7za7_2363za7, "&socket-option", 14 );
BGL_DEFINE_STRING(BGl_string2255z00zz__socketz00, BgL_bgl_string2255za700za7za7_2364za7, "keyword", 7 );
BGL_DEFINE_STRING(BGl_string2174z00zz__socketz00, BgL_bgl_string2174za700za7za7_2365za7, "domain", 6 );
BGL_DEFINE_STRING(BGl_string2256z00zz__socketz00, BgL_bgl_string2256za700za7za7_2366za7, "&socket-option-set!", 19 );
BGL_DEFINE_STRING(BGl_string2257z00zz__socketz00, BgL_bgl_string2257za700za7za7_2367za7, "&datagram-socket-hostname", 25 );
BGL_DEFINE_STRING(BGl_string2176z00zz__socketz00, BgL_bgl_string2176za700za7za7_2368za7, "inbuf", 5 );
BGL_DEFINE_STRING(BGl_string2258z00zz__socketz00, BgL_bgl_string2258za700za7za7_2369za7, "datagram-socket", 15 );
BGL_DEFINE_STRING(BGl_string2259z00zz__socketz00, BgL_bgl_string2259za700za7za7_2370za7, "&datagram-socket-host-address", 29 );
BGL_DEFINE_STRING(BGl_string2178z00zz__socketz00, BgL_bgl_string2178za700za7za7_2371za7, "outbuf", 6 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2serverzf3zd2envz21zz__socketz00, BgL_bgl_za762datagramza7d2so2372z00, BGl_z62datagramzd2socketzd2serverzf3z91zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2optionzd2setz12zd2envzc0zz__socketz00, BgL_bgl_za762socketza7d2opti2373z00, BGl_z62socketzd2optionzd2setz12z70zz__socketz00, 0L, BUNSPEC, 3);
BGL_DEFINE_STRING(BGl_string2260z00zz__socketz00, BgL_bgl_string2260za700za7za7_2374za7, "&datagram-socket-port-number", 28 );
BGL_DEFINE_STRING(BGl_string2261z00zz__socketz00, BgL_bgl_string2261za700za7za7_2375za7, "datagram-socket-output", 22 );
BGL_DEFINE_STRING(BGl_string2180z00zz__socketz00, BgL_bgl_string2180za700za7za7_2376za7, "timeout", 7 );
BGL_DEFINE_STRING(BGl_string2262z00zz__socketz00, BgL_bgl_string2262za700za7za7_2377za7, "output-port", 11 );
BGL_DEFINE_STRING(BGl_string2263z00zz__socketz00, BgL_bgl_string2263za700za7za7_2378za7, "Datagram-socket has no output port", 34 );
BGL_DEFINE_STRING(BGl_string2182z00zz__socketz00, BgL_bgl_string2182za700za7za7_2379za7, "make-client-socket::socket", 26 );
BGL_DEFINE_STRING(BGl_string2264z00zz__socketz00, BgL_bgl_string2264za700za7za7_2380za7, "&datagram-socket-output", 23 );
BGL_DEFINE_STRING(BGl_string2183z00zz__socketz00, BgL_bgl_string2183za700za7za7_2381za7, "Illegal keyword argument", 24 );
BGL_DEFINE_STRING(BGl_string2265z00zz__socketz00, BgL_bgl_string2265za700za7za7_2382za7, "datagram-socket-input", 21 );
BGL_DEFINE_STRING(BGl_string2184z00zz__socketz00, BgL_bgl_string2184za700za7za7_2383za7, "bint", 4 );
BGL_DEFINE_STRING(BGl_string2266z00zz__socketz00, BgL_bgl_string2266za700za7za7_2384za7, "input-port", 10 );
BGL_DEFINE_STRING(BGl_string2185z00zz__socketz00, BgL_bgl_string2185za700za7za7_2385za7, "search1117~0", 12 );
BGL_DEFINE_STRING(BGl_string2267z00zz__socketz00, BgL_bgl_string2267za700za7za7_2386za7, "Datagram-socket has no input port", 33 );
BGL_DEFINE_STRING(BGl_string2186z00zz__socketz00, BgL_bgl_string2186za700za7za7_2387za7, "wrong number of arguments: [2..6] expected, provided", 52 );
BGL_DEFINE_STRING(BGl_string2268z00zz__socketz00, BgL_bgl_string2268za700za7za7_2388za7, "&datagram-socket-input", 22 );
BGL_DEFINE_STRING(BGl_string2187z00zz__socketz00, BgL_bgl_string2187za700za7za7_2389za7, "make-client-socket", 18 );
BGL_DEFINE_STRING(BGl_string2269z00zz__socketz00, BgL_bgl_string2269za700za7za7_2390za7, "case_else1160", 13 );
BGL_DEFINE_STRING(BGl_string2189z00zz__socketz00, BgL_bgl_string2189za700za7za7_2391za7, "inet6", 5 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2outputzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2392z00, BGl_z62datagramzd2socketzd2outputz62zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_resolvzd2envzd2zz__socketz00, BgL_bgl_za762resolvza762za7za7__2393z00, BGl_z62resolvz62zz__socketz00, 0L, BUNSPEC, 2);
BGL_DEFINE_STRING(BGl_string2271z00zz__socketz00, BgL_bgl_string2271za700za7za7_2394za7, "make-datagram-server-socket", 27 );
BGL_DEFINE_STRING(BGl_string2272z00zz__socketz00, BgL_bgl_string2272za700za7za7_2395za7, "wrong number of arguments: [0..2] expected, provided", 52 );
BGL_DEFINE_STRING(BGl_string2191z00zz__socketz00, BgL_bgl_string2191za700za7za7_2396za7, "unspec", 6 );
BGL_DEFINE_STRING(BGl_string2273z00zz__socketz00, BgL_bgl_string2273za700za7za7_2397za7, "_make-datagram-server-socket", 28 );
BGL_DEFINE_STRING(BGl_string2192z00zz__socketz00, BgL_bgl_string2192za700za7za7_2398za7, "symbol", 6 );
BGL_DEFINE_STRING(BGl_string2274z00zz__socketz00, BgL_bgl_string2274za700za7za7_2399za7, "case_else1164", 13 );
BGL_DEFINE_STRING(BGl_string2194z00zz__socketz00, BgL_bgl_string2194za700za7za7_2400za7, "unix", 4 );
BGL_DEFINE_STRING(BGl_string2276z00zz__socketz00, BgL_bgl_string2276za700za7za7_2401za7, "make-datagram-unbound-socket", 28 );
BGL_DEFINE_STRING(BGl_string2277z00zz__socketz00, BgL_bgl_string2277za700za7za7_2402za7, "_make-datagram-unbound-socket", 29 );
BGL_DEFINE_STRING(BGl_string2196z00zz__socketz00, BgL_bgl_string2196za700za7za7_2403za7, "local", 5 );
BGL_DEFINE_STRING(BGl_string2278z00zz__socketz00, BgL_bgl_string2278za700za7za7_2404za7, "_make-datagram-client-socket", 28 );
BGL_DEFINE_STRING(BGl_string2197z00zz__socketz00, BgL_bgl_string2197za700za7za7_2405za7, "Unknown socket domain", 21 );
BGL_DEFINE_STRING(BGl_string2279z00zz__socketz00, BgL_bgl_string2279za700za7za7_2406za7, "case_else1170", 13 );
BGL_DEFINE_STRING(BGl_string2198z00zz__socketz00, BgL_bgl_string2198za700za7za7_2407za7, "make-server-socket", 18 );
BGL_DEFINE_STRING(BGl_string2199z00zz__socketz00, BgL_bgl_string2199za700za7za7_2408za7, "pair", 4 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2optionzd2setz12zd2envz12zz__socketz00, BgL_bgl_za762datagramza7d2so2409z00, BGl_z62datagramzd2socketzd2optionzd2setz12za2zz__socketz00, 0L, BUNSPEC, 3);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2hostzd2addresszd3zf3zd2envzf2zz__socketz00, BgL_bgl_za762socketza7d2host2410z00, BGl_z62socketzd2hostzd2addresszd3zf3z42zz__socketz00, 0L, BUNSPEC, 2);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzf3zd2envz21zz__socketz00, BgL_bgl_za762socketza7f3za791za72411z00, BGl_z62socketzf3z91zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2281z00zz__socketz00, BgL_bgl_string2281za700za7za7_2412za7, "make-datagram-client-socket", 27 );
BGL_DEFINE_STRING(BGl_string2282z00zz__socketz00, BgL_bgl_string2282za700za7za7_2413za7, "wrong number of arguments: [2..4] expected, provided", 52 );
BGL_DEFINE_STRING(BGl_string2283z00zz__socketz00, BgL_bgl_string2283za700za7za7_2414za7, "&datagram-socket-close", 22 );
BGL_DEFINE_STRING(BGl_string2284z00zz__socketz00, BgL_bgl_string2284za700za7za7_2415za7, "&datagram-socket-receive", 24 );
BGL_DEFINE_STRING(BGl_string2285z00zz__socketz00, BgL_bgl_string2285za700za7za7_2416za7, "&datagram-socket-send", 21 );
BGL_DEFINE_STRING(BGl_string2286z00zz__socketz00, BgL_bgl_string2286za700za7za7_2417za7, "&datagram-socket-option", 23 );
BGL_DEFINE_STRING(BGl_string2287z00zz__socketz00, BgL_bgl_string2287za700za7za7_2418za7, "&datagram-socket-option-set!", 28 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2inputzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2419z00, BGl_z62datagramzd2socketzd2inputz62zz__socketz00, 0L, BUNSPEC, 1);
BGL_DEFINE_STRING(BGl_string2288z00zz__socketz00, BgL_bgl_string2288za700za7za7_2420za7, "__socket", 8 );
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2hostnamezd2envz00zz__socketz00, BgL_bgl_za762socketza7d2host2421z00, BGl_z62socketzd2hostnamezb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2acceptzd2envz00zz__socketz00, BgL_bgl__socketza7d2accept2422za7, opt_generic_entry, BGl__socketzd2acceptzd2zz__socketz00, BFALSE, -1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_hostzd2envzd2zz__socketz00, BgL_bgl_za762hostza762za7za7__so2423z00, BGl_z62hostz62zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2protocolzd2envz00zz__socketz00, BgL_bgl_za762getza7d2protoco2424z00, BGl_z62getzd2protocolzb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2localzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2loca2425z00, BGl_z62socketzd2localzf3z43zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2inputzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2inpu2426z00, BGl_z62socketzd2inputzb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2outputzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2outp2427z00, BGl_z62socketzd2outputzb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2downzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2down2428z00, BGl_z62socketzd2downzf3z43zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2clientzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2clie2429z00, BGl_z62socketzd2clientzf3z43zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2serverzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2serv2430z00, BGl_z62socketzd2serverzf3z43zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2interfaceszd2envz00zz__socketz00, BgL_bgl_za762getza7d2interfa2431z00, BGl_z62getzd2interfaceszb0zz__socketz00, 0L, BUNSPEC, 0);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_getzd2protocolszd2envz00zz__socketz00, BgL_bgl_za762getza7d2protoco2432z00, BGl_z62getzd2protocolszb0zz__socketz00, 0L, BUNSPEC, 0);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2closezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2433z00, BGl_z62datagramzd2socketzd2closez62zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2optionzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2434z00, BGl_z62datagramzd2socketzd2optionz62zz__socketz00, 0L, BUNSPEC, 2);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2hostzd2addresszd2envz00zz__socketz00, BgL_bgl_za762datagramza7d2so2435z00, BGl_z62datagramzd2socketzd2hostzd2addresszb0zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_socketzd2hostzd2addresszd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2host2436z00, BGl_z62socketzd2hostzd2addressz62zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzf3zd2envzf3zz__socketz00, BgL_bgl_za762datagramza7d2so2437z00, BGl_z62datagramzd2socketzf3z43zz__socketz00, 0L, BUNSPEC, 1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_hostnamezd2envzd2zz__socketz00, BgL_bgl__hostnameza700za7za7__2438za7, opt_generic_entry, BGl__hostnamez00zz__socketz00, BFALSE, -1);
DEFINE_EXPORT_BGL_PROCEDURE(BGl_datagramzd2socketzd2hostnamezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2439z00, BGl_z62datagramzd2socketzd2hostnamez62zz__socketz00, 0L, BUNSPEC, 1);

/* contant bindings */
static void bgl_constant_bindings() {
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2hostnamezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2439z00);
BGL_BIND_PROCEDURE(BGl_hostnamezd2envzd2zz__socketz00, BgL_bgl__hostnameza700za7za7__2438za7);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzf3zd2envzf3zz__socketz00, BgL_bgl_za762datagramza7d2so2437z00);
BGL_BIND_PROCEDURE(BGl_socketzd2hostzd2addresszd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2host2436z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2hostzd2addresszd2envz00zz__socketz00, BgL_bgl_za762datagramza7d2so2435z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2optionzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2434z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2closezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2433z00);
BGL_BIND_PROCEDURE(BGl_getzd2protocolszd2envz00zz__socketz00, BgL_bgl_za762getza7d2protoco2432z00);
BGL_BIND_PROCEDURE(BGl_getzd2interfaceszd2envz00zz__socketz00, BgL_bgl_za762getza7d2interfa2431z00);
BGL_BIND_PROCEDURE(BGl_socketzd2serverzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2serv2430z00);
BGL_BIND_PROCEDURE(BGl_socketzd2clientzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2clie2429z00);
BGL_BIND_PROCEDURE(BGl_socketzd2downzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2down2428z00);
BGL_BIND_PROCEDURE(BGl_socketzd2outputzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2outp2427z00);
BGL_BIND_PROCEDURE(BGl_socketzd2inputzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2inpu2426z00);
BGL_BIND_PROCEDURE(BGl_socketzd2localzf3zd2envzf3zz__socketz00, BgL_bgl_za762socketza7d2loca2425z00);
BGL_BIND_PROCEDURE(BGl_getzd2protocolzd2envz00zz__socketz00, BgL_bgl_za762getza7d2protoco2424z00);
BGL_BIND_PROCEDURE(BGl_hostzd2envzd2zz__socketz00, BgL_bgl_za762hostza762za7za7__so2423z00);
BGL_BIND_PROCEDURE(BGl_socketzd2acceptzd2envz00zz__socketz00, BgL_bgl__socketza7d2accept2422za7);
BGL_BIND_PROCEDURE(BGl_socketzd2hostnamezd2envz00zz__socketz00, BgL_bgl_za762socketza7d2host2421z00);
BGL_BIND_STRING(BGl_string2288z00zz__socketz00, BgL_bgl_string2288za700za7za7_2420za7);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2inputzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2419z00);
BGL_BIND_STRING(BGl_string2287z00zz__socketz00, BgL_bgl_string2287za700za7za7_2418za7);
BGL_BIND_STRING(BGl_string2286z00zz__socketz00, BgL_bgl_string2286za700za7za7_2417za7);
BGL_BIND_STRING(BGl_string2285z00zz__socketz00, BgL_bgl_string2285za700za7za7_2416za7);
BGL_BIND_STRING(BGl_string2284z00zz__socketz00, BgL_bgl_string2284za700za7za7_2415za7);
BGL_BIND_STRING(BGl_string2283z00zz__socketz00, BgL_bgl_string2283za700za7za7_2414za7);
BGL_BIND_STRING(BGl_string2282z00zz__socketz00, BgL_bgl_string2282za700za7za7_2413za7);
BGL_BIND_STRING(BGl_string2281z00zz__socketz00, BgL_bgl_string2281za700za7za7_2412za7);
BGL_BIND_PROCEDURE(BGl_socketzf3zd2envz21zz__socketz00, BgL_bgl_za762socketza7f3za791za72411z00);
BGL_BIND_PROCEDURE(BGl_socketzd2hostzd2addresszd3zf3zd2envzf2zz__socketz00, BgL_bgl_za762socketza7d2host2410z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2optionzd2setz12zd2envz12zz__socketz00, BgL_bgl_za762datagramza7d2so2409z00);
BGL_BIND_STRING(BGl_string2199z00zz__socketz00, BgL_bgl_string2199za700za7za7_2408za7);
BGL_BIND_STRING(BGl_string2198z00zz__socketz00, BgL_bgl_string2198za700za7za7_2407za7);
BGL_BIND_STRING(BGl_string2279z00zz__socketz00, BgL_bgl_string2279za700za7za7_2406za7);
BGL_BIND_STRING(BGl_string2197z00zz__socketz00, BgL_bgl_string2197za700za7za7_2405za7);
BGL_BIND_STRING(BGl_string2278z00zz__socketz00, BgL_bgl_string2278za700za7za7_2404za7);
BGL_BIND_STRING(BGl_string2196z00zz__socketz00, BgL_bgl_string2196za700za7za7_2403za7);
BGL_BIND_STRING(BGl_string2277z00zz__socketz00, BgL_bgl_string2277za700za7za7_2402za7);
BGL_BIND_STRING(BGl_string2276z00zz__socketz00, BgL_bgl_string2276za700za7za7_2401za7);
BGL_BIND_STRING(BGl_string2194z00zz__socketz00, BgL_bgl_string2194za700za7za7_2400za7);
BGL_BIND_STRING(BGl_string2274z00zz__socketz00, BgL_bgl_string2274za700za7za7_2399za7);
BGL_BIND_STRING(BGl_string2192z00zz__socketz00, BgL_bgl_string2192za700za7za7_2398za7);
BGL_BIND_STRING(BGl_string2273z00zz__socketz00, BgL_bgl_string2273za700za7za7_2397za7);
BGL_BIND_STRING(BGl_string2191z00zz__socketz00, BgL_bgl_string2191za700za7za7_2396za7);
BGL_BIND_STRING(BGl_string2272z00zz__socketz00, BgL_bgl_string2272za700za7za7_2395za7);
BGL_BIND_STRING(BGl_string2271z00zz__socketz00, BgL_bgl_string2271za700za7za7_2394za7);
BGL_BIND_PROCEDURE(BGl_resolvzd2envzd2zz__socketz00, BgL_bgl_za762resolvza762za7za7__2393z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2outputzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2392z00);
BGL_BIND_STRING(BGl_string2189z00zz__socketz00, BgL_bgl_string2189za700za7za7_2391za7);
BGL_BIND_STRING(BGl_string2269z00zz__socketz00, BgL_bgl_string2269za700za7za7_2390za7);
BGL_BIND_STRING(BGl_string2187z00zz__socketz00, BgL_bgl_string2187za700za7za7_2389za7);
BGL_BIND_STRING(BGl_string2268z00zz__socketz00, BgL_bgl_string2268za700za7za7_2388za7);
BGL_BIND_STRING(BGl_string2186z00zz__socketz00, BgL_bgl_string2186za700za7za7_2387za7);
BGL_BIND_STRING(BGl_string2267z00zz__socketz00, BgL_bgl_string2267za700za7za7_2386za7);
BGL_BIND_STRING(BGl_string2185z00zz__socketz00, BgL_bgl_string2185za700za7za7_2385za7);
BGL_BIND_STRING(BGl_string2266z00zz__socketz00, BgL_bgl_string2266za700za7za7_2384za7);
BGL_BIND_STRING(BGl_string2184z00zz__socketz00, BgL_bgl_string2184za700za7za7_2383za7);
BGL_BIND_STRING(BGl_string2265z00zz__socketz00, BgL_bgl_string2265za700za7za7_2382za7);
BGL_BIND_STRING(BGl_string2183z00zz__socketz00, BgL_bgl_string2183za700za7za7_2381za7);
BGL_BIND_STRING(BGl_string2264z00zz__socketz00, BgL_bgl_string2264za700za7za7_2380za7);
BGL_BIND_STRING(BGl_string2182z00zz__socketz00, BgL_bgl_string2182za700za7za7_2379za7);
BGL_BIND_STRING(BGl_string2263z00zz__socketz00, BgL_bgl_string2263za700za7za7_2378za7);
BGL_BIND_STRING(BGl_string2262z00zz__socketz00, BgL_bgl_string2262za700za7za7_2377za7);
BGL_BIND_STRING(BGl_string2180z00zz__socketz00, BgL_bgl_string2180za700za7za7_2376za7);
BGL_BIND_STRING(BGl_string2261z00zz__socketz00, BgL_bgl_string2261za700za7za7_2375za7);
BGL_BIND_STRING(BGl_string2260z00zz__socketz00, BgL_bgl_string2260za700za7za7_2374za7);
BGL_BIND_PROCEDURE(BGl_socketzd2optionzd2setz12zd2envzc0zz__socketz00, BgL_bgl_za762socketza7d2opti2373z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2serverzf3zd2envz21zz__socketz00, BgL_bgl_za762datagramza7d2so2372z00);
BGL_BIND_STRING(BGl_string2178z00zz__socketz00, BgL_bgl_string2178za700za7za7_2371za7);
BGL_BIND_STRING(BGl_string2259z00zz__socketz00, BgL_bgl_string2259za700za7za7_2370za7);
BGL_BIND_STRING(BGl_string2258z00zz__socketz00, BgL_bgl_string2258za700za7za7_2369za7);
BGL_BIND_STRING(BGl_string2176z00zz__socketz00, BgL_bgl_string2176za700za7za7_2368za7);
BGL_BIND_STRING(BGl_string2257z00zz__socketz00, BgL_bgl_string2257za700za7za7_2367za7);
BGL_BIND_STRING(BGl_string2256z00zz__socketz00, BgL_bgl_string2256za700za7za7_2366za7);
BGL_BIND_STRING(BGl_string2174z00zz__socketz00, BgL_bgl_string2174za700za7za7_2365za7);
BGL_BIND_STRING(BGl_string2255z00zz__socketz00, BgL_bgl_string2255za700za7za7_2364za7);
BGL_BIND_STRING(BGl_string2254z00zz__socketz00, BgL_bgl_string2254za700za7za7_2363za7);
BGL_BIND_STRING(BGl_string2253z00zz__socketz00, BgL_bgl_string2253za700za7za7_2362za7);
BGL_BIND_STRING(BGl_string2171z00zz__socketz00, BgL_bgl_string2171za700za7za7_2361za7);
BGL_BIND_STRING(BGl_string2252z00zz__socketz00, BgL_bgl_string2252za700za7za7_2360za7);
BGL_BIND_STRING(BGl_string2170z00zz__socketz00, BgL_bgl_string2170za700za7za7_2359za7);
BGL_BIND_STRING(BGl_string2251z00zz__socketz00, BgL_bgl_string2251za700za7za7_2358za7);
BGL_BIND_PROCEDURE(BGl_makezd2datagramzd2unboundzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2357za7);
BGL_BIND_STRING(BGl_string2250z00zz__socketz00, BgL_bgl_string2250za700za7za7_2356za7);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2clientzf3zd2envz21zz__socketz00, BgL_bgl_za762datagramza7d2so2355z00);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2portzd2numberzd2envz00zz__socketz00, BgL_bgl_za762datagramza7d2so2354z00);
BGL_BIND_STRING(BGl_string2169z00zz__socketz00, BgL_bgl_string2169za700za7za7_2353za7);
BGL_BIND_STRING(BGl_string2249z00zz__socketz00, BgL_bgl_string2249za700za7za7_2352za7);
BGL_BIND_STRING(BGl_string2167z00zz__socketz00, BgL_bgl_string2167za700za7za7_2351za7);
BGL_BIND_STRING(BGl_string2166z00zz__socketz00, BgL_bgl_string2166za700za7za7_2350za7);
BGL_BIND_STRING(BGl_string2247z00zz__socketz00, BgL_bgl_string2247za700za7za7_2349za7);
BGL_BIND_STRING(BGl_string2165z00zz__socketz00, BgL_bgl_string2165za700za7za7_2348za7);
BGL_BIND_STRING(BGl_string2246z00zz__socketz00, BgL_bgl_string2246za700za7za7_2347za7);
BGL_BIND_STRING(BGl_string2164z00zz__socketz00, BgL_bgl_string2164za700za7za7_2346za7);
BGL_BIND_STRING(BGl_string2245z00zz__socketz00, BgL_bgl_string2245za700za7za7_2345za7);
BGL_BIND_STRING(BGl_string2163z00zz__socketz00, BgL_bgl_string2163za700za7za7_2344za7);
BGL_BIND_STRING(BGl_string2244z00zz__socketz00, BgL_bgl_string2244za700za7za7_2343za7);
BGL_BIND_STRING(BGl_string2162z00zz__socketz00, BgL_bgl_string2162za700za7za7_2342za7);
BGL_BIND_STRING(BGl_string2243z00zz__socketz00, BgL_bgl_string2243za700za7za7_2341za7);
BGL_BIND_STRING(BGl_string2161z00zz__socketz00, BgL_bgl_string2161za700za7za7_2340za7);
BGL_BIND_STRING(BGl_string2242z00zz__socketz00, BgL_bgl_string2242za700za7za7_2339za7);
BGL_BIND_PROCEDURE(BGl_proc2154z00zz__socketz00, BgL_bgl_za762za7c3za704anonymo2338za7);
BGL_BIND_STRING(BGl_string2160z00zz__socketz00, BgL_bgl_string2160za700za7za7_2337za7);
BGL_BIND_STRING(BGl_string2240z00zz__socketz00, BgL_bgl_string2240za700za7za7_2336za7);
BGL_BIND_PROCEDURE(BGl_socketzd2localzd2addresszd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2loca2335z00);
BGL_BIND_STRING(BGl_string2159z00zz__socketz00, BgL_bgl_string2159za700za7za7_2334za7);
BGL_BIND_PROCEDURE(BGl_socketzd2portzd2numberzd2envzd2zz__socketz00, BgL_bgl_za762socketza7d2port2333z00);
BGL_BIND_STRING(BGl_string2158z00zz__socketz00, BgL_bgl_string2158za700za7za7_2332za7);
BGL_BIND_PROCEDURE(BGl_z52socketzd2initz12zd2envz40zz__socketz00, BgL_bgl_za762za752socketza7d2i2331za7);
BGL_BIND_STRING(BGl_string2157z00zz__socketz00, BgL_bgl_string2157za700za7za7_2330za7);
BGL_BIND_STRING(BGl_string2238z00zz__socketz00, BgL_bgl_string2238za700za7za7_2329za7);
BGL_BIND_STRING(BGl_string2156z00zz__socketz00, BgL_bgl_string2156za700za7za7_2328za7);
BGL_BIND_STRING(BGl_string2155z00zz__socketz00, BgL_bgl_string2155za700za7za7_2327za7);
BGL_BIND_STRING(BGl_string2236z00zz__socketz00, BgL_bgl_string2236za700za7za7_2326za7);
BGL_BIND_STRING(BGl_string2235z00zz__socketz00, BgL_bgl_string2235za700za7za7_2325za7);
BGL_BIND_STRING(BGl_string2153z00zz__socketz00, BgL_bgl_string2153za700za7za7_2324za7);
BGL_BIND_STRING(BGl_string2233z00zz__socketz00, BgL_bgl_string2233za700za7za7_2323za7);
BGL_BIND_STRING(BGl_string2232z00zz__socketz00, BgL_bgl_string2232za700za7za7_2322za7);
BGL_BIND_STRING(BGl_string2231z00zz__socketz00, BgL_bgl_string2231za700za7za7_2321za7);
BGL_BIND_STRING(BGl_string2230z00zz__socketz00, BgL_bgl_string2230za700za7za7_2320za7);
BGL_BIND_PROCEDURE(BGl_makezd2serverzd2socketzd2envzd2zz__socketz00, BgL_bgl_za762makeza7d2server2319z00);
BGL_BIND_PROCEDURE(BGl_socketzd2shutdownzd2envz00zz__socketz00, BgL_bgl__socketza7d2shutdo2318za7);
BGL_BIND_STRING(BGl_string2229z00zz__socketz00, BgL_bgl_string2229za700za7za7_2317za7);
BGL_BIND_PROCEDURE(BGl_socketzd2optionzd2envz00zz__socketz00, BgL_bgl_za762socketza7d2opti2316z00);
BGL_BIND_STRING(BGl_string2228z00zz__socketz00, BgL_bgl_string2228za700za7za7_2315za7);
BGL_BIND_STRING(BGl_string2227z00zz__socketz00, BgL_bgl_string2227za700za7za7_2314za7);
BGL_BIND_STRING(BGl_string2225z00zz__socketz00, BgL_bgl_string2225za700za7za7_2313za7);
BGL_BIND_STRING(BGl_string2223z00zz__socketz00, BgL_bgl_string2223za700za7za7_2312za7);
BGL_BIND_PROCEDURE(BGl_socketzd2acceptzd2manyzd2envzd2zz__socketz00, BgL_bgl__socketza7d2accept2311za7);
BGL_BIND_STRING(BGl_string2220z00zz__socketz00, BgL_bgl_string2220za700za7za7_2310za7);
BGL_BIND_PROCEDURE(BGl_makezd2clientzd2socketzd2envzd2zz__socketz00, BgL_bgl__makeza7d2clientza7d2309z00);
BGL_BIND_STRING(BGl_string2219z00zz__socketz00, BgL_bgl_string2219za700za7za7_2308za7);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2sendzd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2307z00);
BGL_BIND_STRING(BGl_string2218z00zz__socketz00, BgL_bgl_string2218za700za7za7_2306za7);
BGL_BIND_STRING(BGl_string2217z00zz__socketz00, BgL_bgl_string2217za700za7za7_2305za7);
BGL_BIND_STRING(BGl_string2216z00zz__socketz00, BgL_bgl_string2216za700za7za7_2304za7);
BGL_BIND_STRING(BGl_string2214z00zz__socketz00, BgL_bgl_string2214za700za7za7_2303za7);
BGL_BIND_PROCEDURE(BGl_proc2206z00zz__socketz00, BgL_bgl_za762za7c3za704anonymo2302za7);
BGL_BIND_PROCEDURE(BGl_datagramzd2socketzd2receivezd2envzd2zz__socketz00, BgL_bgl_za762datagramza7d2so2301z00);
BGL_BIND_STRING(BGl_string2211z00zz__socketz00, BgL_bgl_string2211za700za7za7_2300za7);
BGL_BIND_PROCEDURE(BGl_makezd2datagramzd2serverzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2299za7);
BGL_BIND_STRING(BGl_string2210z00zz__socketz00, BgL_bgl_string2210za700za7za7_2298za7);
BGL_BIND_PROCEDURE(BGl_makezd2datagramzd2clientzd2socketzd2envz00zz__socketz00, BgL_bgl__makeza7d2datagram2297za7);
BGL_BIND_STRING(BGl_string2209z00zz__socketz00, BgL_bgl_string2209za700za7za7_2296za7);
BGL_BIND_STRING(BGl_string2208z00zz__socketz00, BgL_bgl_string2208za700za7za7_2295za7);
BGL_BIND_PROCEDURE(BGl_socketzd2closezd2envz00zz__socketz00, BgL_bgl_za762socketza7d2clos2294z00);
BGL_BIND_STRING(BGl_string2207z00zz__socketz00, BgL_bgl_string2207za700za7za7_2293za7);
BGL_BIND_PROCEDURE(BGl_hostinfozd2envzd2zz__socketz00, BgL_bgl_za762hostinfoza762za7za72292z00);
BGL_BIND_STRING(BGl_string2205z00zz__socketz00, BgL_bgl_string2205za700za7za7_2291za7);
BGL_BIND_STRING(BGl_string2204z00zz__socketz00, BgL_bgl_string2204za700za7za7_2290za7);
BGL_BIND_STRING(BGl_string2202z00zz__socketz00, BgL_bgl_string2202za700za7za7_2289za7);
}

/* 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_keyword2213z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2222z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2224z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_requirezd2initializa7ationz75zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2173z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2175z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2177z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2179z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2215z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2226z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_list2200z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2234z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2237z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2239z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2241z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_list2212z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2248z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2168z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_za2socketzd2mutexza2zd2zz__socketz00) );
ADD_ROOT( (void *)(&BGl_list2221z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2181z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2188z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2270z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2190z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2193z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2275z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2195z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_symbol2280z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_list2172z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2201z00zz__socketz00) );
ADD_ROOT( (void *)(&BGl_keyword2203z00zz__socketz00) );
#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__socketz00(long BgL_checksumz00_2759, char * BgL_fromz00_2760)
{
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zz__socketz00))
{ 
BGl_requirezd2initializa7ationz75zz__socketz00 = 
BBOOL(((bool_t)0)); 
bgl_constant_bindings(); 
BGl_gczd2rootszd2initz00zz__socketz00(); 
BGl_cnstzd2initzd2zz__socketz00(); 
BGl_importedzd2moduleszd2initz00zz__socketz00(); 
return 
BGl_toplevelzd2initzd2zz__socketz00();}  else 
{ 
return BUNSPEC;} } 

}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
BGl_symbol2168z00zz__socketz00 = 
bstring_to_symbol(BGl_string2169z00zz__socketz00); 
BGl_keyword2173z00zz__socketz00 = 
bstring_to_keyword(BGl_string2174z00zz__socketz00); 
BGl_keyword2175z00zz__socketz00 = 
bstring_to_keyword(BGl_string2176z00zz__socketz00); 
BGl_keyword2177z00zz__socketz00 = 
bstring_to_keyword(BGl_string2178z00zz__socketz00); 
BGl_keyword2179z00zz__socketz00 = 
bstring_to_keyword(BGl_string2180z00zz__socketz00); 
BGl_list2172z00zz__socketz00 = 
MAKE_YOUNG_PAIR(BGl_keyword2173z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2175z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2177z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2179z00zz__socketz00, BNIL)))); 
BGl_symbol2181z00zz__socketz00 = 
bstring_to_symbol(BGl_string2182z00zz__socketz00); 
BGl_symbol2188z00zz__socketz00 = 
bstring_to_symbol(BGl_string2189z00zz__socketz00); 
BGl_symbol2190z00zz__socketz00 = 
bstring_to_symbol(BGl_string2191z00zz__socketz00); 
BGl_symbol2193z00zz__socketz00 = 
bstring_to_symbol(BGl_string2194z00zz__socketz00); 
BGl_symbol2195z00zz__socketz00 = 
bstring_to_symbol(BGl_string2196z00zz__socketz00); 
BGl_keyword2201z00zz__socketz00 = 
bstring_to_keyword(BGl_string2202z00zz__socketz00); 
BGl_keyword2203z00zz__socketz00 = 
bstring_to_keyword(BGl_string2204z00zz__socketz00); 
BGl_list2200z00zz__socketz00 = 
MAKE_YOUNG_PAIR(BGl_keyword2173z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2201z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2203z00zz__socketz00, BNIL))); 
BGl_keyword2213z00zz__socketz00 = 
bstring_to_keyword(BGl_string2214z00zz__socketz00); 
BGl_list2212z00zz__socketz00 = 
MAKE_YOUNG_PAIR(BGl_keyword2213z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2175z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2177z00zz__socketz00, BNIL))); 
BGl_symbol2215z00zz__socketz00 = 
bstring_to_symbol(BGl_string2216z00zz__socketz00); 
BGl_keyword2222z00zz__socketz00 = 
bstring_to_keyword(BGl_string2223z00zz__socketz00); 
BGl_keyword2224z00zz__socketz00 = 
bstring_to_keyword(BGl_string2225z00zz__socketz00); 
BGl_list2221z00zz__socketz00 = 
MAKE_YOUNG_PAIR(BGl_keyword2213z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2222z00zz__socketz00, 
MAKE_YOUNG_PAIR(BGl_keyword2224z00zz__socketz00, BNIL))); 
BGl_symbol2226z00zz__socketz00 = 
bstring_to_symbol(BGl_string2227z00zz__socketz00); 
BGl_symbol2234z00zz__socketz00 = 
bstring_to_symbol(BGl_string2235z00zz__socketz00); 
BGl_symbol2237z00zz__socketz00 = 
bstring_to_symbol(BGl_string2238z00zz__socketz00); 
BGl_symbol2239z00zz__socketz00 = 
bstring_to_symbol(BGl_string2240z00zz__socketz00); 
BGl_symbol2241z00zz__socketz00 = 
bstring_to_symbol(BGl_string2242z00zz__socketz00); 
BGl_symbol2248z00zz__socketz00 = 
bstring_to_symbol(BGl_string2249z00zz__socketz00); 
BGl_symbol2270z00zz__socketz00 = 
bstring_to_symbol(BGl_string2271z00zz__socketz00); 
BGl_symbol2275z00zz__socketz00 = 
bstring_to_symbol(BGl_string2276z00zz__socketz00); 
return ( 
BGl_symbol2280z00zz__socketz00 = 
bstring_to_symbol(BGl_string2281z00zz__socketz00), BUNSPEC) ;} 

}



/* gc-roots-init */
obj_t BGl_gczd2rootszd2initz00zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
return 
bgl_gc_roots_register();} 

}



/* toplevel-init */
obj_t BGl_toplevelzd2initzd2zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
BGl_za2socketzd2initializa7edza2z75zz__socketz00 = ((bool_t)0); 
return ( 
BGl_za2socketzd2mutexza2zd2zz__socketz00 = 
bgl_make_mutex(BGl_string2153z00zz__socketz00), BUNSPEC) ;} 

}



/* %socket-init! */
BGL_EXPORTED_DEF obj_t BGl_z52socketzd2initz12z92zz__socketz00(void)
{
{ /* Llib/socket.scm 286 */
{ /* Llib/socket.scm 287 */
 obj_t BgL_top2442z00_2810;
BgL_top2442z00_2810 = 
BGL_EXITD_TOP_AS_OBJ(); 
BGL_MUTEX_LOCK(BGl_za2socketzd2mutexza2zd2zz__socketz00); 
BGL_EXITD_PUSH_PROTECT(BgL_top2442z00_2810, BGl_za2socketzd2mutexza2zd2zz__socketz00); BUNSPEC; 
{ /* Llib/socket.scm 287 */
 obj_t BgL_tmp2441z00_2809;
if(BGl_za2socketzd2initializa7edza2z75zz__socketz00)
{ /* Llib/socket.scm 288 */
BgL_tmp2441z00_2809 = BFALSE; }  else 
{ /* Llib/socket.scm 288 */
BGl_za2socketzd2initializa7edza2z75zz__socketz00 = ((bool_t)1); 
socket_startup(); BUNSPEC; 
BGl_registerzd2exitzd2functionz12z12zz__biglooz00(BGl_proc2154z00zz__socketz00); 
BgL_tmp2441z00_2809 = BUNSPEC; } 
BGL_EXITD_POP_PROTECT(BgL_top2442z00_2810); BUNSPEC; 
BGL_MUTEX_UNLOCK(BGl_za2socketzd2mutexza2zd2zz__socketz00); 
return BgL_tmp2441z00_2809;} } } 

}



/* &%socket-init! */
obj_t BGl_z62z52socketzd2initz12zf0zz__socketz00(obj_t BgL_envz00_2229)
{
{ /* Llib/socket.scm 286 */
return 
BGl_z52socketzd2initz12z92zz__socketz00();} 

}



/* &<@anonymous:1249> */
obj_t BGl_z62zc3z04anonymousza31249ze3ze5zz__socketz00(obj_t BgL_envz00_2230, obj_t BgL_xz00_2231)
{
{ /* Llib/socket.scm 292 */
socket_cleanup(); BUNSPEC; 
return BgL_xz00_2231;} 

}



/* socket? */
BGL_EXPORTED_DEF bool_t BGl_socketzf3zf3zz__socketz00(obj_t BgL_objz00_3)
{
{ /* Llib/socket.scm 302 */
return 
SOCKETP(BgL_objz00_3);} 

}



/* &socket? */
obj_t BGl_z62socketzf3z91zz__socketz00(obj_t BgL_envz00_2232, obj_t BgL_objz00_2233)
{
{ /* Llib/socket.scm 302 */
return 
BBOOL(
BGl_socketzf3zf3zz__socketz00(BgL_objz00_2233));} 

}



/* socket-server? */
BGL_EXPORTED_DEF bool_t BGl_socketzd2serverzf3z21zz__socketz00(obj_t BgL_objz00_4)
{
{ /* Llib/socket.scm 308 */
return 
BGL_SOCKET_SERVERP(BgL_objz00_4);} 

}



/* &socket-server? */
obj_t BGl_z62socketzd2serverzf3z43zz__socketz00(obj_t BgL_envz00_2234, obj_t BgL_objz00_2235)
{
{ /* Llib/socket.scm 308 */
return 
BBOOL(
BGl_socketzd2serverzf3z21zz__socketz00(BgL_objz00_2235));} 

}



/* socket-client? */
BGL_EXPORTED_DEF bool_t BGl_socketzd2clientzf3z21zz__socketz00(obj_t BgL_objz00_5)
{
{ /* Llib/socket.scm 314 */
return 
BGL_SOCKET_CLIENTP(BgL_objz00_5);} 

}



/* &socket-client? */
obj_t BGl_z62socketzd2clientzf3z43zz__socketz00(obj_t BgL_envz00_2236, obj_t BgL_objz00_2237)
{
{ /* Llib/socket.scm 314 */
return 
BBOOL(
BGl_socketzd2clientzf3z21zz__socketz00(BgL_objz00_2237));} 

}



/* socket-hostname */
BGL_EXPORTED_DEF obj_t BGl_socketzd2hostnamezd2zz__socketz00(obj_t BgL_socketz00_6)
{
{ /* Llib/socket.scm 320 */
return 
SOCKET_HOSTNAME(BgL_socketz00_6);} 

}



/* &socket-hostname */
obj_t BGl_z62socketzd2hostnamezb0zz__socketz00(obj_t BgL_envz00_2238, obj_t BgL_socketz00_2239)
{
{ /* Llib/socket.scm 320 */
{ /* Llib/socket.scm 321 */
 obj_t BgL_auxz00_2831;
if(
SOCKETP(BgL_socketz00_2239))
{ /* Llib/socket.scm 321 */
BgL_auxz00_2831 = BgL_socketz00_2239
; }  else 
{ 
 obj_t BgL_auxz00_2834;
BgL_auxz00_2834 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(14228L), BGl_string2156z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2239); 
FAILURE(BgL_auxz00_2834,BFALSE,BFALSE);} 
return 
BGl_socketzd2hostnamezd2zz__socketz00(BgL_auxz00_2831);} } 

}



/* socket-host-address */
BGL_EXPORTED_DEF obj_t BGl_socketzd2hostzd2addressz00zz__socketz00(obj_t BgL_socketz00_7)
{
{ /* Llib/socket.scm 326 */
BGL_TAIL return 
bgl_socket_host_addr(BgL_socketz00_7);} 

}



/* &socket-host-address */
obj_t BGl_z62socketzd2hostzd2addressz62zz__socketz00(obj_t BgL_envz00_2240, obj_t BgL_socketz00_2241)
{
{ /* Llib/socket.scm 326 */
{ /* Llib/socket.scm 327 */
 obj_t BgL_auxz00_2840;
if(
SOCKETP(BgL_socketz00_2241))
{ /* Llib/socket.scm 327 */
BgL_auxz00_2840 = BgL_socketz00_2241
; }  else 
{ 
 obj_t BgL_auxz00_2843;
BgL_auxz00_2843 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(14526L), BGl_string2157z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2241); 
FAILURE(BgL_auxz00_2843,BFALSE,BFALSE);} 
return 
BGl_socketzd2hostzd2addressz00zz__socketz00(BgL_auxz00_2840);} } 

}



/* socket-local-address */
BGL_EXPORTED_DEF obj_t BGl_socketzd2localzd2addressz00zz__socketz00(obj_t BgL_socketz00_8)
{
{ /* Llib/socket.scm 332 */
BGL_TAIL return 
bgl_socket_local_addr(BgL_socketz00_8);} 

}



/* &socket-local-address */
obj_t BGl_z62socketzd2localzd2addressz62zz__socketz00(obj_t BgL_envz00_2242, obj_t BgL_socketz00_2243)
{
{ /* Llib/socket.scm 332 */
{ /* Llib/socket.scm 333 */
 obj_t BgL_auxz00_2849;
if(
SOCKETP(BgL_socketz00_2243))
{ /* Llib/socket.scm 333 */
BgL_auxz00_2849 = BgL_socketz00_2243
; }  else 
{ 
 obj_t BgL_auxz00_2852;
BgL_auxz00_2852 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(14833L), BGl_string2158z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2243); 
FAILURE(BgL_auxz00_2852,BFALSE,BFALSE);} 
return 
BGl_socketzd2localzd2addressz00zz__socketz00(BgL_auxz00_2849);} } 

}



/* socket-local? */
BGL_EXPORTED_DEF bool_t BGl_socketzd2localzf3z21zz__socketz00(obj_t BgL_socketz00_9)
{
{ /* Llib/socket.scm 338 */
BGL_TAIL return 
bgl_socket_localp(BgL_socketz00_9);} 

}



/* &socket-local? */
obj_t BGl_z62socketzd2localzf3z43zz__socketz00(obj_t BgL_envz00_2244, obj_t BgL_socketz00_2245)
{
{ /* Llib/socket.scm 338 */
{ /* Llib/socket.scm 341 */
 bool_t BgL_tmpz00_2858;
{ /* Llib/socket.scm 341 */
 obj_t BgL_auxz00_2859;
if(
SOCKETP(BgL_socketz00_2245))
{ /* Llib/socket.scm 341 */
BgL_auxz00_2859 = BgL_socketz00_2245
; }  else 
{ 
 obj_t BgL_auxz00_2862;
BgL_auxz00_2862 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(15170L), BGl_string2159z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2245); 
FAILURE(BgL_auxz00_2862,BFALSE,BFALSE);} 
BgL_tmpz00_2858 = 
BGl_socketzd2localzf3z21zz__socketz00(BgL_auxz00_2859); } 
return 
BBOOL(BgL_tmpz00_2858);} } 

}



/* socket-host-address=? */
BGL_EXPORTED_DEF bool_t BGl_socketzd2hostzd2addresszd3zf3z20zz__socketz00(obj_t BgL_socketz00_10, obj_t BgL_addrz00_11)
{
{ /* Llib/socket.scm 348 */
BGL_TAIL return 
bgl_socket_host_addr_cmp(BgL_socketz00_10, BgL_addrz00_11);} 

}



/* &socket-host-address=? */
obj_t BGl_z62socketzd2hostzd2addresszd3zf3z42zz__socketz00(obj_t BgL_envz00_2246, obj_t BgL_socketz00_2247, obj_t BgL_addrz00_2248)
{
{ /* Llib/socket.scm 348 */
{ /* Llib/socket.scm 351 */
 bool_t BgL_tmpz00_2869;
{ /* Llib/socket.scm 351 */
 obj_t BgL_auxz00_2877; obj_t BgL_auxz00_2870;
if(
STRINGP(BgL_addrz00_2248))
{ /* Llib/socket.scm 351 */
BgL_auxz00_2877 = BgL_addrz00_2248
; }  else 
{ 
 obj_t BgL_auxz00_2880;
BgL_auxz00_2880 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(15624L), BGl_string2160z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_addrz00_2248); 
FAILURE(BgL_auxz00_2880,BFALSE,BFALSE);} 
if(
SOCKETP(BgL_socketz00_2247))
{ /* Llib/socket.scm 351 */
BgL_auxz00_2870 = BgL_socketz00_2247
; }  else 
{ 
 obj_t BgL_auxz00_2873;
BgL_auxz00_2873 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(15624L), BGl_string2160z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2247); 
FAILURE(BgL_auxz00_2873,BFALSE,BFALSE);} 
BgL_tmpz00_2869 = 
BGl_socketzd2hostzd2addresszd3zf3z20zz__socketz00(BgL_auxz00_2870, BgL_auxz00_2877); } 
return 
BBOOL(BgL_tmpz00_2869);} } 

}



/* socket-down? */
BGL_EXPORTED_DEF bool_t BGl_socketzd2downzf3z21zz__socketz00(obj_t BgL_socketz00_12)
{
{ /* Llib/socket.scm 358 */
return 
SOCKET_DOWNP(BgL_socketz00_12);} 

}



/* &socket-down? */
obj_t BGl_z62socketzd2downzf3z43zz__socketz00(obj_t BgL_envz00_2249, obj_t BgL_socketz00_2250)
{
{ /* Llib/socket.scm 358 */
{ /* Llib/socket.scm 359 */
 bool_t BgL_tmpz00_2887;
{ /* Llib/socket.scm 359 */
 obj_t BgL_auxz00_2888;
if(
SOCKETP(BgL_socketz00_2250))
{ /* Llib/socket.scm 359 */
BgL_auxz00_2888 = BgL_socketz00_2250
; }  else 
{ 
 obj_t BgL_auxz00_2891;
BgL_auxz00_2891 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(16009L), BGl_string2162z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2250); 
FAILURE(BgL_auxz00_2891,BFALSE,BFALSE);} 
BgL_tmpz00_2887 = 
BGl_socketzd2downzf3z21zz__socketz00(BgL_auxz00_2888); } 
return 
BBOOL(BgL_tmpz00_2887);} } 

}



/* socket-port-number */
BGL_EXPORTED_DEF obj_t BGl_socketzd2portzd2numberz00zz__socketz00(obj_t BgL_socketz00_13)
{
{ /* Llib/socket.scm 364 */
return 
BINT(
SOCKET_PORT(BgL_socketz00_13));} 

}



/* &socket-port-number */
obj_t BGl_z62socketzd2portzd2numberz62zz__socketz00(obj_t BgL_envz00_2251, obj_t BgL_socketz00_2252)
{
{ /* Llib/socket.scm 364 */
{ /* Llib/socket.scm 365 */
 obj_t BgL_auxz00_2899;
if(
SOCKETP(BgL_socketz00_2252))
{ /* Llib/socket.scm 365 */
BgL_auxz00_2899 = BgL_socketz00_2252
; }  else 
{ 
 obj_t BgL_auxz00_2902;
BgL_auxz00_2902 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(16317L), BGl_string2163z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2252); 
FAILURE(BgL_auxz00_2902,BFALSE,BFALSE);} 
return 
BGl_socketzd2portzd2numberz00zz__socketz00(BgL_auxz00_2899);} } 

}



/* socket-input */
BGL_EXPORTED_DEF obj_t BGl_socketzd2inputzd2zz__socketz00(obj_t BgL_socketz00_14)
{
{ /* Llib/socket.scm 370 */
return 
SOCKET_INPUT(BgL_socketz00_14);} 

}



/* &socket-input */
obj_t BGl_z62socketzd2inputzb0zz__socketz00(obj_t BgL_envz00_2253, obj_t BgL_socketz00_2254)
{
{ /* Llib/socket.scm 370 */
{ /* Llib/socket.scm 371 */
 obj_t BgL_auxz00_2908;
if(
SOCKETP(BgL_socketz00_2254))
{ /* Llib/socket.scm 371 */
BgL_auxz00_2908 = BgL_socketz00_2254
; }  else 
{ 
 obj_t BgL_auxz00_2911;
BgL_auxz00_2911 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(16619L), BGl_string2164z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2254); 
FAILURE(BgL_auxz00_2911,BFALSE,BFALSE);} 
return 
BGl_socketzd2inputzd2zz__socketz00(BgL_auxz00_2908);} } 

}



/* socket-output */
BGL_EXPORTED_DEF obj_t BGl_socketzd2outputzd2zz__socketz00(obj_t BgL_socketz00_15)
{
{ /* Llib/socket.scm 376 */
return 
SOCKET_OUTPUT(BgL_socketz00_15);} 

}



/* &socket-output */
obj_t BGl_z62socketzd2outputzb0zz__socketz00(obj_t BgL_envz00_2255, obj_t BgL_socketz00_2256)
{
{ /* Llib/socket.scm 376 */
{ /* Llib/socket.scm 377 */
 obj_t BgL_auxz00_2917;
if(
SOCKETP(BgL_socketz00_2256))
{ /* Llib/socket.scm 377 */
BgL_auxz00_2917 = BgL_socketz00_2256
; }  else 
{ 
 obj_t BgL_auxz00_2920;
BgL_auxz00_2920 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(16916L), BGl_string2165z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2256); 
FAILURE(BgL_auxz00_2920,BFALSE,BFALSE);} 
return 
BGl_socketzd2outputzd2zz__socketz00(BgL_auxz00_2917);} } 

}



/* _make-client-socket */
obj_t BGl__makezd2clientzd2socketz00zz__socketz00(obj_t BgL_env1115z00_23, obj_t BgL_opt1114z00_22)
{
{ /* Llib/socket.scm 382 */
{ /* Llib/socket.scm 382 */
 long BgL_l1116z00_1205;
{ /* Llib/socket.scm 382 */
 obj_t BgL_vectorz00_1870;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_vectorz00_1870 = BgL_opt1114z00_22; }  else 
{ 
 obj_t BgL_auxz00_2927;
BgL_auxz00_2927 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_2927,BFALSE,BFALSE);} 
BgL_l1116z00_1205 = 
VECTOR_LENGTH(BgL_vectorz00_1870); } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_g1124z00_1209; obj_t BgL_g1125z00_1210;
{ 
 obj_t BgL_auxz00_2932;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_2932 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_2935;
BgL_auxz00_2935 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_2935,BFALSE,BFALSE);} 
BgL_g1124z00_1209 = 
VECTOR_REF(BgL_auxz00_2932,0L); } 
{ 
 obj_t BgL_auxz00_2940;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_2940 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_2943;
BgL_auxz00_2943 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_2943,BFALSE,BFALSE);} 
BgL_g1125z00_1210 = 
VECTOR_REF(BgL_auxz00_2940,1L); } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_domainz00_1211;
BgL_domainz00_1211 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_inbufz00_1212;
BgL_inbufz00_1212 = BTRUE; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_outbufz00_1213;
BgL_outbufz00_1213 = BTRUE; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_timeoutz00_1214;
BgL_timeoutz00_1214 = 
BINT(0L); 
{ /* Llib/socket.scm 382 */

{ 
 long BgL_iz00_1215;
BgL_iz00_1215 = 2L; 
BgL_check1118z00_1216:
if(
(BgL_iz00_1215==BgL_l1116z00_1205))
{ /* Llib/socket.scm 382 */BNIL; }  else 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2458z00_2951;
{ /* Llib/socket.scm 382 */
 obj_t BgL_arg1259z00_1222;
{ /* Llib/socket.scm 382 */
 obj_t BgL_vectorz00_1880;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_vectorz00_1880 = BgL_opt1114z00_22; }  else 
{ 
 obj_t BgL_auxz00_2954;
BgL_auxz00_2954 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2170z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_2954,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2460z00_2958;
{ /* Llib/socket.scm 382 */
 long BgL_tmpz00_2959;
BgL_tmpz00_2959 = 
VECTOR_LENGTH(BgL_vectorz00_1880); 
BgL_test2460z00_2958 = 
BOUND_CHECK(BgL_iz00_1215, BgL_tmpz00_2959); } 
if(BgL_test2460z00_2958)
{ /* Llib/socket.scm 382 */
BgL_arg1259z00_1222 = 
VECTOR_REF(BgL_vectorz00_1880,BgL_iz00_1215); }  else 
{ 
 obj_t BgL_auxz00_2963;
BgL_auxz00_2963 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1880, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1880)), 
(int)(BgL_iz00_1215)); 
FAILURE(BgL_auxz00_2963,BFALSE,BFALSE);} } } 
BgL_test2458z00_2951 = 
CBOOL(
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_arg1259z00_1222, BGl_list2172z00zz__socketz00)); } 
if(BgL_test2458z00_2951)
{ 
 long BgL_iz00_2972;
BgL_iz00_2972 = 
(BgL_iz00_1215+2L); 
BgL_iz00_1215 = BgL_iz00_2972; 
goto BgL_check1118z00_1216;}  else 
{ /* Llib/socket.scm 382 */
 obj_t BgL_arg1258z00_1221;
{ /* Llib/socket.scm 382 */
 obj_t BgL_vectorz00_1883;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_vectorz00_1883 = BgL_opt1114z00_22; }  else 
{ 
 obj_t BgL_auxz00_2976;
BgL_auxz00_2976 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2170z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_2976,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2462z00_2980;
{ /* Llib/socket.scm 382 */
 long BgL_tmpz00_2981;
BgL_tmpz00_2981 = 
VECTOR_LENGTH(BgL_vectorz00_1883); 
BgL_test2462z00_2980 = 
BOUND_CHECK(BgL_iz00_1215, BgL_tmpz00_2981); } 
if(BgL_test2462z00_2980)
{ /* Llib/socket.scm 382 */
BgL_arg1258z00_1221 = 
VECTOR_REF(BgL_vectorz00_1883,BgL_iz00_1215); }  else 
{ 
 obj_t BgL_auxz00_2985;
BgL_auxz00_2985 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1883, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1883)), 
(int)(BgL_iz00_1215)); 
FAILURE(BgL_auxz00_2985,BFALSE,BFALSE);} } } 
BGl_errorz00zz__errorz00(BGl_symbol2181z00zz__socketz00, BGl_string2183z00zz__socketz00, BgL_arg1258z00_1221); } } } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_index1120z00_1223;
BgL_index1120z00_1223 = 
BGl_search1117ze70ze7zz__socketz00(BgL_l1116z00_1205, BgL_opt1114z00_22, BGl_keyword2173z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2463z00_2994;
{ /* Llib/socket.scm 382 */
 long BgL_n1z00_1885;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_2995;
if(
INTEGERP(BgL_index1120z00_1223))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_2995 = BgL_index1120z00_1223
; }  else 
{ 
 obj_t BgL_auxz00_2998;
BgL_auxz00_2998 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1120z00_1223); 
FAILURE(BgL_auxz00_2998,BFALSE,BFALSE);} 
BgL_n1z00_1885 = 
(long)CINT(BgL_tmpz00_2995); } 
BgL_test2463z00_2994 = 
(BgL_n1z00_1885>=0L); } 
if(BgL_test2463z00_2994)
{ 
 long BgL_auxz00_3011; obj_t BgL_auxz00_3004;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3012;
if(
INTEGERP(BgL_index1120z00_1223))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3012 = BgL_index1120z00_1223
; }  else 
{ 
 obj_t BgL_auxz00_3015;
BgL_auxz00_3015 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1120z00_1223); 
FAILURE(BgL_auxz00_3015,BFALSE,BFALSE);} 
BgL_auxz00_3011 = 
(long)CINT(BgL_tmpz00_3012); } 
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3004 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3007;
BgL_auxz00_3007 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3007,BFALSE,BFALSE);} 
BgL_domainz00_1211 = 
VECTOR_REF(BgL_auxz00_3004,BgL_auxz00_3011); }  else 
{ /* Llib/socket.scm 382 */BFALSE; } } } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_index1121z00_1225;
BgL_index1121z00_1225 = 
BGl_search1117ze70ze7zz__socketz00(BgL_l1116z00_1205, BgL_opt1114z00_22, BGl_keyword2175z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2467z00_3022;
{ /* Llib/socket.scm 382 */
 long BgL_n1z00_1886;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3023;
if(
INTEGERP(BgL_index1121z00_1225))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3023 = BgL_index1121z00_1225
; }  else 
{ 
 obj_t BgL_auxz00_3026;
BgL_auxz00_3026 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1121z00_1225); 
FAILURE(BgL_auxz00_3026,BFALSE,BFALSE);} 
BgL_n1z00_1886 = 
(long)CINT(BgL_tmpz00_3023); } 
BgL_test2467z00_3022 = 
(BgL_n1z00_1886>=0L); } 
if(BgL_test2467z00_3022)
{ 
 long BgL_auxz00_3039; obj_t BgL_auxz00_3032;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3040;
if(
INTEGERP(BgL_index1121z00_1225))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3040 = BgL_index1121z00_1225
; }  else 
{ 
 obj_t BgL_auxz00_3043;
BgL_auxz00_3043 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1121z00_1225); 
FAILURE(BgL_auxz00_3043,BFALSE,BFALSE);} 
BgL_auxz00_3039 = 
(long)CINT(BgL_tmpz00_3040); } 
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3032 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3035;
BgL_auxz00_3035 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3035,BFALSE,BFALSE);} 
BgL_inbufz00_1212 = 
VECTOR_REF(BgL_auxz00_3032,BgL_auxz00_3039); }  else 
{ /* Llib/socket.scm 382 */BFALSE; } } } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_index1122z00_1227;
BgL_index1122z00_1227 = 
BGl_search1117ze70ze7zz__socketz00(BgL_l1116z00_1205, BgL_opt1114z00_22, BGl_keyword2177z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2471z00_3050;
{ /* Llib/socket.scm 382 */
 long BgL_n1z00_1887;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3051;
if(
INTEGERP(BgL_index1122z00_1227))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3051 = BgL_index1122z00_1227
; }  else 
{ 
 obj_t BgL_auxz00_3054;
BgL_auxz00_3054 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1122z00_1227); 
FAILURE(BgL_auxz00_3054,BFALSE,BFALSE);} 
BgL_n1z00_1887 = 
(long)CINT(BgL_tmpz00_3051); } 
BgL_test2471z00_3050 = 
(BgL_n1z00_1887>=0L); } 
if(BgL_test2471z00_3050)
{ 
 long BgL_auxz00_3067; obj_t BgL_auxz00_3060;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3068;
if(
INTEGERP(BgL_index1122z00_1227))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3068 = BgL_index1122z00_1227
; }  else 
{ 
 obj_t BgL_auxz00_3071;
BgL_auxz00_3071 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1122z00_1227); 
FAILURE(BgL_auxz00_3071,BFALSE,BFALSE);} 
BgL_auxz00_3067 = 
(long)CINT(BgL_tmpz00_3068); } 
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3060 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3063;
BgL_auxz00_3063 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3063,BFALSE,BFALSE);} 
BgL_outbufz00_1213 = 
VECTOR_REF(BgL_auxz00_3060,BgL_auxz00_3067); }  else 
{ /* Llib/socket.scm 382 */BFALSE; } } } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_index1123z00_1229;
BgL_index1123z00_1229 = 
BGl_search1117ze70ze7zz__socketz00(BgL_l1116z00_1205, BgL_opt1114z00_22, BGl_keyword2179z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 382 */
 bool_t BgL_test2475z00_3078;
{ /* Llib/socket.scm 382 */
 long BgL_n1z00_1888;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3079;
if(
INTEGERP(BgL_index1123z00_1229))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3079 = BgL_index1123z00_1229
; }  else 
{ 
 obj_t BgL_auxz00_3082;
BgL_auxz00_3082 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1123z00_1229); 
FAILURE(BgL_auxz00_3082,BFALSE,BFALSE);} 
BgL_n1z00_1888 = 
(long)CINT(BgL_tmpz00_3079); } 
BgL_test2475z00_3078 = 
(BgL_n1z00_1888>=0L); } 
if(BgL_test2475z00_3078)
{ 
 long BgL_auxz00_3095; obj_t BgL_auxz00_3088;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3096;
if(
INTEGERP(BgL_index1123z00_1229))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3096 = BgL_index1123z00_1229
; }  else 
{ 
 obj_t BgL_auxz00_3099;
BgL_auxz00_3099 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1123z00_1229); 
FAILURE(BgL_auxz00_3099,BFALSE,BFALSE);} 
BgL_auxz00_3095 = 
(long)CINT(BgL_tmpz00_3096); } 
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3088 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3091;
BgL_auxz00_3091 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3091,BFALSE,BFALSE);} 
BgL_timeoutz00_1214 = 
VECTOR_REF(BgL_auxz00_3088,BgL_auxz00_3095); }  else 
{ /* Llib/socket.scm 382 */BFALSE; } } } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_arg1265z00_1231; obj_t BgL_arg1266z00_1232;
{ 
 obj_t BgL_auxz00_3105;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3105 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3108;
BgL_auxz00_3108 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3108,BFALSE,BFALSE);} 
BgL_arg1265z00_1231 = 
VECTOR_REF(BgL_auxz00_3105,0L); } 
{ 
 obj_t BgL_auxz00_3113;
if(
VECTORP(BgL_opt1114z00_22))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3113 = BgL_opt1114z00_22
; }  else 
{ 
 obj_t BgL_auxz00_3116;
BgL_auxz00_3116 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_22); 
FAILURE(BgL_auxz00_3116,BFALSE,BFALSE);} 
BgL_arg1266z00_1232 = 
VECTOR_REF(BgL_auxz00_3113,1L); } 
{ /* Llib/socket.scm 382 */
 obj_t BgL_domainz00_1233;
BgL_domainz00_1233 = BgL_domainz00_1211; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_inbufz00_1234;
BgL_inbufz00_1234 = BgL_inbufz00_1212; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_outbufz00_1235;
BgL_outbufz00_1235 = BgL_outbufz00_1213; 
{ /* Llib/socket.scm 382 */
 obj_t BgL_timeoutz00_1236;
BgL_timeoutz00_1236 = BgL_timeoutz00_1214; 
{ /* Llib/socket.scm 382 */
 int BgL_auxz00_3128; obj_t BgL_auxz00_3121;
{ /* Llib/socket.scm 382 */
 obj_t BgL_tmpz00_3129;
if(
INTEGERP(BgL_arg1266z00_1232))
{ /* Llib/socket.scm 382 */
BgL_tmpz00_3129 = BgL_arg1266z00_1232
; }  else 
{ 
 obj_t BgL_auxz00_3132;
BgL_auxz00_3132 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_arg1266z00_1232); 
FAILURE(BgL_auxz00_3132,BFALSE,BFALSE);} 
BgL_auxz00_3128 = 
CINT(BgL_tmpz00_3129); } 
if(
STRINGP(BgL_arg1265z00_1231))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3121 = BgL_arg1265z00_1231
; }  else 
{ 
 obj_t BgL_auxz00_3124;
BgL_auxz00_3124 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2166z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_arg1265z00_1231); 
FAILURE(BgL_auxz00_3124,BFALSE,BFALSE);} 
return 
BGl_makezd2clientzd2socketz00zz__socketz00(BgL_auxz00_3121, BgL_auxz00_3128, BgL_domainz00_1233, BgL_inbufz00_1234, BgL_outbufz00_1235, BgL_timeoutz00_1236);} } } } } } } } } } } } } } 

}



/* search1117~0 */
obj_t BGl_search1117ze70ze7zz__socketz00(long BgL_l1116z00_2322, obj_t BgL_opt1114z00_2321, obj_t BgL_k1z00_1206, long BgL_iz00_1207)
{
{ /* Llib/socket.scm 382 */
BGl_search1117ze70ze7zz__socketz00:
if(
(BgL_iz00_1207==BgL_l1116z00_2322))
{ /* Llib/socket.scm 382 */
return 
BINT((-1L));}  else 
{ /* Llib/socket.scm 382 */
if(
(BgL_iz00_1207==
(BgL_l1116z00_2322-1L)))
{ /* Llib/socket.scm 382 */
 long BgL_arg1271z00_1240;
{ 
 obj_t BgL_auxz00_3144;
if(
VECTORP(BgL_opt1114z00_2321))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3144 = BgL_opt1114z00_2321
; }  else 
{ 
 obj_t BgL_auxz00_3147;
BgL_auxz00_3147 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2185z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_2321); 
FAILURE(BgL_auxz00_3147,BFALSE,BFALSE);} 
BgL_arg1271z00_1240 = 
VECTOR_LENGTH(BgL_auxz00_3144); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2181z00zz__socketz00, BGl_string2186z00zz__socketz00, 
BINT(BgL_arg1271z00_1240));}  else 
{ /* Llib/socket.scm 382 */
 obj_t BgL_vz00_1241;
{ 
 obj_t BgL_auxz00_3154;
if(
VECTORP(BgL_opt1114z00_2321))
{ /* Llib/socket.scm 382 */
BgL_auxz00_3154 = BgL_opt1114z00_2321
; }  else 
{ 
 obj_t BgL_auxz00_3157;
BgL_auxz00_3157 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17165L), BGl_string2185z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1114z00_2321); 
FAILURE(BgL_auxz00_3157,BFALSE,BFALSE);} 
BgL_vz00_1241 = 
VECTOR_REF(BgL_auxz00_3154,BgL_iz00_1207); } 
if(
(BgL_vz00_1241==BgL_k1z00_1206))
{ /* Llib/socket.scm 382 */
return 
BINT(
(BgL_iz00_1207+1L));}  else 
{ 
 long BgL_iz00_3166;
BgL_iz00_3166 = 
(BgL_iz00_1207+2L); 
BgL_iz00_1207 = BgL_iz00_3166; 
goto BGl_search1117ze70ze7zz__socketz00;} } } } 

}



/* make-client-socket */
BGL_EXPORTED_DEF obj_t BGl_makezd2clientzd2socketz00zz__socketz00(obj_t BgL_hostz00_16, int BgL_portz00_17, obj_t BgL_domainz00_18, obj_t BgL_inbufz00_19, obj_t BgL_outbufz00_20, obj_t BgL_timeoutz00_21)
{
{ /* Llib/socket.scm 382 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 384 */
 obj_t BgL_inbufz00_1244; obj_t BgL_outbufz00_1245;
BgL_inbufz00_1244 = 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2187z00zz__socketz00, BgL_inbufz00_19, 
(int)(512L)); 
BgL_outbufz00_1245 = 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2187z00zz__socketz00, BgL_outbufz00_20, 
(int)(1024L)); 
{ /* Llib/socket.scm 386 */
 bool_t BgL_test2488z00_3173;
{ /* Llib/socket.scm 386 */
 bool_t BgL__ortest_1040z00_1253;
BgL__ortest_1040z00_1253 = 
(BgL_domainz00_18==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1040z00_1253)
{ /* Llib/socket.scm 386 */
BgL_test2488z00_3173 = BgL__ortest_1040z00_1253
; }  else 
{ /* Llib/socket.scm 386 */
 bool_t BgL__ortest_1041z00_1254;
BgL__ortest_1041z00_1254 = 
(BgL_domainz00_18==BGl_symbol2188z00zz__socketz00); 
if(BgL__ortest_1041z00_1254)
{ /* Llib/socket.scm 386 */
BgL_test2488z00_3173 = BgL__ortest_1041z00_1254
; }  else 
{ /* Llib/socket.scm 386 */
BgL_test2488z00_3173 = 
(BgL_domainz00_18==BGl_symbol2190z00zz__socketz00)
; } } } 
if(BgL_test2488z00_3173)
{ /* Llib/socket.scm 388 */
 obj_t BgL_auxz00_3188; int BgL_tmpz00_3179;
if(
SYMBOLP(BgL_domainz00_18))
{ /* Llib/socket.scm 388 */
BgL_auxz00_3188 = BgL_domainz00_18
; }  else 
{ 
 obj_t BgL_auxz00_3191;
BgL_auxz00_3191 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17513L), BGl_string2187z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_18); 
FAILURE(BgL_auxz00_3191,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 388 */
 obj_t BgL_tmpz00_3180;
if(
INTEGERP(BgL_timeoutz00_21))
{ /* Llib/socket.scm 388 */
BgL_tmpz00_3180 = BgL_timeoutz00_21
; }  else 
{ 
 obj_t BgL_auxz00_3183;
BgL_auxz00_3183 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17492L), BGl_string2187z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_timeoutz00_21); 
FAILURE(BgL_auxz00_3183,BFALSE,BFALSE);} 
BgL_tmpz00_3179 = 
CINT(BgL_tmpz00_3180); } 
return 
bgl_make_client_socket(BgL_hostz00_16, BgL_portz00_17, BgL_tmpz00_3179, BgL_inbufz00_1244, BgL_outbufz00_1245, BgL_auxz00_3188);}  else 
{ /* Llib/socket.scm 386 */
 bool_t BgL_test2493z00_3196;
{ /* Llib/socket.scm 386 */
 bool_t BgL__ortest_1042z00_1252;
BgL__ortest_1042z00_1252 = 
(BgL_domainz00_18==BGl_symbol2193z00zz__socketz00); 
if(BgL__ortest_1042z00_1252)
{ /* Llib/socket.scm 386 */
BgL_test2493z00_3196 = BgL__ortest_1042z00_1252
; }  else 
{ /* Llib/socket.scm 386 */
BgL_test2493z00_3196 = 
(BgL_domainz00_18==BGl_symbol2195z00zz__socketz00)
; } } 
if(BgL_test2493z00_3196)
{ /* Llib/socket.scm 391 */
 int BgL_tmpz00_3200;
{ /* Llib/socket.scm 391 */
 obj_t BgL_tmpz00_3201;
if(
INTEGERP(BgL_timeoutz00_21))
{ /* Llib/socket.scm 391 */
BgL_tmpz00_3201 = BgL_timeoutz00_21
; }  else 
{ 
 obj_t BgL_auxz00_3204;
BgL_auxz00_3204 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17601L), BGl_string2187z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_timeoutz00_21); 
FAILURE(BgL_auxz00_3204,BFALSE,BFALSE);} 
BgL_tmpz00_3200 = 
CINT(BgL_tmpz00_3201); } 
return 
bgl_make_client_unix_socket(BgL_hostz00_16, BgL_tmpz00_3200, BgL_inbufz00_1244, BgL_outbufz00_1245);}  else 
{ /* Llib/socket.scm 394 */
 obj_t BgL_aux1909z00_2416;
BgL_aux1909z00_2416 = 
BGl_errorz00zz__errorz00(BGl_string2187z00zz__socketz00, BGl_string2197z00zz__socketz00, BgL_domainz00_18); 
if(
SOCKETP(BgL_aux1909z00_2416))
{ /* Llib/socket.scm 394 */
return BgL_aux1909z00_2416;}  else 
{ 
 obj_t BgL_auxz00_3213;
BgL_auxz00_3213 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(17707L), BGl_string2187z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_aux1909z00_2416); 
FAILURE(BgL_auxz00_3213,BFALSE,BFALSE);} } } } } } 

}



/* make-server-socket */
BGL_EXPORTED_DEF obj_t BGl_makezd2serverzd2socketz00zz__socketz00(obj_t BgL_portz00_24)
{
{ /* Llib/socket.scm 399 */
{ /* Llib/socket.scm 228 */
 obj_t BgL_dsssl1126z00_1255;
BgL_dsssl1126z00_1255 = BgL_portz00_24; 
{ /* Llib/socket.scm 228 */
 obj_t BgL_portz00_1256;
{ /* Llib/socket.scm 228 */
 bool_t BgL_test2497z00_3217;
if(
NULLP(BgL_dsssl1126z00_1255))
{ /* Llib/socket.scm 228 */
BgL_test2497z00_3217 = ((bool_t)1)
; }  else 
{ /* Llib/socket.scm 228 */
 obj_t BgL_tmpz00_3220;
{ /* Llib/socket.scm 228 */
 obj_t BgL_auxz00_3221;
{ /* Llib/socket.scm 228 */
 obj_t BgL_pairz00_1890;
{ /* Llib/socket.scm 228 */
 obj_t BgL_aux1911z00_2418;
BgL_aux1911z00_2418 = BgL_dsssl1126z00_1255; 
if(
PAIRP(BgL_aux1911z00_2418))
{ /* Llib/socket.scm 228 */
BgL_pairz00_1890 = BgL_aux1911z00_2418; }  else 
{ 
 obj_t BgL_auxz00_3224;
BgL_auxz00_3224 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(9891L), BGl_string2198z00zz__socketz00, BGl_string2199z00zz__socketz00, BgL_aux1911z00_2418); 
FAILURE(BgL_auxz00_3224,BFALSE,BFALSE);} } 
BgL_auxz00_3221 = 
CAR(BgL_pairz00_1890); } 
BgL_tmpz00_3220 = 
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_auxz00_3221, BGl_list2200z00zz__socketz00); } 
BgL_test2497z00_3217 = 
CBOOL(BgL_tmpz00_3220); } 
if(BgL_test2497z00_3217)
{ /* Llib/socket.scm 228 */
BgL_portz00_1256 = 
BINT(0L); }  else 
{ /* Llib/socket.scm 228 */
 obj_t BgL_tmp1127z00_1283;
{ /* Llib/socket.scm 228 */
 obj_t BgL_pairz00_1891;
{ /* Llib/socket.scm 228 */
 obj_t BgL_aux1913z00_2420;
BgL_aux1913z00_2420 = BgL_dsssl1126z00_1255; 
if(
PAIRP(BgL_aux1913z00_2420))
{ /* Llib/socket.scm 228 */
BgL_pairz00_1891 = BgL_aux1913z00_2420; }  else 
{ 
 obj_t BgL_auxz00_3234;
BgL_auxz00_3234 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(9891L), BGl_string2198z00zz__socketz00, BGl_string2199z00zz__socketz00, BgL_aux1913z00_2420); 
FAILURE(BgL_auxz00_3234,BFALSE,BFALSE);} } 
BgL_tmp1127z00_1283 = 
CAR(BgL_pairz00_1891); } 
{ /* Llib/socket.scm 228 */
 obj_t BgL_pairz00_1892;
{ /* Llib/socket.scm 228 */
 obj_t BgL_aux1915z00_2422;
BgL_aux1915z00_2422 = BgL_dsssl1126z00_1255; 
if(
PAIRP(BgL_aux1915z00_2422))
{ /* Llib/socket.scm 228 */
BgL_pairz00_1892 = BgL_aux1915z00_2422; }  else 
{ 
 obj_t BgL_auxz00_3241;
BgL_auxz00_3241 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(9891L), BGl_string2198z00zz__socketz00, BGl_string2199z00zz__socketz00, BgL_aux1915z00_2422); 
FAILURE(BgL_auxz00_3241,BFALSE,BFALSE);} } 
BgL_dsssl1126z00_1255 = 
CDR(BgL_pairz00_1892); } 
BgL_portz00_1256 = BgL_tmp1127z00_1283; } } 
{ /* Llib/socket.scm 228 */
 obj_t BgL_namez00_1257;
BgL_namez00_1257 = 
BGl_dssslzd2getzd2keyzd2argzd2zz__dssslz00(BgL_dsssl1126z00_1255, BGl_keyword2203z00zz__socketz00, BFALSE); 
{ /* Llib/socket.scm 228 */
 obj_t BgL_backlogz00_1258;
BgL_backlogz00_1258 = 
BGl_dssslzd2getzd2keyzd2argzd2zz__dssslz00(BgL_dsssl1126z00_1255, BGl_keyword2201z00zz__socketz00, 
BINT(5L)); 
{ /* Llib/socket.scm 228 */
 obj_t BgL_domainz00_1259;
BgL_domainz00_1259 = 
BGl_dssslzd2getzd2keyzd2argzd2zz__dssslz00(BgL_dsssl1126z00_1255, BGl_keyword2173z00zz__socketz00, BGl_symbol2168z00zz__socketz00); 
if(
NULLP(
BGl_dssslzd2getzd2keyzd2restzd2argz00zz__dssslz00(BgL_dsssl1126z00_1255, BGl_list2200z00zz__socketz00)))
{ /* Llib/socket.scm 228 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 401 */
 bool_t BgL_test2503z00_3254;
{ /* Llib/socket.scm 401 */
 bool_t BgL__ortest_1045z00_1268;
BgL__ortest_1045z00_1268 = 
(BgL_domainz00_1259==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1045z00_1268)
{ /* Llib/socket.scm 401 */
BgL_test2503z00_3254 = BgL__ortest_1045z00_1268
; }  else 
{ /* Llib/socket.scm 401 */
BgL_test2503z00_3254 = 
(BgL_domainz00_1259==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2503z00_3254)
{ /* Llib/socket.scm 403 */
 int BgL_auxz00_3267; int BgL_tmpz00_3258;
{ /* Llib/socket.scm 403 */
 obj_t BgL_tmpz00_3268;
if(
INTEGERP(BgL_backlogz00_1258))
{ /* Llib/socket.scm 403 */
BgL_tmpz00_3268 = BgL_backlogz00_1258
; }  else 
{ 
 obj_t BgL_auxz00_3271;
BgL_auxz00_3271 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18187L), BGl_string2198z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_backlogz00_1258); 
FAILURE(BgL_auxz00_3271,BFALSE,BFALSE);} 
BgL_auxz00_3267 = 
CINT(BgL_tmpz00_3268); } 
{ /* Llib/socket.scm 403 */
 obj_t BgL_tmpz00_3259;
if(
INTEGERP(BgL_portz00_1256))
{ /* Llib/socket.scm 403 */
BgL_tmpz00_3259 = BgL_portz00_1256
; }  else 
{ 
 obj_t BgL_auxz00_3262;
BgL_auxz00_3262 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18182L), BGl_string2198z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_portz00_1256); 
FAILURE(BgL_auxz00_3262,BFALSE,BFALSE);} 
BgL_tmpz00_3258 = 
CINT(BgL_tmpz00_3259); } 
return 
bgl_make_server_socket(BgL_namez00_1257, BgL_tmpz00_3258, BgL_auxz00_3267, BgL_domainz00_1259);}  else 
{ /* Llib/socket.scm 401 */
 bool_t BgL_test2507z00_3277;
{ /* Llib/socket.scm 401 */
 bool_t BgL__ortest_1046z00_1267;
BgL__ortest_1046z00_1267 = 
(BgL_domainz00_1259==BGl_symbol2193z00zz__socketz00); 
if(BgL__ortest_1046z00_1267)
{ /* Llib/socket.scm 401 */
BgL_test2507z00_3277 = BgL__ortest_1046z00_1267
; }  else 
{ /* Llib/socket.scm 401 */
BgL_test2507z00_3277 = 
(BgL_domainz00_1259==BGl_symbol2195z00zz__socketz00)
; } } 
if(BgL_test2507z00_3277)
{ /* Llib/socket.scm 406 */
 int BgL_auxz00_3288; obj_t BgL_tmpz00_3281;
{ /* Llib/socket.scm 406 */
 obj_t BgL_tmpz00_3289;
if(
INTEGERP(BgL_backlogz00_1258))
{ /* Llib/socket.scm 406 */
BgL_tmpz00_3289 = BgL_backlogz00_1258
; }  else 
{ 
 obj_t BgL_auxz00_3292;
BgL_auxz00_3292 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18295L), BGl_string2198z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_backlogz00_1258); 
FAILURE(BgL_auxz00_3292,BFALSE,BFALSE);} 
BgL_auxz00_3288 = 
CINT(BgL_tmpz00_3289); } 
if(
STRINGP(BgL_namez00_1257))
{ /* Llib/socket.scm 406 */
BgL_tmpz00_3281 = BgL_namez00_1257
; }  else 
{ 
 obj_t BgL_auxz00_3284;
BgL_auxz00_3284 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18290L), BGl_string2198z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_namez00_1257); 
FAILURE(BgL_auxz00_3284,BFALSE,BFALSE);} 
return 
bgl_make_server_unix_socket(BgL_tmpz00_3281, BgL_auxz00_3288);}  else 
{ /* Llib/socket.scm 410 */
 obj_t BgL_aux1922z00_2429;
BgL_aux1922z00_2429 = 
BGl_errorz00zz__errorz00(BGl_string2198z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_1259); 
if(
SOCKETP(BgL_aux1922z00_2429))
{ /* Llib/socket.scm 410 */
return BgL_aux1922z00_2429;}  else 
{ 
 obj_t BgL_auxz00_3301;
BgL_auxz00_3301 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18411L), BGl_string2198z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_aux1922z00_2429); 
FAILURE(BgL_auxz00_3301,BFALSE,BFALSE);} } } } }  else 
{ /* Llib/socket.scm 228 */
 obj_t BgL_arg1283z00_1269;
{ /* Llib/socket.scm 228 */
 obj_t BgL_arg1285z00_1270;
{ /* Llib/socket.scm 228 */
 obj_t BgL_arg1291z00_1273;
BgL_arg1291z00_1273 = 
BGl_dssslzd2getzd2keyzd2restzd2argz00zz__dssslz00(BgL_dsssl1126z00_1255, BGl_list2200z00zz__socketz00); 
{ /* Llib/socket.scm 228 */
 obj_t BgL_list1292z00_1274;
BgL_list1292z00_1274 = 
MAKE_YOUNG_PAIR(BgL_arg1291z00_1273, BNIL); 
BgL_arg1285z00_1270 = 
BGl_mapz00zz__r4_control_features_6_9z00(BGl_proc2206z00zz__socketz00, BgL_list1292z00_1274); } } 
{ /* Llib/socket.scm 228 */
 obj_t BgL_list1286z00_1271;
BgL_list1286z00_1271 = 
MAKE_YOUNG_PAIR(BgL_arg1285z00_1270, BNIL); 
BgL_arg1283z00_1269 = 
BGl_applyz00zz__r4_control_features_6_9z00(BGl_stringzd2appendzd2envz00zz__r4_strings_6_7z00, BGl_string2207z00zz__socketz00, BgL_list1286z00_1271); } } 
{ /* Llib/socket.scm 228 */
 obj_t BgL_aux1924z00_2431;
BgL_aux1924z00_2431 = 
BGl_errorz00zz__errorz00(BGl_string2208z00zz__socketz00, BgL_arg1283z00_1269, BgL_dsssl1126z00_1255); 
if(
SOCKETP(BgL_aux1924z00_2431))
{ /* Llib/socket.scm 228 */
return BgL_aux1924z00_2431;}  else 
{ 
 obj_t BgL_auxz00_3313;
BgL_auxz00_3313 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(9891L), BGl_string2198z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_aux1924z00_2431); 
FAILURE(BgL_auxz00_3313,BFALSE,BFALSE);} } } } } } } } } 

}



/* &make-server-socket */
obj_t BGl_z62makezd2serverzd2socketz62zz__socketz00(obj_t BgL_envz00_2258, obj_t BgL_portz00_2259)
{
{ /* Llib/socket.scm 399 */
return 
BGl_makezd2serverzd2socketz00zz__socketz00(BgL_portz00_2259);} 

}



/* &<@anonymous:1293> */
obj_t BGl_z62zc3z04anonymousza31293ze3ze5zz__socketz00(obj_t BgL_envz00_2260, obj_t BgL_vz00_2261)
{
{ /* Llib/socket.scm 228 */
{ /* Llib/socket.scm 228 */
 obj_t BgL_list1294z00_2687;
BgL_list1294z00_2687 = 
MAKE_YOUNG_PAIR(BgL_vz00_2261, BNIL); 
return 
BGl_formatz00zz__r4_output_6_10_3z00(BGl_string2209z00zz__socketz00, BgL_list1294z00_2687);} } 

}



/* _socket-accept */
obj_t BGl__socketzd2acceptzd2zz__socketz00(obj_t BgL_env1129z00_30, obj_t BgL_opt1128z00_29)
{
{ /* Llib/socket.scm 415 */
{ /* Llib/socket.scm 415 */
 long BgL_l1130z00_1286;
{ /* Llib/socket.scm 415 */
 obj_t BgL_vectorz00_1894;
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_vectorz00_1894 = BgL_opt1128z00_29; }  else 
{ 
 obj_t BgL_auxz00_3322;
BgL_auxz00_3322 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3322,BFALSE,BFALSE);} 
BgL_l1130z00_1286 = 
VECTOR_LENGTH(BgL_vectorz00_1894); } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_g1137z00_1290;
{ 
 obj_t BgL_auxz00_3327;
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3327 = BgL_opt1128z00_29
; }  else 
{ 
 obj_t BgL_auxz00_3330;
BgL_auxz00_3330 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3330,BFALSE,BFALSE);} 
BgL_g1137z00_1290 = 
VECTOR_REF(BgL_auxz00_3327,0L); } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_errpz00_1291;
BgL_errpz00_1291 = BTRUE; 
{ /* Llib/socket.scm 415 */
 obj_t BgL_inbufz00_1292;
BgL_inbufz00_1292 = BTRUE; 
{ /* Llib/socket.scm 415 */
 obj_t BgL_outbufz00_1293;
BgL_outbufz00_1293 = BTRUE; 
{ /* Llib/socket.scm 415 */

{ 
 long BgL_iz00_1294;
BgL_iz00_1294 = 1L; 
BgL_check1132z00_1295:
if(
(BgL_iz00_1294==BgL_l1130z00_1286))
{ /* Llib/socket.scm 415 */BNIL; }  else 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2516z00_3337;
{ /* Llib/socket.scm 415 */
 obj_t BgL_arg1331z00_1301;
{ /* Llib/socket.scm 415 */
 obj_t BgL_vectorz00_1904;
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_vectorz00_1904 = BgL_opt1128z00_29; }  else 
{ 
 obj_t BgL_auxz00_3340;
BgL_auxz00_3340 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2211z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3340,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2518z00_3344;
{ /* Llib/socket.scm 415 */
 long BgL_tmpz00_3345;
BgL_tmpz00_3345 = 
VECTOR_LENGTH(BgL_vectorz00_1904); 
BgL_test2518z00_3344 = 
BOUND_CHECK(BgL_iz00_1294, BgL_tmpz00_3345); } 
if(BgL_test2518z00_3344)
{ /* Llib/socket.scm 415 */
BgL_arg1331z00_1301 = 
VECTOR_REF(BgL_vectorz00_1904,BgL_iz00_1294); }  else 
{ 
 obj_t BgL_auxz00_3349;
BgL_auxz00_3349 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1904, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1904)), 
(int)(BgL_iz00_1294)); 
FAILURE(BgL_auxz00_3349,BFALSE,BFALSE);} } } 
BgL_test2516z00_3337 = 
CBOOL(
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_arg1331z00_1301, BGl_list2212z00zz__socketz00)); } 
if(BgL_test2516z00_3337)
{ 
 long BgL_iz00_3358;
BgL_iz00_3358 = 
(BgL_iz00_1294+2L); 
BgL_iz00_1294 = BgL_iz00_3358; 
goto BgL_check1132z00_1295;}  else 
{ /* Llib/socket.scm 415 */
 obj_t BgL_arg1330z00_1300;
{ /* Llib/socket.scm 415 */
 obj_t BgL_vectorz00_1907;
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_vectorz00_1907 = BgL_opt1128z00_29; }  else 
{ 
 obj_t BgL_auxz00_3362;
BgL_auxz00_3362 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2211z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3362,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2520z00_3366;
{ /* Llib/socket.scm 415 */
 long BgL_tmpz00_3367;
BgL_tmpz00_3367 = 
VECTOR_LENGTH(BgL_vectorz00_1907); 
BgL_test2520z00_3366 = 
BOUND_CHECK(BgL_iz00_1294, BgL_tmpz00_3367); } 
if(BgL_test2520z00_3366)
{ /* Llib/socket.scm 415 */
BgL_arg1330z00_1300 = 
VECTOR_REF(BgL_vectorz00_1907,BgL_iz00_1294); }  else 
{ 
 obj_t BgL_auxz00_3371;
BgL_auxz00_3371 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1907, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1907)), 
(int)(BgL_iz00_1294)); 
FAILURE(BgL_auxz00_3371,BFALSE,BFALSE);} } } 
BGl_errorz00zz__errorz00(BGl_symbol2215z00zz__socketz00, BGl_string2183z00zz__socketz00, BgL_arg1330z00_1300); } } } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_index1134z00_1302;
BgL_index1134z00_1302 = 
BGl_search1131ze70ze7zz__socketz00(BgL_l1130z00_1286, BgL_opt1128z00_29, BGl_keyword2213z00zz__socketz00, 1L); 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2521z00_3380;
{ /* Llib/socket.scm 415 */
 long BgL_n1z00_1909;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3381;
if(
INTEGERP(BgL_index1134z00_1302))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3381 = BgL_index1134z00_1302
; }  else 
{ 
 obj_t BgL_auxz00_3384;
BgL_auxz00_3384 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1134z00_1302); 
FAILURE(BgL_auxz00_3384,BFALSE,BFALSE);} 
BgL_n1z00_1909 = 
(long)CINT(BgL_tmpz00_3381); } 
BgL_test2521z00_3380 = 
(BgL_n1z00_1909>=0L); } 
if(BgL_test2521z00_3380)
{ 
 long BgL_auxz00_3397; obj_t BgL_auxz00_3390;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3398;
if(
INTEGERP(BgL_index1134z00_1302))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3398 = BgL_index1134z00_1302
; }  else 
{ 
 obj_t BgL_auxz00_3401;
BgL_auxz00_3401 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1134z00_1302); 
FAILURE(BgL_auxz00_3401,BFALSE,BFALSE);} 
BgL_auxz00_3397 = 
(long)CINT(BgL_tmpz00_3398); } 
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3390 = BgL_opt1128z00_29
; }  else 
{ 
 obj_t BgL_auxz00_3393;
BgL_auxz00_3393 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3393,BFALSE,BFALSE);} 
BgL_errpz00_1291 = 
VECTOR_REF(BgL_auxz00_3390,BgL_auxz00_3397); }  else 
{ /* Llib/socket.scm 415 */BFALSE; } } } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_index1135z00_1304;
BgL_index1135z00_1304 = 
BGl_search1131ze70ze7zz__socketz00(BgL_l1130z00_1286, BgL_opt1128z00_29, BGl_keyword2175z00zz__socketz00, 1L); 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2525z00_3408;
{ /* Llib/socket.scm 415 */
 long BgL_n1z00_1910;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3409;
if(
INTEGERP(BgL_index1135z00_1304))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3409 = BgL_index1135z00_1304
; }  else 
{ 
 obj_t BgL_auxz00_3412;
BgL_auxz00_3412 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1135z00_1304); 
FAILURE(BgL_auxz00_3412,BFALSE,BFALSE);} 
BgL_n1z00_1910 = 
(long)CINT(BgL_tmpz00_3409); } 
BgL_test2525z00_3408 = 
(BgL_n1z00_1910>=0L); } 
if(BgL_test2525z00_3408)
{ 
 long BgL_auxz00_3425; obj_t BgL_auxz00_3418;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3426;
if(
INTEGERP(BgL_index1135z00_1304))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3426 = BgL_index1135z00_1304
; }  else 
{ 
 obj_t BgL_auxz00_3429;
BgL_auxz00_3429 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1135z00_1304); 
FAILURE(BgL_auxz00_3429,BFALSE,BFALSE);} 
BgL_auxz00_3425 = 
(long)CINT(BgL_tmpz00_3426); } 
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3418 = BgL_opt1128z00_29
; }  else 
{ 
 obj_t BgL_auxz00_3421;
BgL_auxz00_3421 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3421,BFALSE,BFALSE);} 
BgL_inbufz00_1292 = 
VECTOR_REF(BgL_auxz00_3418,BgL_auxz00_3425); }  else 
{ /* Llib/socket.scm 415 */BFALSE; } } } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_index1136z00_1306;
BgL_index1136z00_1306 = 
BGl_search1131ze70ze7zz__socketz00(BgL_l1130z00_1286, BgL_opt1128z00_29, BGl_keyword2177z00zz__socketz00, 1L); 
{ /* Llib/socket.scm 415 */
 bool_t BgL_test2529z00_3436;
{ /* Llib/socket.scm 415 */
 long BgL_n1z00_1911;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3437;
if(
INTEGERP(BgL_index1136z00_1306))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3437 = BgL_index1136z00_1306
; }  else 
{ 
 obj_t BgL_auxz00_3440;
BgL_auxz00_3440 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1136z00_1306); 
FAILURE(BgL_auxz00_3440,BFALSE,BFALSE);} 
BgL_n1z00_1911 = 
(long)CINT(BgL_tmpz00_3437); } 
BgL_test2529z00_3436 = 
(BgL_n1z00_1911>=0L); } 
if(BgL_test2529z00_3436)
{ 
 long BgL_auxz00_3453; obj_t BgL_auxz00_3446;
{ /* Llib/socket.scm 415 */
 obj_t BgL_tmpz00_3454;
if(
INTEGERP(BgL_index1136z00_1306))
{ /* Llib/socket.scm 415 */
BgL_tmpz00_3454 = BgL_index1136z00_1306
; }  else 
{ 
 obj_t BgL_auxz00_3457;
BgL_auxz00_3457 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1136z00_1306); 
FAILURE(BgL_auxz00_3457,BFALSE,BFALSE);} 
BgL_auxz00_3453 = 
(long)CINT(BgL_tmpz00_3454); } 
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3446 = BgL_opt1128z00_29
; }  else 
{ 
 obj_t BgL_auxz00_3449;
BgL_auxz00_3449 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3449,BFALSE,BFALSE);} 
BgL_outbufz00_1293 = 
VECTOR_REF(BgL_auxz00_3446,BgL_auxz00_3453); }  else 
{ /* Llib/socket.scm 415 */BFALSE; } } } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_arg1335z00_1308;
{ 
 obj_t BgL_auxz00_3463;
if(
VECTORP(BgL_opt1128z00_29))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3463 = BgL_opt1128z00_29
; }  else 
{ 
 obj_t BgL_auxz00_3466;
BgL_auxz00_3466 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_29); 
FAILURE(BgL_auxz00_3466,BFALSE,BFALSE);} 
BgL_arg1335z00_1308 = 
VECTOR_REF(BgL_auxz00_3463,0L); } 
{ /* Llib/socket.scm 415 */
 obj_t BgL_errpz00_1309;
BgL_errpz00_1309 = BgL_errpz00_1291; 
{ /* Llib/socket.scm 415 */
 obj_t BgL_inbufz00_1310;
BgL_inbufz00_1310 = BgL_inbufz00_1292; 
{ /* Llib/socket.scm 415 */
 obj_t BgL_outbufz00_1311;
BgL_outbufz00_1311 = BgL_outbufz00_1293; 
{ /* Llib/socket.scm 415 */
 obj_t BgL_socketz00_1912;
if(
SOCKETP(BgL_arg1335z00_1308))
{ /* Llib/socket.scm 415 */
BgL_socketz00_1912 = BgL_arg1335z00_1308; }  else 
{ 
 obj_t BgL_auxz00_3473;
BgL_auxz00_3473 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2210z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_arg1335z00_1308); 
FAILURE(BgL_auxz00_3473,BFALSE,BFALSE);} 
return 
bgl_socket_accept(BgL_socketz00_1912, 
CBOOL(BgL_errpz00_1309), 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2216z00zz__socketz00, BgL_inbufz00_1310, 
(int)(512L)), 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2216z00zz__socketz00, BgL_outbufz00_1311, 
(int)(1024L)));} } } } } } } } } } } } 

}



/* search1131~0 */
obj_t BGl_search1131ze70ze7zz__socketz00(long BgL_l1130z00_2320, obj_t BgL_opt1128z00_2319, obj_t BgL_k1z00_1287, long BgL_iz00_1288)
{
{ /* Llib/socket.scm 415 */
BGl_search1131ze70ze7zz__socketz00:
if(
(BgL_iz00_1288==BgL_l1130z00_2320))
{ /* Llib/socket.scm 415 */
return 
BINT((-1L));}  else 
{ /* Llib/socket.scm 415 */
if(
(BgL_iz00_1288==
(BgL_l1130z00_2320-1L)))
{ /* Llib/socket.scm 415 */
 long BgL_arg1339z00_1315;
{ 
 obj_t BgL_auxz00_3489;
if(
VECTORP(BgL_opt1128z00_2319))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3489 = BgL_opt1128z00_2319
; }  else 
{ 
 obj_t BgL_auxz00_3492;
BgL_auxz00_3492 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2217z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_2319); 
FAILURE(BgL_auxz00_3492,BFALSE,BFALSE);} 
BgL_arg1339z00_1315 = 
VECTOR_LENGTH(BgL_auxz00_3489); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2215z00zz__socketz00, BGl_string2218z00zz__socketz00, 
BINT(BgL_arg1339z00_1315));}  else 
{ /* Llib/socket.scm 415 */
 obj_t BgL_vz00_1316;
{ 
 obj_t BgL_auxz00_3499;
if(
VECTORP(BgL_opt1128z00_2319))
{ /* Llib/socket.scm 415 */
BgL_auxz00_3499 = BgL_opt1128z00_2319
; }  else 
{ 
 obj_t BgL_auxz00_3502;
BgL_auxz00_3502 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(18694L), BGl_string2217z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1128z00_2319); 
FAILURE(BgL_auxz00_3502,BFALSE,BFALSE);} 
BgL_vz00_1316 = 
VECTOR_REF(BgL_auxz00_3499,BgL_iz00_1288); } 
if(
(BgL_vz00_1316==BgL_k1z00_1287))
{ /* Llib/socket.scm 415 */
return 
BINT(
(BgL_iz00_1288+1L));}  else 
{ 
 long BgL_iz00_3511;
BgL_iz00_3511 = 
(BgL_iz00_1288+2L); 
BgL_iz00_1288 = BgL_iz00_3511; 
goto BGl_search1131ze70ze7zz__socketz00;} } } } 

}



/* socket-accept */
BGL_EXPORTED_DEF obj_t BGl_socketzd2acceptzd2zz__socketz00(obj_t BgL_socketz00_25, obj_t BgL_errpz00_26, obj_t BgL_inbufz00_27, obj_t BgL_outbufz00_28)
{
{ /* Llib/socket.scm 415 */
return 
bgl_socket_accept(BgL_socketz00_25, 
CBOOL(BgL_errpz00_26), 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2216z00zz__socketz00, BgL_inbufz00_27, 
(int)(512L)), 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2216z00zz__socketz00, BgL_outbufz00_28, 
(int)(1024L)));} 

}



/* _socket-accept-many */
obj_t BGl__socketzd2acceptzd2manyz00zz__socketz00(obj_t BgL_env1139z00_37, obj_t BgL_opt1138z00_36)
{
{ /* Llib/socket.scm 426 */
{ /* Llib/socket.scm 426 */
 long BgL_l1140z00_1321;
{ /* Llib/socket.scm 426 */
 obj_t BgL_vectorz00_1917;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_vectorz00_1917 = BgL_opt1138z00_36; }  else 
{ 
 obj_t BgL_auxz00_3521;
BgL_auxz00_3521 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3521,BFALSE,BFALSE);} 
BgL_l1140z00_1321 = 
VECTOR_LENGTH(BgL_vectorz00_1917); } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_g1147z00_1325; obj_t BgL_g1148z00_1326;
{ 
 obj_t BgL_auxz00_3526;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3526 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3529;
BgL_auxz00_3529 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3529,BFALSE,BFALSE);} 
BgL_g1147z00_1325 = 
VECTOR_REF(BgL_auxz00_3526,0L); } 
{ 
 obj_t BgL_auxz00_3534;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3534 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3537;
BgL_auxz00_3537 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3537,BFALSE,BFALSE);} 
BgL_g1148z00_1326 = 
VECTOR_REF(BgL_auxz00_3534,1L); } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_errpz00_1327;
BgL_errpz00_1327 = BTRUE; 
{ /* Llib/socket.scm 426 */
 obj_t BgL_inbufsz00_1328;
BgL_inbufsz00_1328 = BTRUE; 
{ /* Llib/socket.scm 426 */
 obj_t BgL_outbufsz00_1329;
BgL_outbufsz00_1329 = BTRUE; 
{ /* Llib/socket.scm 426 */

{ 
 long BgL_iz00_1330;
BgL_iz00_1330 = 2L; 
BgL_check1142z00_1331:
if(
(BgL_iz00_1330==BgL_l1140z00_1321))
{ /* Llib/socket.scm 426 */BNIL; }  else 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2544z00_3544;
{ /* Llib/socket.scm 426 */
 obj_t BgL_arg1351z00_1337;
{ /* Llib/socket.scm 426 */
 obj_t BgL_vectorz00_1927;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_vectorz00_1927 = BgL_opt1138z00_36; }  else 
{ 
 obj_t BgL_auxz00_3547;
BgL_auxz00_3547 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2220z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3547,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2546z00_3551;
{ /* Llib/socket.scm 426 */
 long BgL_tmpz00_3552;
BgL_tmpz00_3552 = 
VECTOR_LENGTH(BgL_vectorz00_1927); 
BgL_test2546z00_3551 = 
BOUND_CHECK(BgL_iz00_1330, BgL_tmpz00_3552); } 
if(BgL_test2546z00_3551)
{ /* Llib/socket.scm 426 */
BgL_arg1351z00_1337 = 
VECTOR_REF(BgL_vectorz00_1927,BgL_iz00_1330); }  else 
{ 
 obj_t BgL_auxz00_3556;
BgL_auxz00_3556 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1927, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1927)), 
(int)(BgL_iz00_1330)); 
FAILURE(BgL_auxz00_3556,BFALSE,BFALSE);} } } 
BgL_test2544z00_3544 = 
CBOOL(
BGl_memqz00zz__r4_pairs_and_lists_6_3z00(BgL_arg1351z00_1337, BGl_list2221z00zz__socketz00)); } 
if(BgL_test2544z00_3544)
{ 
 long BgL_iz00_3565;
BgL_iz00_3565 = 
(BgL_iz00_1330+2L); 
BgL_iz00_1330 = BgL_iz00_3565; 
goto BgL_check1142z00_1331;}  else 
{ /* Llib/socket.scm 426 */
 obj_t BgL_arg1349z00_1336;
{ /* Llib/socket.scm 426 */
 obj_t BgL_vectorz00_1930;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_vectorz00_1930 = BgL_opt1138z00_36; }  else 
{ 
 obj_t BgL_auxz00_3569;
BgL_auxz00_3569 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2220z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3569,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2548z00_3573;
{ /* Llib/socket.scm 426 */
 long BgL_tmpz00_3574;
BgL_tmpz00_3574 = 
VECTOR_LENGTH(BgL_vectorz00_1930); 
BgL_test2548z00_3573 = 
BOUND_CHECK(BgL_iz00_1330, BgL_tmpz00_3574); } 
if(BgL_test2548z00_3573)
{ /* Llib/socket.scm 426 */
BgL_arg1349z00_1336 = 
VECTOR_REF(BgL_vectorz00_1930,BgL_iz00_1330); }  else 
{ 
 obj_t BgL_auxz00_3578;
BgL_auxz00_3578 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2171z00zz__socketz00, BgL_vectorz00_1930, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1930)), 
(int)(BgL_iz00_1330)); 
FAILURE(BgL_auxz00_3578,BFALSE,BFALSE);} } } 
BGl_errorz00zz__errorz00(BGl_symbol2226z00zz__socketz00, BGl_string2183z00zz__socketz00, BgL_arg1349z00_1336); } } } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_index1144z00_1338;
BgL_index1144z00_1338 = 
BGl_search1141ze70ze7zz__socketz00(BgL_l1140z00_1321, BgL_opt1138z00_36, BGl_keyword2213z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2549z00_3587;
{ /* Llib/socket.scm 426 */
 long BgL_n1z00_1932;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3588;
if(
INTEGERP(BgL_index1144z00_1338))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3588 = BgL_index1144z00_1338
; }  else 
{ 
 obj_t BgL_auxz00_3591;
BgL_auxz00_3591 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1144z00_1338); 
FAILURE(BgL_auxz00_3591,BFALSE,BFALSE);} 
BgL_n1z00_1932 = 
(long)CINT(BgL_tmpz00_3588); } 
BgL_test2549z00_3587 = 
(BgL_n1z00_1932>=0L); } 
if(BgL_test2549z00_3587)
{ 
 long BgL_auxz00_3604; obj_t BgL_auxz00_3597;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3605;
if(
INTEGERP(BgL_index1144z00_1338))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3605 = BgL_index1144z00_1338
; }  else 
{ 
 obj_t BgL_auxz00_3608;
BgL_auxz00_3608 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1144z00_1338); 
FAILURE(BgL_auxz00_3608,BFALSE,BFALSE);} 
BgL_auxz00_3604 = 
(long)CINT(BgL_tmpz00_3605); } 
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3597 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3600;
BgL_auxz00_3600 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3600,BFALSE,BFALSE);} 
BgL_errpz00_1327 = 
VECTOR_REF(BgL_auxz00_3597,BgL_auxz00_3604); }  else 
{ /* Llib/socket.scm 426 */BFALSE; } } } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_index1145z00_1340;
BgL_index1145z00_1340 = 
BGl_search1141ze70ze7zz__socketz00(BgL_l1140z00_1321, BgL_opt1138z00_36, BGl_keyword2222z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2553z00_3615;
{ /* Llib/socket.scm 426 */
 long BgL_n1z00_1933;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3616;
if(
INTEGERP(BgL_index1145z00_1340))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3616 = BgL_index1145z00_1340
; }  else 
{ 
 obj_t BgL_auxz00_3619;
BgL_auxz00_3619 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1145z00_1340); 
FAILURE(BgL_auxz00_3619,BFALSE,BFALSE);} 
BgL_n1z00_1933 = 
(long)CINT(BgL_tmpz00_3616); } 
BgL_test2553z00_3615 = 
(BgL_n1z00_1933>=0L); } 
if(BgL_test2553z00_3615)
{ 
 long BgL_auxz00_3632; obj_t BgL_auxz00_3625;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3633;
if(
INTEGERP(BgL_index1145z00_1340))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3633 = BgL_index1145z00_1340
; }  else 
{ 
 obj_t BgL_auxz00_3636;
BgL_auxz00_3636 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1145z00_1340); 
FAILURE(BgL_auxz00_3636,BFALSE,BFALSE);} 
BgL_auxz00_3632 = 
(long)CINT(BgL_tmpz00_3633); } 
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3625 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3628;
BgL_auxz00_3628 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3628,BFALSE,BFALSE);} 
BgL_inbufsz00_1328 = 
VECTOR_REF(BgL_auxz00_3625,BgL_auxz00_3632); }  else 
{ /* Llib/socket.scm 426 */BFALSE; } } } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_index1146z00_1342;
BgL_index1146z00_1342 = 
BGl_search1141ze70ze7zz__socketz00(BgL_l1140z00_1321, BgL_opt1138z00_36, BGl_keyword2224z00zz__socketz00, 2L); 
{ /* Llib/socket.scm 426 */
 bool_t BgL_test2557z00_3643;
{ /* Llib/socket.scm 426 */
 long BgL_n1z00_1934;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3644;
if(
INTEGERP(BgL_index1146z00_1342))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3644 = BgL_index1146z00_1342
; }  else 
{ 
 obj_t BgL_auxz00_3647;
BgL_auxz00_3647 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1146z00_1342); 
FAILURE(BgL_auxz00_3647,BFALSE,BFALSE);} 
BgL_n1z00_1934 = 
(long)CINT(BgL_tmpz00_3644); } 
BgL_test2557z00_3643 = 
(BgL_n1z00_1934>=0L); } 
if(BgL_test2557z00_3643)
{ 
 long BgL_auxz00_3660; obj_t BgL_auxz00_3653;
{ /* Llib/socket.scm 426 */
 obj_t BgL_tmpz00_3661;
if(
INTEGERP(BgL_index1146z00_1342))
{ /* Llib/socket.scm 426 */
BgL_tmpz00_3661 = BgL_index1146z00_1342
; }  else 
{ 
 obj_t BgL_auxz00_3664;
BgL_auxz00_3664 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_index1146z00_1342); 
FAILURE(BgL_auxz00_3664,BFALSE,BFALSE);} 
BgL_auxz00_3660 = 
(long)CINT(BgL_tmpz00_3661); } 
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3653 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3656;
BgL_auxz00_3656 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3656,BFALSE,BFALSE);} 
BgL_outbufsz00_1329 = 
VECTOR_REF(BgL_auxz00_3653,BgL_auxz00_3660); }  else 
{ /* Llib/socket.scm 426 */BFALSE; } } } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_arg1355z00_1344; obj_t BgL_arg1356z00_1345;
{ 
 obj_t BgL_auxz00_3670;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3670 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3673;
BgL_auxz00_3673 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3673,BFALSE,BFALSE);} 
BgL_arg1355z00_1344 = 
VECTOR_REF(BgL_auxz00_3670,0L); } 
{ 
 obj_t BgL_auxz00_3678;
if(
VECTORP(BgL_opt1138z00_36))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3678 = BgL_opt1138z00_36
; }  else 
{ 
 obj_t BgL_auxz00_3681;
BgL_auxz00_3681 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_36); 
FAILURE(BgL_auxz00_3681,BFALSE,BFALSE);} 
BgL_arg1356z00_1345 = 
VECTOR_REF(BgL_auxz00_3678,1L); } 
{ /* Llib/socket.scm 426 */
 obj_t BgL_errpz00_1346;
BgL_errpz00_1346 = BgL_errpz00_1327; 
{ /* Llib/socket.scm 426 */
 obj_t BgL_inbufsz00_1347;
BgL_inbufsz00_1347 = BgL_inbufsz00_1328; 
{ /* Llib/socket.scm 426 */
 obj_t BgL_outbufsz00_1348;
BgL_outbufsz00_1348 = BgL_outbufsz00_1329; 
{ /* Llib/socket.scm 426 */
 obj_t BgL_auxz00_3693; obj_t BgL_auxz00_3686;
if(
VECTORP(BgL_arg1356z00_1345))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3693 = BgL_arg1356z00_1345
; }  else 
{ 
 obj_t BgL_auxz00_3696;
BgL_auxz00_3696 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_arg1356z00_1345); 
FAILURE(BgL_auxz00_3696,BFALSE,BFALSE);} 
if(
SOCKETP(BgL_arg1355z00_1344))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3686 = BgL_arg1355z00_1344
; }  else 
{ 
 obj_t BgL_auxz00_3689;
BgL_auxz00_3689 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2219z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_arg1355z00_1344); 
FAILURE(BgL_auxz00_3689,BFALSE,BFALSE);} 
return 
BGl_socketzd2acceptzd2manyz00zz__socketz00(BgL_auxz00_3686, BgL_auxz00_3693, BgL_errpz00_1346, BgL_inbufsz00_1347, BgL_outbufsz00_1348);} } } } } } } } } } } } 

}



/* search1141~0 */
obj_t BGl_search1141ze70ze7zz__socketz00(long BgL_l1140z00_2318, obj_t BgL_opt1138z00_2317, obj_t BgL_k1z00_1322, long BgL_iz00_1323)
{
{ /* Llib/socket.scm 426 */
BGl_search1141ze70ze7zz__socketz00:
if(
(BgL_iz00_1323==BgL_l1140z00_2318))
{ /* Llib/socket.scm 426 */
return 
BINT((-1L));}  else 
{ /* Llib/socket.scm 426 */
if(
(BgL_iz00_1323==
(BgL_l1140z00_2318-1L)))
{ /* Llib/socket.scm 426 */
 long BgL_arg1360z00_1352;
{ 
 obj_t BgL_auxz00_3707;
if(
VECTORP(BgL_opt1138z00_2317))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3707 = BgL_opt1138z00_2317
; }  else 
{ 
 obj_t BgL_auxz00_3710;
BgL_auxz00_3710 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2228z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_2317); 
FAILURE(BgL_auxz00_3710,BFALSE,BFALSE);} 
BgL_arg1360z00_1352 = 
VECTOR_LENGTH(BgL_auxz00_3707); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2226z00zz__socketz00, BGl_string2229z00zz__socketz00, 
BINT(BgL_arg1360z00_1352));}  else 
{ /* Llib/socket.scm 426 */
 obj_t BgL_vz00_1353;
{ 
 obj_t BgL_auxz00_3717;
if(
VECTORP(BgL_opt1138z00_2317))
{ /* Llib/socket.scm 426 */
BgL_auxz00_3717 = BgL_opt1138z00_2317
; }  else 
{ 
 obj_t BgL_auxz00_3720;
BgL_auxz00_3720 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19386L), BGl_string2228z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1138z00_2317); 
FAILURE(BgL_auxz00_3720,BFALSE,BFALSE);} 
BgL_vz00_1353 = 
VECTOR_REF(BgL_auxz00_3717,BgL_iz00_1323); } 
if(
(BgL_vz00_1353==BgL_k1z00_1322))
{ /* Llib/socket.scm 426 */
return 
BINT(
(BgL_iz00_1323+1L));}  else 
{ 
 long BgL_iz00_3729;
BgL_iz00_3729 = 
(BgL_iz00_1323+2L); 
BgL_iz00_1323 = BgL_iz00_3729; 
goto BGl_search1141ze70ze7zz__socketz00;} } } } 

}



/* socket-accept-many */
BGL_EXPORTED_DEF obj_t BGl_socketzd2acceptzd2manyz00zz__socketz00(obj_t BgL_socketz00_31, obj_t BgL_resultz00_32, obj_t BgL_errpz00_33, obj_t BgL_inbufsz00_34, obj_t BgL_outbufsz00_35)
{
{ /* Llib/socket.scm 426 */
if(
VECTORP(BgL_inbufsz00_34))
{ /* Llib/socket.scm 427 */((bool_t)0); }  else 
{ /* Llib/socket.scm 427 */
BgL_inbufsz00_34 = 
make_vector(
VECTOR_LENGTH(BgL_resultz00_32), BUNSPEC); 
{ 
 long BgL_iz00_1360;
BgL_iz00_1360 = 0L; 
BgL_zc3z04anonymousza31366ze3z87_1361:
if(
(BgL_iz00_1360<
VECTOR_LENGTH(BgL_resultz00_32)))
{ /* Llib/socket.scm 431 */
 obj_t BgL_bufz00_1364;
BgL_bufz00_1364 = 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2227z00zz__socketz00, BTRUE, 
(int)(512L)); 
{ /* Llib/socket.scm 432 */
 obj_t BgL_vectorz00_1941;
{ /* Llib/socket.scm 432 */
 obj_t BgL_aux1988z00_2496;
BgL_aux1988z00_2496 = BgL_inbufsz00_34; 
if(
VECTORP(BgL_aux1988z00_2496))
{ /* Llib/socket.scm 432 */
BgL_vectorz00_1941 = BgL_aux1988z00_2496; }  else 
{ 
 obj_t BgL_auxz00_3742;
BgL_auxz00_3742 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19711L), BGl_string2230z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_aux1988z00_2496); 
FAILURE(BgL_auxz00_3742,BFALSE,BFALSE);} } 
{ /* Llib/socket.scm 432 */
 bool_t BgL_test2573z00_3746;
{ /* Llib/socket.scm 432 */
 long BgL_tmpz00_3747;
BgL_tmpz00_3747 = 
VECTOR_LENGTH(BgL_vectorz00_1941); 
BgL_test2573z00_3746 = 
BOUND_CHECK(BgL_iz00_1360, BgL_tmpz00_3747); } 
if(BgL_test2573z00_3746)
{ /* Llib/socket.scm 432 */
VECTOR_SET(BgL_vectorz00_1941,BgL_iz00_1360,BgL_bufz00_1364); }  else 
{ 
 obj_t BgL_auxz00_3751;
BgL_auxz00_3751 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19698L), BGl_string2231z00zz__socketz00, BgL_vectorz00_1941, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1941)), 
(int)(BgL_iz00_1360)); 
FAILURE(BgL_auxz00_3751,BFALSE,BFALSE);} } } 
{ 
 long BgL_iz00_3758;
BgL_iz00_3758 = 
(BgL_iz00_1360+1L); 
BgL_iz00_1360 = BgL_iz00_3758; 
goto BgL_zc3z04anonymousza31366ze3z87_1361;} }  else 
{ /* Llib/socket.scm 430 */((bool_t)0); } } } 
if(
VECTORP(BgL_outbufsz00_35))
{ /* Llib/socket.scm 434 */((bool_t)0); }  else 
{ /* Llib/socket.scm 434 */
BgL_outbufsz00_35 = 
make_vector(
VECTOR_LENGTH(BgL_resultz00_32), BUNSPEC); 
{ 
 long BgL_iz00_1372;
BgL_iz00_1372 = 0L; 
BgL_zc3z04anonymousza31374ze3z87_1373:
if(
(BgL_iz00_1372<
VECTOR_LENGTH(BgL_resultz00_32)))
{ /* Llib/socket.scm 438 */
 obj_t BgL_bufz00_1376;
BgL_bufz00_1376 = 
BGl_getzd2portzd2bufferz00zz__r4_ports_6_10_1z00(BGl_string2227z00zz__socketz00, BTRUE, 
(int)(512L)); 
{ /* Llib/socket.scm 439 */
 obj_t BgL_vectorz00_1950;
{ /* Llib/socket.scm 439 */
 obj_t BgL_aux1990z00_2499;
BgL_aux1990z00_2499 = BgL_outbufsz00_35; 
if(
VECTORP(BgL_aux1990z00_2499))
{ /* Llib/socket.scm 439 */
BgL_vectorz00_1950 = BgL_aux1990z00_2499; }  else 
{ 
 obj_t BgL_auxz00_3771;
BgL_auxz00_3771 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19989L), BGl_string2230z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_aux1990z00_2499); 
FAILURE(BgL_auxz00_3771,BFALSE,BFALSE);} } 
{ /* Llib/socket.scm 439 */
 bool_t BgL_test2577z00_3775;
{ /* Llib/socket.scm 439 */
 long BgL_tmpz00_3776;
BgL_tmpz00_3776 = 
VECTOR_LENGTH(BgL_vectorz00_1950); 
BgL_test2577z00_3775 = 
BOUND_CHECK(BgL_iz00_1372, BgL_tmpz00_3776); } 
if(BgL_test2577z00_3775)
{ /* Llib/socket.scm 439 */
VECTOR_SET(BgL_vectorz00_1950,BgL_iz00_1372,BgL_bufz00_1376); }  else 
{ 
 obj_t BgL_auxz00_3780;
BgL_auxz00_3780 = 
BGl_indexzd2outzd2ofzd2boundszd2errorz00zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(19976L), BGl_string2231z00zz__socketz00, BgL_vectorz00_1950, 
(int)(
VECTOR_LENGTH(BgL_vectorz00_1950)), 
(int)(BgL_iz00_1372)); 
FAILURE(BgL_auxz00_3780,BFALSE,BFALSE);} } } 
{ 
 long BgL_iz00_3787;
BgL_iz00_3787 = 
(BgL_iz00_1372+1L); 
BgL_iz00_1372 = BgL_iz00_3787; 
goto BgL_zc3z04anonymousza31374ze3z87_1373;} }  else 
{ /* Llib/socket.scm 437 */((bool_t)0); } } } 
{ /* Llib/socket.scm 443 */
 long BgL_tmpz00_3789;
{ /* Llib/socket.scm 443 */
 obj_t BgL_auxz00_3798; obj_t BgL_tmpz00_3790;
{ /* Llib/socket.scm 443 */
 obj_t BgL_aux1994z00_2503;
BgL_aux1994z00_2503 = BgL_outbufsz00_35; 
if(
VECTORP(BgL_aux1994z00_2503))
{ /* Llib/socket.scm 443 */
BgL_auxz00_3798 = BgL_aux1994z00_2503
; }  else 
{ 
 obj_t BgL_auxz00_3801;
BgL_auxz00_3801 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20112L), BGl_string2227z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_aux1994z00_2503); 
FAILURE(BgL_auxz00_3801,BFALSE,BFALSE);} } 
{ /* Llib/socket.scm 443 */
 obj_t BgL_aux1992z00_2501;
BgL_aux1992z00_2501 = BgL_inbufsz00_34; 
if(
VECTORP(BgL_aux1992z00_2501))
{ /* Llib/socket.scm 443 */
BgL_tmpz00_3790 = BgL_aux1992z00_2501
; }  else 
{ 
 obj_t BgL_auxz00_3794;
BgL_auxz00_3794 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20105L), BGl_string2227z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_aux1992z00_2501); 
FAILURE(BgL_auxz00_3794,BFALSE,BFALSE);} } 
BgL_tmpz00_3789 = 
bgl_socket_accept_many(BgL_socketz00_31, 
CBOOL(BgL_errpz00_33), BgL_tmpz00_3790, BgL_auxz00_3798, BgL_resultz00_32); } 
return 
BINT(BgL_tmpz00_3789);} } 

}



/* _socket-shutdown */
obj_t BGl__socketzd2shutdownzd2zz__socketz00(obj_t BgL_env1150z00_41, obj_t BgL_opt1149z00_40)
{
{ /* Llib/socket.scm 454 */
{ /* Llib/socket.scm 454 */
 obj_t BgL_g1151z00_1380;
{ 
 obj_t BgL_auxz00_3807;
if(
VECTORP(BgL_opt1149z00_40))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3807 = BgL_opt1149z00_40
; }  else 
{ 
 obj_t BgL_auxz00_3810;
BgL_auxz00_3810 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2232z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1149z00_40); 
FAILURE(BgL_auxz00_3810,BFALSE,BFALSE);} 
BgL_g1151z00_1380 = 
VECTOR_REF(BgL_auxz00_3807,0L); } 
{ 

{ /* Llib/socket.scm 454 */
 long BgL_aux1153z00_1382;
{ 
 obj_t BgL_auxz00_3815;
if(
VECTORP(BgL_opt1149z00_40))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3815 = BgL_opt1149z00_40
; }  else 
{ 
 obj_t BgL_auxz00_3818;
BgL_auxz00_3818 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2232z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1149z00_40); 
FAILURE(BgL_auxz00_3818,BFALSE,BFALSE);} 
BgL_aux1153z00_1382 = 
VECTOR_LENGTH(BgL_auxz00_3815); } 
switch( BgL_aux1153z00_1382) { case 1L : 

{ /* Llib/socket.scm 454 */

{ /* Llib/socket.scm 454 */
 int BgL_tmpz00_3823;
{ /* Llib/socket.scm 454 */
 obj_t BgL_auxz00_3824;
if(
SOCKETP(BgL_g1151z00_1380))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3824 = BgL_g1151z00_1380
; }  else 
{ 
 obj_t BgL_auxz00_3827;
BgL_auxz00_3827 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2232z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_g1151z00_1380); 
FAILURE(BgL_auxz00_3827,BFALSE,BFALSE);} 
BgL_tmpz00_3823 = 
BGl_socketzd2shutdownzd2zz__socketz00(BgL_auxz00_3824, BTRUE); } 
return 
BINT(BgL_tmpz00_3823);} } break;case 2L : 

{ /* Llib/socket.scm 454 */
 obj_t BgL_howz00_1384;
{ 
 obj_t BgL_auxz00_3833;
if(
VECTORP(BgL_opt1149z00_40))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3833 = BgL_opt1149z00_40
; }  else 
{ 
 obj_t BgL_auxz00_3836;
BgL_auxz00_3836 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2232z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1149z00_40); 
FAILURE(BgL_auxz00_3836,BFALSE,BFALSE);} 
BgL_howz00_1384 = 
VECTOR_REF(BgL_auxz00_3833,1L); } 
{ /* Llib/socket.scm 454 */

{ /* Llib/socket.scm 454 */
 int BgL_tmpz00_3841;
{ /* Llib/socket.scm 454 */
 obj_t BgL_auxz00_3842;
if(
SOCKETP(BgL_g1151z00_1380))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3842 = BgL_g1151z00_1380
; }  else 
{ 
 obj_t BgL_auxz00_3845;
BgL_auxz00_3845 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2232z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_g1151z00_1380); 
FAILURE(BgL_auxz00_3845,BFALSE,BFALSE);} 
BgL_tmpz00_3841 = 
BGl_socketzd2shutdownzd2zz__socketz00(BgL_auxz00_3842, BgL_howz00_1384); } 
return 
BINT(BgL_tmpz00_3841);} } } break;
default: 
{ /* Llib/socket.scm 454 */
 long BgL_arg1380z00_1385;
{ 
 obj_t BgL_auxz00_3851;
if(
VECTORP(BgL_opt1149z00_40))
{ /* Llib/socket.scm 454 */
BgL_auxz00_3851 = BgL_opt1149z00_40
; }  else 
{ 
 obj_t BgL_auxz00_3854;
BgL_auxz00_3854 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20524L), BGl_string2233z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1149z00_40); 
FAILURE(BgL_auxz00_3854,BFALSE,BFALSE);} 
BgL_arg1380z00_1385 = 
VECTOR_LENGTH(BgL_auxz00_3851); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2234z00zz__socketz00, BGl_string2236z00zz__socketz00, 
BINT(BgL_arg1380z00_1385));} } } } } } 

}



/* socket-shutdown */
BGL_EXPORTED_DEF int BGl_socketzd2shutdownzd2zz__socketz00(obj_t BgL_socketz00_38, obj_t BgL_howz00_39)
{
{ /* Llib/socket.scm 454 */
if(
(BgL_howz00_39==BTRUE))
{ /* Llib/socket.scm 457 */
 int BgL_rz00_1386;
BgL_rz00_1386 = 
socket_shutdown(BgL_socketz00_38, 
(int)(2L)); 
socket_close(BgL_socketz00_38); 
return BgL_rz00_1386;}  else 
{ /* Llib/socket.scm 460 */
 bool_t BgL_test2587z00_3867;
if(
(BgL_howz00_39==BFALSE))
{ /* Llib/socket.scm 460 */
BgL_test2587z00_3867 = ((bool_t)1)
; }  else 
{ /* Llib/socket.scm 460 */
BgL_test2587z00_3867 = 
(BgL_howz00_39==BGl_symbol2237z00zz__socketz00)
; } 
if(BgL_test2587z00_3867)
{ /* Llib/socket.scm 460 */
return 
socket_shutdown(BgL_socketz00_38, 
(int)(2L));}  else 
{ /* Llib/socket.scm 460 */
if(
(BgL_howz00_39==BGl_symbol2239z00zz__socketz00))
{ /* Llib/socket.scm 462 */
return 
socket_shutdown(BgL_socketz00_38, 
(int)(1L));}  else 
{ /* Llib/socket.scm 462 */
if(
(BgL_howz00_39==BGl_symbol2241z00zz__socketz00))
{ /* Llib/socket.scm 464 */
return 
socket_shutdown(BgL_socketz00_38, 
(int)(0L));}  else 
{ /* Llib/socket.scm 467 */
 obj_t BgL_tmpz00_3881;
{ /* Llib/socket.scm 467 */
 obj_t BgL_aux2008z00_2517;
BgL_aux2008z00_2517 = 
BGl_errorz00zz__errorz00(BGl_string2235z00zz__socketz00, BGl_string2243z00zz__socketz00, BgL_howz00_39); 
if(
INTEGERP(BgL_aux2008z00_2517))
{ /* Llib/socket.scm 467 */
BgL_tmpz00_3881 = BgL_aux2008z00_2517
; }  else 
{ 
 obj_t BgL_auxz00_3885;
BgL_auxz00_3885 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(20902L), BGl_string2235z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_aux2008z00_2517); 
FAILURE(BgL_auxz00_3885,BFALSE,BFALSE);} } 
return 
CINT(BgL_tmpz00_3881);} } } } } 

}



/* socket-close */
BGL_EXPORTED_DEF obj_t BGl_socketzd2closezd2zz__socketz00(obj_t BgL_socketz00_42)
{
{ /* Llib/socket.scm 472 */
BGL_TAIL return 
socket_close(BgL_socketz00_42);} 

}



/* &socket-close */
obj_t BGl_z62socketzd2closezb0zz__socketz00(obj_t BgL_envz00_2264, obj_t BgL_socketz00_2265)
{
{ /* Llib/socket.scm 472 */
{ /* Llib/socket.scm 473 */
 obj_t BgL_auxz00_3891;
if(
SOCKETP(BgL_socketz00_2265))
{ /* Llib/socket.scm 473 */
BgL_auxz00_3891 = BgL_socketz00_2265
; }  else 
{ 
 obj_t BgL_auxz00_3894;
BgL_auxz00_3894 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(21232L), BGl_string2244z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2265); 
FAILURE(BgL_auxz00_3894,BFALSE,BFALSE);} 
return 
BGl_socketzd2closezd2zz__socketz00(BgL_auxz00_3891);} } 

}



/* host */
BGL_EXPORTED_DEF obj_t BGl_hostz00zz__socketz00(obj_t BgL_hostnamez00_43)
{
{ /* Llib/socket.scm 478 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
BGL_TAIL return 
bgl_host(BgL_hostnamez00_43);} 

}



/* &host */
obj_t BGl_z62hostz62zz__socketz00(obj_t BgL_envz00_2266, obj_t BgL_hostnamez00_2267)
{
{ /* Llib/socket.scm 478 */
{ /* Llib/socket.scm 480 */
 obj_t BgL_auxz00_3901;
if(
STRINGP(BgL_hostnamez00_2267))
{ /* Llib/socket.scm 480 */
BgL_auxz00_3901 = BgL_hostnamez00_2267
; }  else 
{ 
 obj_t BgL_auxz00_3904;
BgL_auxz00_3904 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(21540L), BGl_string2245z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostnamez00_2267); 
FAILURE(BgL_auxz00_3904,BFALSE,BFALSE);} 
return 
BGl_hostz00zz__socketz00(BgL_auxz00_3901);} } 

}



/* hostinfo */
BGL_EXPORTED_DEF obj_t BGl_hostinfoz00zz__socketz00(obj_t BgL_hostnamez00_44)
{
{ /* Llib/socket.scm 486 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
BGL_TAIL return 
bgl_hostinfo(BgL_hostnamez00_44);} 

}



/* &hostinfo */
obj_t BGl_z62hostinfoz62zz__socketz00(obj_t BgL_envz00_2268, obj_t BgL_hostnamez00_2269)
{
{ /* Llib/socket.scm 486 */
{ /* Llib/socket.scm 488 */
 obj_t BgL_auxz00_3911;
if(
STRINGP(BgL_hostnamez00_2269))
{ /* Llib/socket.scm 488 */
BgL_auxz00_3911 = BgL_hostnamez00_2269
; }  else 
{ 
 obj_t BgL_auxz00_3914;
BgL_auxz00_3914 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(21855L), BGl_string2246z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostnamez00_2269); 
FAILURE(BgL_auxz00_3914,BFALSE,BFALSE);} 
return 
BGl_hostinfoz00zz__socketz00(BgL_auxz00_3911);} } 

}



/* _hostname */
obj_t BGl__hostnamez00zz__socketz00(obj_t BgL_env1155z00_47, obj_t BgL_opt1154z00_46)
{
{ /* Llib/socket.scm 494 */
{ /* Llib/socket.scm 494 */

{ 

{ /* Llib/socket.scm 494 */
 long BgL_aux1157z00_1389;
{ 
 obj_t BgL_auxz00_3919;
if(
VECTORP(BgL_opt1154z00_46))
{ /* Llib/socket.scm 494 */
BgL_auxz00_3919 = BgL_opt1154z00_46
; }  else 
{ 
 obj_t BgL_auxz00_3922;
BgL_auxz00_3922 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22109L), BGl_string2251z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1154z00_46); 
FAILURE(BgL_auxz00_3922,BFALSE,BFALSE);} 
BgL_aux1157z00_1389 = 
VECTOR_LENGTH(BgL_auxz00_3919); } 
switch( BgL_aux1157z00_1389) { case 0L : 

{ /* Llib/socket.scm 494 */

BGl_z52socketzd2initz12z92zz__socketz00(); 
return 
bgl_gethostname();} break;case 1L : 

{ /* Llib/socket.scm 494 */
 obj_t BgL_hostipz00_1391;
{ 
 obj_t BgL_auxz00_3929;
if(
VECTORP(BgL_opt1154z00_46))
{ /* Llib/socket.scm 494 */
BgL_auxz00_3929 = BgL_opt1154z00_46
; }  else 
{ 
 obj_t BgL_auxz00_3932;
BgL_auxz00_3932 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22109L), BGl_string2251z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1154z00_46); 
FAILURE(BgL_auxz00_3932,BFALSE,BFALSE);} 
BgL_hostipz00_1391 = 
VECTOR_REF(BgL_auxz00_3929,0L); } 
{ /* Llib/socket.scm 494 */

BGl_z52socketzd2initz12z92zz__socketz00(); 
if(
CBOOL(BgL_hostipz00_1391))
{ /* Llib/socket.scm 497 */
 obj_t BgL_tmpz00_3940;
if(
STRINGP(BgL_hostipz00_1391))
{ /* Llib/socket.scm 497 */
BgL_tmpz00_3940 = BgL_hostipz00_1391
; }  else 
{ 
 obj_t BgL_auxz00_3943;
BgL_auxz00_3943 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22211L), BGl_string2251z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostipz00_1391); 
FAILURE(BgL_auxz00_3943,BFALSE,BFALSE);} 
return 
bgl_gethostname_by_address(BgL_tmpz00_3940);}  else 
{ /* Llib/socket.scm 496 */
return 
bgl_gethostname();} } } break;
default: 
{ /* Llib/socket.scm 494 */
 long BgL_arg1382z00_1392;
{ 
 obj_t BgL_auxz00_3949;
if(
VECTORP(BgL_opt1154z00_46))
{ /* Llib/socket.scm 494 */
BgL_auxz00_3949 = BgL_opt1154z00_46
; }  else 
{ 
 obj_t BgL_auxz00_3952;
BgL_auxz00_3952 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22109L), BGl_string2247z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1154z00_46); 
FAILURE(BgL_auxz00_3952,BFALSE,BFALSE);} 
BgL_arg1382z00_1392 = 
VECTOR_LENGTH(BgL_auxz00_3949); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2248z00zz__socketz00, BGl_string2250z00zz__socketz00, 
BINT(BgL_arg1382z00_1392));} } } } } } 

}



/* hostname */
BGL_EXPORTED_DEF obj_t BGl_hostnamez00zz__socketz00(obj_t BgL_hostipz00_45)
{
{ /* Llib/socket.scm 494 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
if(
CBOOL(BgL_hostipz00_45))
{ /* Llib/socket.scm 497 */
 obj_t BgL_tmpz00_3963;
if(
STRINGP(BgL_hostipz00_45))
{ /* Llib/socket.scm 497 */
BgL_tmpz00_3963 = BgL_hostipz00_45
; }  else 
{ 
 obj_t BgL_auxz00_3966;
BgL_auxz00_3966 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22211L), BGl_string2249z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostipz00_45); 
FAILURE(BgL_auxz00_3966,BFALSE,BFALSE);} 
return 
bgl_gethostname_by_address(BgL_tmpz00_3963);}  else 
{ /* Llib/socket.scm 496 */
return 
bgl_gethostname();} } 

}



/* resolv */
BGL_EXPORTED_DEF obj_t BGl_resolvz00zz__socketz00(obj_t BgL_hostnamez00_48, obj_t BgL_typez00_49)
{
{ /* Llib/socket.scm 503 */
{ /* Llib/socket.scm 506 */
 obj_t BgL_arg1383z00_1954;
BgL_arg1383z00_1954 = 
SYMBOL_TO_STRING(BgL_typez00_49); 
return 
bgl_res_query(BgL_hostnamez00_48, BgL_arg1383z00_1954);} } 

}



/* &resolv */
obj_t BGl_z62resolvz62zz__socketz00(obj_t BgL_envz00_2270, obj_t BgL_hostnamez00_2271, obj_t BgL_typez00_2272)
{
{ /* Llib/socket.scm 503 */
{ /* Llib/socket.scm 506 */
 obj_t BgL_auxz00_3981; obj_t BgL_auxz00_3974;
if(
SYMBOLP(BgL_typez00_2272))
{ /* Llib/socket.scm 506 */
BgL_auxz00_3981 = BgL_typez00_2272
; }  else 
{ 
 obj_t BgL_auxz00_3984;
BgL_auxz00_3984 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22554L), BGl_string2252z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_typez00_2272); 
FAILURE(BgL_auxz00_3984,BFALSE,BFALSE);} 
if(
STRINGP(BgL_hostnamez00_2271))
{ /* Llib/socket.scm 506 */
BgL_auxz00_3974 = BgL_hostnamez00_2271
; }  else 
{ 
 obj_t BgL_auxz00_3977;
BgL_auxz00_3977 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(22554L), BGl_string2252z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostnamez00_2271); 
FAILURE(BgL_auxz00_3977,BFALSE,BFALSE);} 
return 
BGl_resolvz00zz__socketz00(BgL_auxz00_3974, BgL_auxz00_3981);} } 

}



/* get-interfaces */
BGL_EXPORTED_DEF obj_t BGl_getzd2interfaceszd2zz__socketz00(void)
{
{ /* Llib/socket.scm 513 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
BGL_TAIL return 
bgl_gethostinterfaces();} 

}



/* &get-interfaces */
obj_t BGl_z62getzd2interfaceszb0zz__socketz00(obj_t BgL_envz00_2273)
{
{ /* Llib/socket.scm 513 */
return 
BGl_getzd2interfaceszd2zz__socketz00();} 

}



/* get-protocols */
BGL_EXPORTED_DEF obj_t BGl_getzd2protocolszd2zz__socketz00(void)
{
{ /* Llib/socket.scm 521 */
BGL_TAIL return 
bgl_getprotoents();} 

}



/* &get-protocols */
obj_t BGl_z62getzd2protocolszb0zz__socketz00(obj_t BgL_envz00_2274)
{
{ /* Llib/socket.scm 521 */
return 
BGl_getzd2protocolszd2zz__socketz00();} 

}



/* get-protocol */
BGL_EXPORTED_DEF obj_t BGl_getzd2protocolzd2zz__socketz00(obj_t BgL_protocolz00_50)
{
{ /* Llib/socket.scm 527 */
if(
BGl_integerzf3zf3zz__r4_numbers_6_5_fixnumz00(BgL_protocolz00_50))
{ /* Llib/socket.scm 530 */
 int BgL_tmpz00_3996;
{ /* Llib/socket.scm 530 */
 obj_t BgL_tmpz00_3997;
if(
INTEGERP(BgL_protocolz00_50))
{ /* Llib/socket.scm 530 */
BgL_tmpz00_3997 = BgL_protocolz00_50
; }  else 
{ 
 obj_t BgL_auxz00_4000;
BgL_auxz00_4000 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(23513L), BGl_string2253z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_protocolz00_50); 
FAILURE(BgL_auxz00_4000,BFALSE,BFALSE);} 
BgL_tmpz00_3996 = 
CINT(BgL_tmpz00_3997); } 
return 
bgl_getprotobynumber(BgL_tmpz00_3996);}  else 
{ /* Llib/socket.scm 529 */
if(
STRINGP(BgL_protocolz00_50))
{ /* Llib/socket.scm 531 */
return 
bgl_getprotobyname(
BSTRING_TO_STRING(BgL_protocolz00_50));}  else 
{ /* Llib/socket.scm 531 */
return BFALSE;} } } 

}



/* &get-protocol */
obj_t BGl_z62getzd2protocolzb0zz__socketz00(obj_t BgL_envz00_2275, obj_t BgL_protocolz00_2276)
{
{ /* Llib/socket.scm 527 */
return 
BGl_getzd2protocolzd2zz__socketz00(BgL_protocolz00_2276);} 

}



/* socket-option */
BGL_EXPORTED_DEF obj_t BGl_socketzd2optionzd2zz__socketz00(obj_t BgL_socketz00_51, obj_t BgL_optionz00_52)
{
{ /* Llib/socket.scm 539 */
BGL_TAIL return 
bgl_getsockopt(BgL_socketz00_51, BgL_optionz00_52);} 

}



/* &socket-option */
obj_t BGl_z62socketzd2optionzb0zz__socketz00(obj_t BgL_envz00_2277, obj_t BgL_socketz00_2278, obj_t BgL_optionz00_2279)
{
{ /* Llib/socket.scm 539 */
{ /* Llib/socket.scm 540 */
 obj_t BgL_auxz00_4019; obj_t BgL_auxz00_4012;
if(
KEYWORDP(BgL_optionz00_2279))
{ /* Llib/socket.scm 540 */
BgL_auxz00_4019 = BgL_optionz00_2279
; }  else 
{ 
 obj_t BgL_auxz00_4022;
BgL_auxz00_4022 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(23881L), BGl_string2254z00zz__socketz00, BGl_string2255z00zz__socketz00, BgL_optionz00_2279); 
FAILURE(BgL_auxz00_4022,BFALSE,BFALSE);} 
if(
SOCKETP(BgL_socketz00_2278))
{ /* Llib/socket.scm 540 */
BgL_auxz00_4012 = BgL_socketz00_2278
; }  else 
{ 
 obj_t BgL_auxz00_4015;
BgL_auxz00_4015 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(23881L), BGl_string2254z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2278); 
FAILURE(BgL_auxz00_4015,BFALSE,BFALSE);} 
return 
BGl_socketzd2optionzd2zz__socketz00(BgL_auxz00_4012, BgL_auxz00_4019);} } 

}



/* socket-option-set! */
BGL_EXPORTED_DEF obj_t BGl_socketzd2optionzd2setz12z12zz__socketz00(obj_t BgL_socketz00_53, obj_t BgL_optionz00_54, obj_t BgL_valz00_55)
{
{ /* Llib/socket.scm 545 */
BGL_TAIL return 
bgl_setsockopt(BgL_socketz00_53, BgL_optionz00_54, BgL_valz00_55);} 

}



/* &socket-option-set! */
obj_t BGl_z62socketzd2optionzd2setz12z70zz__socketz00(obj_t BgL_envz00_2280, obj_t BgL_socketz00_2281, obj_t BgL_optionz00_2282, obj_t BgL_valz00_2283)
{
{ /* Llib/socket.scm 545 */
{ /* Llib/socket.scm 546 */
 obj_t BgL_auxz00_4035; obj_t BgL_auxz00_4028;
if(
KEYWORDP(BgL_optionz00_2282))
{ /* Llib/socket.scm 546 */
BgL_auxz00_4035 = BgL_optionz00_2282
; }  else 
{ 
 obj_t BgL_auxz00_4038;
BgL_auxz00_4038 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(24190L), BGl_string2256z00zz__socketz00, BGl_string2255z00zz__socketz00, BgL_optionz00_2282); 
FAILURE(BgL_auxz00_4038,BFALSE,BFALSE);} 
if(
SOCKETP(BgL_socketz00_2281))
{ /* Llib/socket.scm 546 */
BgL_auxz00_4028 = BgL_socketz00_2281
; }  else 
{ 
 obj_t BgL_auxz00_4031;
BgL_auxz00_4031 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(24190L), BGl_string2256z00zz__socketz00, BGl_string2153z00zz__socketz00, BgL_socketz00_2281); 
FAILURE(BgL_auxz00_4031,BFALSE,BFALSE);} 
return 
BGl_socketzd2optionzd2setz12z12zz__socketz00(BgL_auxz00_4028, BgL_auxz00_4035, BgL_valz00_2283);} } 

}



/* datagram-socket? */
BGL_EXPORTED_DEF bool_t BGl_datagramzd2socketzf3z21zz__socketz00(obj_t BgL_objz00_56)
{
{ /* Llib/socket.scm 551 */
return 
BGL_DATAGRAM_SOCKETP(BgL_objz00_56);} 

}



/* &datagram-socket? */
obj_t BGl_z62datagramzd2socketzf3z43zz__socketz00(obj_t BgL_envz00_2284, obj_t BgL_objz00_2285)
{
{ /* Llib/socket.scm 551 */
return 
BBOOL(
BGl_datagramzd2socketzf3z21zz__socketz00(BgL_objz00_2285));} 

}



/* datagram-socket-server? */
BGL_EXPORTED_DEF bool_t BGl_datagramzd2socketzd2serverzf3zf3zz__socketz00(obj_t BgL_objz00_57)
{
{ /* Llib/socket.scm 557 */
return 
BGL_DATAGRAM_SOCKET_SERVERP(BgL_objz00_57);} 

}



/* &datagram-socket-server? */
obj_t BGl_z62datagramzd2socketzd2serverzf3z91zz__socketz00(obj_t BgL_envz00_2286, obj_t BgL_objz00_2287)
{
{ /* Llib/socket.scm 557 */
return 
BBOOL(
BGl_datagramzd2socketzd2serverzf3zf3zz__socketz00(BgL_objz00_2287));} 

}



/* datagram-socket-client? */
BGL_EXPORTED_DEF bool_t BGl_datagramzd2socketzd2clientzf3zf3zz__socketz00(obj_t BgL_objz00_58)
{
{ /* Llib/socket.scm 563 */
return 
BGL_DATAGRAM_SOCKET_CLIENTP(BgL_objz00_58);} 

}



/* &datagram-socket-client? */
obj_t BGl_z62datagramzd2socketzd2clientzf3z91zz__socketz00(obj_t BgL_envz00_2288, obj_t BgL_objz00_2289)
{
{ /* Llib/socket.scm 563 */
return 
BBOOL(
BGl_datagramzd2socketzd2clientzf3zf3zz__socketz00(BgL_objz00_2289));} 

}



/* datagram-socket-hostname */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2hostnamez00zz__socketz00(obj_t BgL_socketz00_59)
{
{ /* Llib/socket.scm 569 */
return 
BGL_DATAGRAM_SOCKET_HOSTNAME(BgL_socketz00_59);} 

}



/* &datagram-socket-hostname */
obj_t BGl_z62datagramzd2socketzd2hostnamez62zz__socketz00(obj_t BgL_envz00_2290, obj_t BgL_socketz00_2291)
{
{ /* Llib/socket.scm 569 */
{ /* Llib/socket.scm 570 */
 obj_t BgL_auxz00_4053;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2291))
{ /* Llib/socket.scm 570 */
BgL_auxz00_4053 = BgL_socketz00_2291
; }  else 
{ 
 obj_t BgL_auxz00_4056;
BgL_auxz00_4056 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(25394L), BGl_string2257z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2291); 
FAILURE(BgL_auxz00_4056,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2hostnamez00zz__socketz00(BgL_auxz00_4053);} } 

}



/* datagram-socket-host-address */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2hostzd2addresszd2zz__socketz00(obj_t BgL_socketz00_60)
{
{ /* Llib/socket.scm 575 */
return 
BGL_DATAGRAM_SOCKET_HOSTIP(BgL_socketz00_60);} 

}



/* &datagram-socket-host-address */
obj_t BGl_z62datagramzd2socketzd2hostzd2addresszb0zz__socketz00(obj_t BgL_envz00_2292, obj_t BgL_socketz00_2293)
{
{ /* Llib/socket.scm 575 */
{ /* Llib/socket.scm 576 */
 obj_t BgL_auxz00_4062;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2293))
{ /* Llib/socket.scm 576 */
BgL_auxz00_4062 = BgL_socketz00_2293
; }  else 
{ 
 obj_t BgL_auxz00_4065;
BgL_auxz00_4065 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(25709L), BGl_string2259z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2293); 
FAILURE(BgL_auxz00_4065,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2hostzd2addresszd2zz__socketz00(BgL_auxz00_4062);} } 

}



/* datagram-socket-port-number */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2portzd2numberzd2zz__socketz00(obj_t BgL_socketz00_61)
{
{ /* Llib/socket.scm 581 */
return 
BINT(
BGL_DATAGRAM_SOCKET_PORTNUM(BgL_socketz00_61));} 

}



/* &datagram-socket-port-number */
obj_t BGl_z62datagramzd2socketzd2portzd2numberzb0zz__socketz00(obj_t BgL_envz00_2294, obj_t BgL_socketz00_2295)
{
{ /* Llib/socket.scm 581 */
{ /* Llib/socket.scm 582 */
 obj_t BgL_auxz00_4072;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2295))
{ /* Llib/socket.scm 582 */
BgL_auxz00_4072 = BgL_socketz00_2295
; }  else 
{ 
 obj_t BgL_auxz00_4075;
BgL_auxz00_4075 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26021L), BGl_string2260z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2295); 
FAILURE(BgL_auxz00_4075,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2portzd2numberzd2zz__socketz00(BgL_auxz00_4072);} } 

}



/* datagram-socket-output */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2outputz00zz__socketz00(obj_t BgL_socketz00_62)
{
{ /* Llib/socket.scm 587 */
{ /* Llib/socket.scm 588 */
 bool_t BgL_test2614z00_4080;
{ /* Llib/socket.scm 588 */
 obj_t BgL_arg1388z00_2688;
BgL_arg1388z00_2688 = 
BGL_DATAGRAM_SOCKET_PORT(BgL_socketz00_62); 
BgL_test2614z00_4080 = 
OUTPUT_PORTP(BgL_arg1388z00_2688); } 
if(BgL_test2614z00_4080)
{ /* Llib/socket.scm 589 */
 obj_t BgL_aux2045z00_2689;
BgL_aux2045z00_2689 = 
BGL_DATAGRAM_SOCKET_PORT(BgL_socketz00_62); 
if(
OUTPUT_PORTP(BgL_aux2045z00_2689))
{ /* Llib/socket.scm 589 */
return BgL_aux2045z00_2689;}  else 
{ 
 obj_t BgL_auxz00_4086;
BgL_auxz00_4086 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26390L), BGl_string2261z00zz__socketz00, BGl_string2262z00zz__socketz00, BgL_aux2045z00_2689); 
FAILURE(BgL_auxz00_4086,BFALSE,BFALSE);} }  else 
{ /* Llib/socket.scm 590 */
 obj_t BgL_aux2047z00_2690;
BgL_aux2047z00_2690 = 
BGl_errorz00zz__errorz00(BGl_string2261z00zz__socketz00, BGl_string2263z00zz__socketz00, BgL_socketz00_62); 
if(
OUTPUT_PORTP(BgL_aux2047z00_2690))
{ /* Llib/socket.scm 590 */
return BgL_aux2047z00_2690;}  else 
{ 
 obj_t BgL_auxz00_4093;
BgL_auxz00_4093 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26428L), BGl_string2261z00zz__socketz00, BGl_string2262z00zz__socketz00, BgL_aux2047z00_2690); 
FAILURE(BgL_auxz00_4093,BFALSE,BFALSE);} } } } 

}



/* &datagram-socket-output */
obj_t BGl_z62datagramzd2socketzd2outputz62zz__socketz00(obj_t BgL_envz00_2296, obj_t BgL_socketz00_2297)
{
{ /* Llib/socket.scm 587 */
{ /* Llib/socket.scm 588 */
 obj_t BgL_auxz00_4097;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2297))
{ /* Llib/socket.scm 588 */
BgL_auxz00_4097 = BgL_socketz00_2297
; }  else 
{ 
 obj_t BgL_auxz00_4100;
BgL_auxz00_4100 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26333L), BGl_string2264z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2297); 
FAILURE(BgL_auxz00_4100,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2outputz00zz__socketz00(BgL_auxz00_4097);} } 

}



/* datagram-socket-input */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2inputz00zz__socketz00(obj_t BgL_socketz00_63)
{
{ /* Llib/socket.scm 596 */
{ /* Llib/socket.scm 597 */
 bool_t BgL_test2618z00_4105;
{ /* Llib/socket.scm 597 */
 obj_t BgL_arg1391z00_2691;
BgL_arg1391z00_2691 = 
BGL_DATAGRAM_SOCKET_PORT(BgL_socketz00_63); 
BgL_test2618z00_4105 = 
INPUT_PORTP(BgL_arg1391z00_2691); } 
if(BgL_test2618z00_4105)
{ /* Llib/socket.scm 598 */
 obj_t BgL_aux2051z00_2692;
BgL_aux2051z00_2692 = 
BGL_DATAGRAM_SOCKET_PORT(BgL_socketz00_63); 
if(
INPUT_PORTP(BgL_aux2051z00_2692))
{ /* Llib/socket.scm 598 */
return BgL_aux2051z00_2692;}  else 
{ 
 obj_t BgL_auxz00_4111;
BgL_auxz00_4111 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26838L), BGl_string2265z00zz__socketz00, BGl_string2266z00zz__socketz00, BgL_aux2051z00_2692); 
FAILURE(BgL_auxz00_4111,BFALSE,BFALSE);} }  else 
{ /* Llib/socket.scm 599 */
 obj_t BgL_aux2053z00_2693;
BgL_aux2053z00_2693 = 
BGl_errorz00zz__errorz00(BGl_string2265z00zz__socketz00, BGl_string2267z00zz__socketz00, BgL_socketz00_63); 
if(
INPUT_PORTP(BgL_aux2053z00_2693))
{ /* Llib/socket.scm 599 */
return BgL_aux2053z00_2693;}  else 
{ 
 obj_t BgL_auxz00_4118;
BgL_auxz00_4118 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26876L), BGl_string2265z00zz__socketz00, BGl_string2266z00zz__socketz00, BgL_aux2053z00_2693); 
FAILURE(BgL_auxz00_4118,BFALSE,BFALSE);} } } } 

}



/* &datagram-socket-input */
obj_t BGl_z62datagramzd2socketzd2inputz62zz__socketz00(obj_t BgL_envz00_2298, obj_t BgL_socketz00_2299)
{
{ /* Llib/socket.scm 596 */
{ /* Llib/socket.scm 597 */
 obj_t BgL_auxz00_4122;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2299))
{ /* Llib/socket.scm 597 */
BgL_auxz00_4122 = BgL_socketz00_2299
; }  else 
{ 
 obj_t BgL_auxz00_4125;
BgL_auxz00_4125 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(26782L), BGl_string2268z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2299); 
FAILURE(BgL_auxz00_4125,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2inputz00zz__socketz00(BgL_auxz00_4122);} } 

}



/* _make-datagram-server-socket */
obj_t BGl__makezd2datagramzd2serverzd2socketzd2zz__socketz00(obj_t BgL_env1159z00_67, obj_t BgL_opt1158z00_66)
{
{ /* Llib/socket.scm 605 */
{ /* Llib/socket.scm 605 */

{ 

{ /* Llib/socket.scm 605 */
 long BgL_aux1161z00_2696;
{ 
 obj_t BgL_auxz00_4130;
if(
VECTORP(BgL_opt1158z00_66))
{ /* Llib/socket.scm 605 */
BgL_auxz00_4130 = BgL_opt1158z00_66
; }  else 
{ 
 obj_t BgL_auxz00_4133;
BgL_auxz00_4133 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27179L), BGl_string2273z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1158z00_66); 
FAILURE(BgL_auxz00_4133,BFALSE,BFALSE);} 
BgL_aux1161z00_2696 = 
VECTOR_LENGTH(BgL_auxz00_4130); } 
switch( BgL_aux1161z00_2696) { case 0L : 

{ /* Llib/socket.scm 605 */
 obj_t BgL_domainz00_2697;
BgL_domainz00_2697 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 605 */

{ /* Llib/socket.scm 605 */
 obj_t BgL_res1807z00_2698;
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 607 */
 bool_t BgL_test2623z00_4139;
{ /* Llib/socket.scm 607 */
 bool_t BgL__ortest_1053z00_2699;
BgL__ortest_1053z00_2699 = 
(BgL_domainz00_2697==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1053z00_2699)
{ /* Llib/socket.scm 607 */
BgL_test2623z00_4139 = BgL__ortest_1053z00_2699
; }  else 
{ /* Llib/socket.scm 607 */
BgL_test2623z00_4139 = 
(BgL_domainz00_2697==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2623z00_4139)
{ /* Llib/socket.scm 609 */
 obj_t BgL_tmpz00_4143;
if(
SYMBOLP(BgL_domainz00_2697))
{ /* Llib/socket.scm 609 */
BgL_tmpz00_4143 = BgL_domainz00_2697
; }  else 
{ 
 obj_t BgL_auxz00_4147;
BgL_auxz00_4147 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27356L), BGl_string2273z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_2697); 
FAILURE(BgL_auxz00_4147,BFALSE,BFALSE);} 
BgL_res1807z00_2698 = 
bgl_make_datagram_server_socket(
(int)(0L), BgL_tmpz00_4143); }  else 
{ /* Llib/socket.scm 611 */
 obj_t BgL_aux2063z00_2700;
BgL_aux2063z00_2700 = 
BGl_errorz00zz__errorz00(BGl_string2271z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2697); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2063z00_2700))
{ /* Llib/socket.scm 611 */
BgL_res1807z00_2698 = BgL_aux2063z00_2700; }  else 
{ 
 obj_t BgL_auxz00_4155;
BgL_auxz00_4155 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27384L), BGl_string2273z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2063z00_2700); 
FAILURE(BgL_auxz00_4155,BFALSE,BFALSE);} } } 
return BgL_res1807z00_2698;} } } break;case 1L : 

{ /* Llib/socket.scm 605 */
 obj_t BgL_portz00_2701;
{ 
 obj_t BgL_auxz00_4159;
if(
VECTORP(BgL_opt1158z00_66))
{ /* Llib/socket.scm 605 */
BgL_auxz00_4159 = BgL_opt1158z00_66
; }  else 
{ 
 obj_t BgL_auxz00_4162;
BgL_auxz00_4162 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27179L), BGl_string2273z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1158z00_66); 
FAILURE(BgL_auxz00_4162,BFALSE,BFALSE);} 
BgL_portz00_2701 = 
VECTOR_REF(BgL_auxz00_4159,0L); } 
{ /* Llib/socket.scm 605 */
 obj_t BgL_domainz00_2702;
BgL_domainz00_2702 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 605 */

{ /* Llib/socket.scm 605 */
 obj_t BgL_res1808z00_2703;
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 607 */
 bool_t BgL_test2628z00_4168;
{ /* Llib/socket.scm 607 */
 bool_t BgL__ortest_1053z00_2704;
BgL__ortest_1053z00_2704 = 
(BgL_domainz00_2702==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1053z00_2704)
{ /* Llib/socket.scm 607 */
BgL_test2628z00_4168 = BgL__ortest_1053z00_2704
; }  else 
{ /* Llib/socket.scm 607 */
BgL_test2628z00_4168 = 
(BgL_domainz00_2702==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2628z00_4168)
{ /* Llib/socket.scm 609 */
 obj_t BgL_auxz00_4181; int BgL_tmpz00_4172;
if(
SYMBOLP(BgL_domainz00_2702))
{ /* Llib/socket.scm 609 */
BgL_auxz00_4181 = BgL_domainz00_2702
; }  else 
{ 
 obj_t BgL_auxz00_4184;
BgL_auxz00_4184 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27356L), BGl_string2273z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_2702); 
FAILURE(BgL_auxz00_4184,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 609 */
 obj_t BgL_tmpz00_4173;
if(
INTEGERP(BgL_portz00_2701))
{ /* Llib/socket.scm 609 */
BgL_tmpz00_4173 = BgL_portz00_2701
; }  else 
{ 
 obj_t BgL_auxz00_4176;
BgL_auxz00_4176 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27351L), BGl_string2273z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_portz00_2701); 
FAILURE(BgL_auxz00_4176,BFALSE,BFALSE);} 
BgL_tmpz00_4172 = 
CINT(BgL_tmpz00_4173); } 
BgL_res1808z00_2703 = 
bgl_make_datagram_server_socket(BgL_tmpz00_4172, BgL_auxz00_4181); }  else 
{ /* Llib/socket.scm 611 */
 obj_t BgL_aux2070z00_2705;
BgL_aux2070z00_2705 = 
BGl_errorz00zz__errorz00(BGl_string2271z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2702); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2070z00_2705))
{ /* Llib/socket.scm 611 */
BgL_res1808z00_2703 = BgL_aux2070z00_2705; }  else 
{ 
 obj_t BgL_auxz00_4192;
BgL_auxz00_4192 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27384L), BGl_string2273z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2070z00_2705); 
FAILURE(BgL_auxz00_4192,BFALSE,BFALSE);} } } 
return BgL_res1808z00_2703;} } } } break;case 2L : 

{ /* Llib/socket.scm 605 */
 obj_t BgL_portz00_2706;
{ 
 obj_t BgL_auxz00_4196;
if(
VECTORP(BgL_opt1158z00_66))
{ /* Llib/socket.scm 605 */
BgL_auxz00_4196 = BgL_opt1158z00_66
; }  else 
{ 
 obj_t BgL_auxz00_4199;
BgL_auxz00_4199 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27179L), BGl_string2273z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1158z00_66); 
FAILURE(BgL_auxz00_4199,BFALSE,BFALSE);} 
BgL_portz00_2706 = 
VECTOR_REF(BgL_auxz00_4196,0L); } 
{ /* Llib/socket.scm 605 */
 obj_t BgL_domainz00_2707;
{ 
 obj_t BgL_auxz00_4204;
if(
VECTORP(BgL_opt1158z00_66))
{ /* Llib/socket.scm 605 */
BgL_auxz00_4204 = BgL_opt1158z00_66
; }  else 
{ 
 obj_t BgL_auxz00_4207;
BgL_auxz00_4207 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27179L), BGl_string2273z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1158z00_66); 
FAILURE(BgL_auxz00_4207,BFALSE,BFALSE);} 
BgL_domainz00_2707 = 
VECTOR_REF(BgL_auxz00_4204,1L); } 
{ /* Llib/socket.scm 605 */

{ /* Llib/socket.scm 605 */
 obj_t BgL_res1809z00_2708;
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 607 */
 bool_t BgL_test2635z00_4213;
{ /* Llib/socket.scm 607 */
 bool_t BgL__ortest_1053z00_2709;
BgL__ortest_1053z00_2709 = 
(BgL_domainz00_2707==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1053z00_2709)
{ /* Llib/socket.scm 607 */
BgL_test2635z00_4213 = BgL__ortest_1053z00_2709
; }  else 
{ /* Llib/socket.scm 607 */
BgL_test2635z00_4213 = 
(BgL_domainz00_2707==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2635z00_4213)
{ /* Llib/socket.scm 609 */
 obj_t BgL_auxz00_4226; int BgL_tmpz00_4217;
if(
SYMBOLP(BgL_domainz00_2707))
{ /* Llib/socket.scm 609 */
BgL_auxz00_4226 = BgL_domainz00_2707
; }  else 
{ 
 obj_t BgL_auxz00_4229;
BgL_auxz00_4229 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27356L), BGl_string2273z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_2707); 
FAILURE(BgL_auxz00_4229,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 609 */
 obj_t BgL_tmpz00_4218;
if(
INTEGERP(BgL_portz00_2706))
{ /* Llib/socket.scm 609 */
BgL_tmpz00_4218 = BgL_portz00_2706
; }  else 
{ 
 obj_t BgL_auxz00_4221;
BgL_auxz00_4221 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27351L), BGl_string2273z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_portz00_2706); 
FAILURE(BgL_auxz00_4221,BFALSE,BFALSE);} 
BgL_tmpz00_4217 = 
CINT(BgL_tmpz00_4218); } 
BgL_res1809z00_2708 = 
bgl_make_datagram_server_socket(BgL_tmpz00_4217, BgL_auxz00_4226); }  else 
{ /* Llib/socket.scm 611 */
 obj_t BgL_aux2079z00_2710;
BgL_aux2079z00_2710 = 
BGl_errorz00zz__errorz00(BGl_string2271z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2707); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2079z00_2710))
{ /* Llib/socket.scm 611 */
BgL_res1809z00_2708 = BgL_aux2079z00_2710; }  else 
{ 
 obj_t BgL_auxz00_4237;
BgL_auxz00_4237 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27384L), BGl_string2273z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2079z00_2710); 
FAILURE(BgL_auxz00_4237,BFALSE,BFALSE);} } } 
return BgL_res1809z00_2708;} } } } break;
default: 
{ /* Llib/socket.scm 605 */
 long BgL_arg1392z00_2695;
{ 
 obj_t BgL_auxz00_4241;
if(
VECTORP(BgL_opt1158z00_66))
{ /* Llib/socket.scm 605 */
BgL_auxz00_4241 = BgL_opt1158z00_66
; }  else 
{ 
 obj_t BgL_auxz00_4244;
BgL_auxz00_4244 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27179L), BGl_string2269z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1158z00_66); 
FAILURE(BgL_auxz00_4244,BFALSE,BFALSE);} 
BgL_arg1392z00_2695 = 
VECTOR_LENGTH(BgL_auxz00_4241); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2270z00zz__socketz00, BGl_string2272z00zz__socketz00, 
BINT(BgL_arg1392z00_2695));} } } } } } 

}



/* make-datagram-server-socket */
BGL_EXPORTED_DEF obj_t BGl_makezd2datagramzd2serverzd2socketzd2zz__socketz00(obj_t BgL_portz00_64, obj_t BgL_domainz00_65)
{
{ /* Llib/socket.scm 605 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 607 */
 bool_t BgL_test2641z00_4253;
{ /* Llib/socket.scm 607 */
 bool_t BgL__ortest_1053z00_2711;
BgL__ortest_1053z00_2711 = 
(BgL_domainz00_65==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1053z00_2711)
{ /* Llib/socket.scm 607 */
BgL_test2641z00_4253 = BgL__ortest_1053z00_2711
; }  else 
{ /* Llib/socket.scm 607 */
BgL_test2641z00_4253 = 
(BgL_domainz00_65==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2641z00_4253)
{ /* Llib/socket.scm 609 */
 obj_t BgL_auxz00_4266; int BgL_tmpz00_4257;
if(
SYMBOLP(BgL_domainz00_65))
{ /* Llib/socket.scm 609 */
BgL_auxz00_4266 = BgL_domainz00_65
; }  else 
{ 
 obj_t BgL_auxz00_4269;
BgL_auxz00_4269 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27356L), BGl_string2271z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_65); 
FAILURE(BgL_auxz00_4269,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 609 */
 obj_t BgL_tmpz00_4258;
if(
INTEGERP(BgL_portz00_64))
{ /* Llib/socket.scm 609 */
BgL_tmpz00_4258 = BgL_portz00_64
; }  else 
{ 
 obj_t BgL_auxz00_4261;
BgL_auxz00_4261 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27351L), BGl_string2271z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_portz00_64); 
FAILURE(BgL_auxz00_4261,BFALSE,BFALSE);} 
BgL_tmpz00_4257 = 
CINT(BgL_tmpz00_4258); } 
return 
bgl_make_datagram_server_socket(BgL_tmpz00_4257, BgL_auxz00_4266);}  else 
{ /* Llib/socket.scm 611 */
 obj_t BgL_aux2084z00_2712;
BgL_aux2084z00_2712 = 
BGl_errorz00zz__errorz00(BGl_string2271z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_65); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2084z00_2712))
{ /* Llib/socket.scm 611 */
return BgL_aux2084z00_2712;}  else 
{ 
 obj_t BgL_auxz00_4277;
BgL_auxz00_4277 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27384L), BGl_string2271z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2084z00_2712); 
FAILURE(BgL_auxz00_4277,BFALSE,BFALSE);} } } } 

}



/* _make-datagram-unbound-socket */
obj_t BGl__makezd2datagramzd2unboundzd2socketzd2zz__socketz00(obj_t BgL_env1163z00_70, obj_t BgL_opt1162z00_69)
{
{ /* Llib/socket.scm 616 */
{ /* Llib/socket.scm 616 */

{ 

{ /* Llib/socket.scm 616 */
 long BgL_aux1165z00_2715;
{ 
 obj_t BgL_auxz00_4281;
if(
VECTORP(BgL_opt1162z00_69))
{ /* Llib/socket.scm 616 */
BgL_auxz00_4281 = BgL_opt1162z00_69
; }  else 
{ 
 obj_t BgL_auxz00_4284;
BgL_auxz00_4284 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27676L), BGl_string2277z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1162z00_69); 
FAILURE(BgL_auxz00_4284,BFALSE,BFALSE);} 
BgL_aux1165z00_2715 = 
VECTOR_LENGTH(BgL_auxz00_4281); } 
switch( BgL_aux1165z00_2715) { case 0L : 

{ /* Llib/socket.scm 616 */
 obj_t BgL_domainz00_2716;
BgL_domainz00_2716 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 616 */

{ /* Llib/socket.scm 616 */
 obj_t BgL_res1810z00_2717;
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 618 */
 bool_t BgL_test2647z00_4290;
{ /* Llib/socket.scm 618 */
 bool_t BgL__ortest_1056z00_2718;
BgL__ortest_1056z00_2718 = 
(BgL_domainz00_2716==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1056z00_2718)
{ /* Llib/socket.scm 618 */
BgL_test2647z00_4290 = BgL__ortest_1056z00_2718
; }  else 
{ /* Llib/socket.scm 618 */
BgL_test2647z00_4290 = 
(BgL_domainz00_2716==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2647z00_4290)
{ /* Llib/socket.scm 618 */
BgL_res1810z00_2717 = 
bgl_make_datagram_unbound_socket(BgL_domainz00_2716); }  else 
{ /* Llib/socket.scm 622 */
 obj_t BgL_aux2090z00_2719;
BgL_aux2090z00_2719 = 
BGl_errorz00zz__errorz00(BGl_string2276z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2716); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2090z00_2719))
{ /* Llib/socket.scm 622 */
BgL_res1810z00_2717 = BgL_aux2090z00_2719; }  else 
{ 
 obj_t BgL_auxz00_4298;
BgL_auxz00_4298 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27877L), BGl_string2277z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2090z00_2719); 
FAILURE(BgL_auxz00_4298,BFALSE,BFALSE);} } } 
return BgL_res1810z00_2717;} } } break;case 1L : 

{ /* Llib/socket.scm 616 */
 obj_t BgL_domainz00_2720;
{ 
 obj_t BgL_auxz00_4302;
if(
VECTORP(BgL_opt1162z00_69))
{ /* Llib/socket.scm 616 */
BgL_auxz00_4302 = BgL_opt1162z00_69
; }  else 
{ 
 obj_t BgL_auxz00_4305;
BgL_auxz00_4305 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27676L), BGl_string2277z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1162z00_69); 
FAILURE(BgL_auxz00_4305,BFALSE,BFALSE);} 
BgL_domainz00_2720 = 
VECTOR_REF(BgL_auxz00_4302,0L); } 
{ /* Llib/socket.scm 616 */

{ /* Llib/socket.scm 616 */
 obj_t BgL_res1811z00_2721;
{ /* Llib/socket.scm 616 */
 obj_t BgL_domainz00_2722;
if(
SYMBOLP(BgL_domainz00_2720))
{ /* Llib/socket.scm 616 */
BgL_domainz00_2722 = BgL_domainz00_2720; }  else 
{ 
 obj_t BgL_auxz00_4312;
BgL_auxz00_4312 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27676L), BGl_string2277z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_2720); 
FAILURE(BgL_auxz00_4312,BFALSE,BFALSE);} 
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 618 */
 bool_t BgL_test2652z00_4317;
{ /* Llib/socket.scm 618 */
 bool_t BgL__ortest_1056z00_2723;
BgL__ortest_1056z00_2723 = 
(BgL_domainz00_2722==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1056z00_2723)
{ /* Llib/socket.scm 618 */
BgL_test2652z00_4317 = BgL__ortest_1056z00_2723
; }  else 
{ /* Llib/socket.scm 618 */
BgL_test2652z00_4317 = 
(BgL_domainz00_2722==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2652z00_4317)
{ /* Llib/socket.scm 618 */
BgL_res1811z00_2721 = 
bgl_make_datagram_unbound_socket(BgL_domainz00_2722); }  else 
{ /* Llib/socket.scm 622 */
 obj_t BgL_aux2096z00_2724;
BgL_aux2096z00_2724 = 
BGl_errorz00zz__errorz00(BGl_string2276z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2722); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2096z00_2724))
{ /* Llib/socket.scm 622 */
BgL_res1811z00_2721 = BgL_aux2096z00_2724; }  else 
{ 
 obj_t BgL_auxz00_4325;
BgL_auxz00_4325 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27877L), BGl_string2277z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2096z00_2724); 
FAILURE(BgL_auxz00_4325,BFALSE,BFALSE);} } } } 
return BgL_res1811z00_2721;} } } break;
default: 
{ /* Llib/socket.scm 616 */
 long BgL_arg1395z00_2714;
{ 
 obj_t BgL_auxz00_4329;
if(
VECTORP(BgL_opt1162z00_69))
{ /* Llib/socket.scm 616 */
BgL_auxz00_4329 = BgL_opt1162z00_69
; }  else 
{ 
 obj_t BgL_auxz00_4332;
BgL_auxz00_4332 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27676L), BGl_string2274z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1162z00_69); 
FAILURE(BgL_auxz00_4332,BFALSE,BFALSE);} 
BgL_arg1395z00_2714 = 
VECTOR_LENGTH(BgL_auxz00_4329); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2275z00zz__socketz00, BGl_string2250z00zz__socketz00, 
BINT(BgL_arg1395z00_2714));} } } } } } 

}



/* make-datagram-unbound-socket */
BGL_EXPORTED_DEF obj_t BGl_makezd2datagramzd2unboundzd2socketzd2zz__socketz00(obj_t BgL_domainz00_68)
{
{ /* Llib/socket.scm 616 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 618 */
 bool_t BgL_test2656z00_4341;
{ /* Llib/socket.scm 618 */
 bool_t BgL__ortest_1056z00_2725;
BgL__ortest_1056z00_2725 = 
(BgL_domainz00_68==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1056z00_2725)
{ /* Llib/socket.scm 618 */
BgL_test2656z00_4341 = BgL__ortest_1056z00_2725
; }  else 
{ /* Llib/socket.scm 618 */
BgL_test2656z00_4341 = 
(BgL_domainz00_68==BGl_symbol2188z00zz__socketz00)
; } } 
if(BgL_test2656z00_4341)
{ /* Llib/socket.scm 618 */
BGL_TAIL return 
bgl_make_datagram_unbound_socket(BgL_domainz00_68);}  else 
{ /* Llib/socket.scm 622 */
 obj_t BgL_aux2098z00_2726;
BgL_aux2098z00_2726 = 
BGl_errorz00zz__errorz00(BGl_string2276z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_68); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2098z00_2726))
{ /* Llib/socket.scm 622 */
return BgL_aux2098z00_2726;}  else 
{ 
 obj_t BgL_auxz00_4349;
BgL_auxz00_4349 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(27877L), BGl_string2276z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2098z00_2726); 
FAILURE(BgL_auxz00_4349,BFALSE,BFALSE);} } } } 

}



/* _make-datagram-client-socket */
obj_t BGl__makezd2datagramzd2clientzd2socketzd2zz__socketz00(obj_t BgL_env1167z00_76, obj_t BgL_opt1166z00_75)
{
{ /* Llib/socket.scm 627 */
{ /* Llib/socket.scm 627 */
 obj_t BgL_g1168z00_2727; obj_t BgL_g1169z00_2728;
{ 
 obj_t BgL_auxz00_4353;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4353 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4356;
BgL_auxz00_4356 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4356,BFALSE,BFALSE);} 
BgL_g1168z00_2727 = 
VECTOR_REF(BgL_auxz00_4353,0L); } 
{ 
 obj_t BgL_auxz00_4361;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4361 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4364;
BgL_auxz00_4364 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4364,BFALSE,BFALSE);} 
BgL_g1169z00_2728 = 
VECTOR_REF(BgL_auxz00_4361,1L); } 
{ 

{ /* Llib/socket.scm 627 */
 long BgL_aux1171z00_2731;
{ 
 obj_t BgL_auxz00_4369;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4369 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4372;
BgL_auxz00_4372 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4372,BFALSE,BFALSE);} 
BgL_aux1171z00_2731 = 
VECTOR_LENGTH(BgL_auxz00_4369); } 
switch( BgL_aux1171z00_2731) { case 2L : 

{ /* Llib/socket.scm 627 */
 obj_t BgL_domainz00_2732;
BgL_domainz00_2732 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 627 */

{ /* Llib/socket.scm 627 */
 obj_t BgL_res1812z00_2733;
{ /* Llib/socket.scm 627 */
 obj_t BgL_hostnamez00_2734; int BgL_portz00_2735;
if(
STRINGP(BgL_g1168z00_2727))
{ /* Llib/socket.scm 627 */
BgL_hostnamez00_2734 = BgL_g1168z00_2727; }  else 
{ 
 obj_t BgL_auxz00_4379;
BgL_auxz00_4379 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_g1168z00_2727); 
FAILURE(BgL_auxz00_4379,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 627 */
 obj_t BgL_tmpz00_4383;
if(
INTEGERP(BgL_g1169z00_2728))
{ /* Llib/socket.scm 627 */
BgL_tmpz00_4383 = BgL_g1169z00_2728
; }  else 
{ 
 obj_t BgL_auxz00_4386;
BgL_auxz00_4386 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_g1169z00_2728); 
FAILURE(BgL_auxz00_4386,BFALSE,BFALSE);} 
BgL_portz00_2735 = 
CINT(BgL_tmpz00_4383); } 
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 629 */
 bool_t BgL_test2664z00_4392;
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1059z00_2736;
BgL__ortest_1059z00_2736 = 
(BgL_domainz00_2732==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1059z00_2736)
{ /* Llib/socket.scm 629 */
BgL_test2664z00_4392 = BgL__ortest_1059z00_2736
; }  else 
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1060z00_2737;
BgL__ortest_1060z00_2737 = 
(BgL_domainz00_2732==BGl_symbol2188z00zz__socketz00); 
if(BgL__ortest_1060z00_2737)
{ /* Llib/socket.scm 629 */
BgL_test2664z00_4392 = BgL__ortest_1060z00_2737
; }  else 
{ /* Llib/socket.scm 629 */
BgL_test2664z00_4392 = 
(BgL_domainz00_2732==BGl_symbol2190z00zz__socketz00)
; } } } 
if(BgL_test2664z00_4392)
{ /* Llib/socket.scm 629 */
BgL_res1812z00_2733 = 
bgl_make_datagram_client_socket(BgL_hostnamez00_2734, BgL_portz00_2735, ((bool_t)0), BgL_domainz00_2732); }  else 
{ /* Llib/socket.scm 633 */
 obj_t BgL_aux2111z00_2738;
BgL_aux2111z00_2738 = 
BGl_errorz00zz__errorz00(BGl_string2281z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2732); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2111z00_2738))
{ /* Llib/socket.scm 633 */
BgL_res1812z00_2733 = BgL_aux2111z00_2738; }  else 
{ 
 obj_t BgL_auxz00_4402;
BgL_auxz00_4402 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28424L), BGl_string2278z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2111z00_2738); 
FAILURE(BgL_auxz00_4402,BFALSE,BFALSE);} } } } 
return BgL_res1812z00_2733;} } } break;case 3L : 

{ /* Llib/socket.scm 627 */
 obj_t BgL_broadcastz00_2739;
{ 
 obj_t BgL_auxz00_4406;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4406 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4409;
BgL_auxz00_4409 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4409,BFALSE,BFALSE);} 
BgL_broadcastz00_2739 = 
VECTOR_REF(BgL_auxz00_4406,2L); } 
{ /* Llib/socket.scm 627 */
 obj_t BgL_domainz00_2740;
BgL_domainz00_2740 = BGl_symbol2168z00zz__socketz00; 
{ /* Llib/socket.scm 627 */

{ /* Llib/socket.scm 627 */
 obj_t BgL_res1813z00_2741;
{ /* Llib/socket.scm 627 */
 obj_t BgL_hostnamez00_2742; int BgL_portz00_2743;
if(
STRINGP(BgL_g1168z00_2727))
{ /* Llib/socket.scm 627 */
BgL_hostnamez00_2742 = BgL_g1168z00_2727; }  else 
{ 
 obj_t BgL_auxz00_4416;
BgL_auxz00_4416 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_g1168z00_2727); 
FAILURE(BgL_auxz00_4416,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 627 */
 obj_t BgL_tmpz00_4420;
if(
INTEGERP(BgL_g1169z00_2728))
{ /* Llib/socket.scm 627 */
BgL_tmpz00_4420 = BgL_g1169z00_2728
; }  else 
{ 
 obj_t BgL_auxz00_4423;
BgL_auxz00_4423 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_g1169z00_2728); 
FAILURE(BgL_auxz00_4423,BFALSE,BFALSE);} 
BgL_portz00_2743 = 
CINT(BgL_tmpz00_4420); } 
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 629 */
 bool_t BgL_test2671z00_4429;
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1059z00_2744;
BgL__ortest_1059z00_2744 = 
(BgL_domainz00_2740==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1059z00_2744)
{ /* Llib/socket.scm 629 */
BgL_test2671z00_4429 = BgL__ortest_1059z00_2744
; }  else 
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1060z00_2745;
BgL__ortest_1060z00_2745 = 
(BgL_domainz00_2740==BGl_symbol2188z00zz__socketz00); 
if(BgL__ortest_1060z00_2745)
{ /* Llib/socket.scm 629 */
BgL_test2671z00_4429 = BgL__ortest_1060z00_2745
; }  else 
{ /* Llib/socket.scm 629 */
BgL_test2671z00_4429 = 
(BgL_domainz00_2740==BGl_symbol2190z00zz__socketz00)
; } } } 
if(BgL_test2671z00_4429)
{ /* Llib/socket.scm 629 */
BgL_res1813z00_2741 = 
bgl_make_datagram_client_socket(BgL_hostnamez00_2742, BgL_portz00_2743, 
CBOOL(BgL_broadcastz00_2739), BgL_domainz00_2740); }  else 
{ /* Llib/socket.scm 633 */
 obj_t BgL_aux2118z00_2746;
BgL_aux2118z00_2746 = 
BGl_errorz00zz__errorz00(BGl_string2281z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2740); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2118z00_2746))
{ /* Llib/socket.scm 633 */
BgL_res1813z00_2741 = BgL_aux2118z00_2746; }  else 
{ 
 obj_t BgL_auxz00_4440;
BgL_auxz00_4440 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28424L), BGl_string2278z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2118z00_2746); 
FAILURE(BgL_auxz00_4440,BFALSE,BFALSE);} } } } 
return BgL_res1813z00_2741;} } } } break;case 4L : 

{ /* Llib/socket.scm 627 */
 obj_t BgL_broadcastz00_2747;
{ 
 obj_t BgL_auxz00_4444;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4444 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4447;
BgL_auxz00_4447 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4447,BFALSE,BFALSE);} 
BgL_broadcastz00_2747 = 
VECTOR_REF(BgL_auxz00_4444,2L); } 
{ /* Llib/socket.scm 627 */
 obj_t BgL_domainz00_2748;
{ 
 obj_t BgL_auxz00_4452;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4452 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4455;
BgL_auxz00_4455 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4455,BFALSE,BFALSE);} 
BgL_domainz00_2748 = 
VECTOR_REF(BgL_auxz00_4452,3L); } 
{ /* Llib/socket.scm 627 */

{ /* Llib/socket.scm 627 */
 obj_t BgL_res1814z00_2749;
{ /* Llib/socket.scm 627 */
 obj_t BgL_hostnamez00_2750; int BgL_portz00_2751; obj_t BgL_domainz00_2752;
if(
STRINGP(BgL_g1168z00_2727))
{ /* Llib/socket.scm 627 */
BgL_hostnamez00_2750 = BgL_g1168z00_2727; }  else 
{ 
 obj_t BgL_auxz00_4462;
BgL_auxz00_4462 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_g1168z00_2727); 
FAILURE(BgL_auxz00_4462,BFALSE,BFALSE);} 
{ /* Llib/socket.scm 627 */
 obj_t BgL_tmpz00_4466;
if(
INTEGERP(BgL_g1169z00_2728))
{ /* Llib/socket.scm 627 */
BgL_tmpz00_4466 = BgL_g1169z00_2728
; }  else 
{ 
 obj_t BgL_auxz00_4469;
BgL_auxz00_4469 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_g1169z00_2728); 
FAILURE(BgL_auxz00_4469,BFALSE,BFALSE);} 
BgL_portz00_2751 = 
CINT(BgL_tmpz00_4466); } 
if(
SYMBOLP(BgL_domainz00_2748))
{ /* Llib/socket.scm 627 */
BgL_domainz00_2752 = BgL_domainz00_2748; }  else 
{ 
 obj_t BgL_auxz00_4476;
BgL_auxz00_4476 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2278z00zz__socketz00, BGl_string2192z00zz__socketz00, BgL_domainz00_2748); 
FAILURE(BgL_auxz00_4476,BFALSE,BFALSE);} 
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 629 */
 bool_t BgL_test2680z00_4481;
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1059z00_2753;
BgL__ortest_1059z00_2753 = 
(BgL_domainz00_2752==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1059z00_2753)
{ /* Llib/socket.scm 629 */
BgL_test2680z00_4481 = BgL__ortest_1059z00_2753
; }  else 
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1060z00_2754;
BgL__ortest_1060z00_2754 = 
(BgL_domainz00_2752==BGl_symbol2188z00zz__socketz00); 
if(BgL__ortest_1060z00_2754)
{ /* Llib/socket.scm 629 */
BgL_test2680z00_4481 = BgL__ortest_1060z00_2754
; }  else 
{ /* Llib/socket.scm 629 */
BgL_test2680z00_4481 = 
(BgL_domainz00_2752==BGl_symbol2190z00zz__socketz00)
; } } } 
if(BgL_test2680z00_4481)
{ /* Llib/socket.scm 629 */
BgL_res1814z00_2749 = 
bgl_make_datagram_client_socket(BgL_hostnamez00_2750, BgL_portz00_2751, 
CBOOL(BgL_broadcastz00_2747), BgL_domainz00_2752); }  else 
{ /* Llib/socket.scm 633 */
 obj_t BgL_aux2129z00_2755;
BgL_aux2129z00_2755 = 
BGl_errorz00zz__errorz00(BGl_string2281z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_2752); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2129z00_2755))
{ /* Llib/socket.scm 633 */
BgL_res1814z00_2749 = BgL_aux2129z00_2755; }  else 
{ 
 obj_t BgL_auxz00_4492;
BgL_auxz00_4492 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28424L), BGl_string2278z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2129z00_2755); 
FAILURE(BgL_auxz00_4492,BFALSE,BFALSE);} } } } 
return BgL_res1814z00_2749;} } } } break;
default: 
{ /* Llib/socket.scm 627 */
 long BgL_arg1397z00_2730;
{ 
 obj_t BgL_auxz00_4496;
if(
VECTORP(BgL_opt1166z00_75))
{ /* Llib/socket.scm 627 */
BgL_auxz00_4496 = BgL_opt1166z00_75
; }  else 
{ 
 obj_t BgL_auxz00_4499;
BgL_auxz00_4499 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28170L), BGl_string2279z00zz__socketz00, BGl_string2167z00zz__socketz00, BgL_opt1166z00_75); 
FAILURE(BgL_auxz00_4499,BFALSE,BFALSE);} 
BgL_arg1397z00_2730 = 
VECTOR_LENGTH(BgL_auxz00_4496); } 
return 
BGl_errorz00zz__errorz00(BGl_symbol2280z00zz__socketz00, BGl_string2282z00zz__socketz00, 
BINT(BgL_arg1397z00_2730));} } } } } } 

}



/* make-datagram-client-socket */
BGL_EXPORTED_DEF obj_t BGl_makezd2datagramzd2clientzd2socketzd2zz__socketz00(obj_t BgL_hostnamez00_71, int BgL_portz00_72, obj_t BgL_broadcastz00_73, obj_t BgL_domainz00_74)
{
{ /* Llib/socket.scm 627 */
BGl_z52socketzd2initz12z92zz__socketz00(); 
{ /* Llib/socket.scm 629 */
 bool_t BgL_test2685z00_4508;
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1059z00_2756;
BgL__ortest_1059z00_2756 = 
(BgL_domainz00_74==BGl_symbol2168z00zz__socketz00); 
if(BgL__ortest_1059z00_2756)
{ /* Llib/socket.scm 629 */
BgL_test2685z00_4508 = BgL__ortest_1059z00_2756
; }  else 
{ /* Llib/socket.scm 629 */
 bool_t BgL__ortest_1060z00_2757;
BgL__ortest_1060z00_2757 = 
(BgL_domainz00_74==BGl_symbol2188z00zz__socketz00); 
if(BgL__ortest_1060z00_2757)
{ /* Llib/socket.scm 629 */
BgL_test2685z00_4508 = BgL__ortest_1060z00_2757
; }  else 
{ /* Llib/socket.scm 629 */
BgL_test2685z00_4508 = 
(BgL_domainz00_74==BGl_symbol2190z00zz__socketz00)
; } } } 
if(BgL_test2685z00_4508)
{ /* Llib/socket.scm 629 */
return 
bgl_make_datagram_client_socket(BgL_hostnamez00_71, BgL_portz00_72, 
CBOOL(BgL_broadcastz00_73), BgL_domainz00_74);}  else 
{ /* Llib/socket.scm 633 */
 obj_t BgL_aux2131z00_2758;
BgL_aux2131z00_2758 = 
BGl_errorz00zz__errorz00(BGl_string2281z00zz__socketz00, BGl_string2205z00zz__socketz00, BgL_domainz00_74); 
if(
BGL_DATAGRAM_SOCKETP(BgL_aux2131z00_2758))
{ /* Llib/socket.scm 633 */
return BgL_aux2131z00_2758;}  else 
{ 
 obj_t BgL_auxz00_4519;
BgL_auxz00_4519 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28424L), BGl_string2281z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_aux2131z00_2758); 
FAILURE(BgL_auxz00_4519,BFALSE,BFALSE);} } } } 

}



/* datagram-socket-close */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2closez00zz__socketz00(obj_t BgL_socketz00_77)
{
{ /* Llib/socket.scm 638 */
BGL_TAIL return 
bgl_datagram_socket_close(BgL_socketz00_77);} 

}



/* &datagram-socket-close */
obj_t BGl_z62datagramzd2socketzd2closez62zz__socketz00(obj_t BgL_envz00_2300, obj_t BgL_socketz00_2301)
{
{ /* Llib/socket.scm 638 */
{ /* Llib/socket.scm 639 */
 obj_t BgL_auxz00_4524;
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2301))
{ /* Llib/socket.scm 639 */
BgL_auxz00_4524 = BgL_socketz00_2301
; }  else 
{ 
 obj_t BgL_auxz00_4527;
BgL_auxz00_4527 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(28765L), BGl_string2283z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2301); 
FAILURE(BgL_auxz00_4527,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2closez00zz__socketz00(BgL_auxz00_4524);} } 

}



/* datagram-socket-receive */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2receivez00zz__socketz00(obj_t BgL_socketz00_78, int BgL_lengthz00_79)
{
{ /* Llib/socket.scm 644 */
return 
bgl_datagram_socket_receive(BgL_socketz00_78, 
(long)(BgL_lengthz00_79));} 

}



/* &datagram-socket-receive */
obj_t BGl_z62datagramzd2socketzd2receivez62zz__socketz00(obj_t BgL_envz00_2302, obj_t BgL_socketz00_2303, obj_t BgL_lengthz00_2304)
{
{ /* Llib/socket.scm 644 */
{ /* Llib/socket.scm 645 */
 int BgL_auxz00_4541; obj_t BgL_auxz00_4534;
{ /* Llib/socket.scm 645 */
 obj_t BgL_tmpz00_4542;
if(
INTEGERP(BgL_lengthz00_2304))
{ /* Llib/socket.scm 645 */
BgL_tmpz00_4542 = BgL_lengthz00_2304
; }  else 
{ 
 obj_t BgL_auxz00_4545;
BgL_auxz00_4545 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29082L), BGl_string2284z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_lengthz00_2304); 
FAILURE(BgL_auxz00_4545,BFALSE,BFALSE);} 
BgL_auxz00_4541 = 
CINT(BgL_tmpz00_4542); } 
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2303))
{ /* Llib/socket.scm 645 */
BgL_auxz00_4534 = BgL_socketz00_2303
; }  else 
{ 
 obj_t BgL_auxz00_4537;
BgL_auxz00_4537 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29082L), BGl_string2284z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2303); 
FAILURE(BgL_auxz00_4537,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2receivez00zz__socketz00(BgL_auxz00_4534, BgL_auxz00_4541);} } 

}



/* datagram-socket-send */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2sendz00zz__socketz00(obj_t BgL_socketz00_80, obj_t BgL_stringz00_81, obj_t BgL_hostz00_82, int BgL_portz00_83)
{
{ /* Llib/socket.scm 650 */
BGL_TAIL return 
bgl_datagram_socket_send(BgL_socketz00_80, BgL_stringz00_81, BgL_hostz00_82, BgL_portz00_83);} 

}



/* &datagram-socket-send */
obj_t BGl_z62datagramzd2socketzd2sendz62zz__socketz00(obj_t BgL_envz00_2305, obj_t BgL_socketz00_2306, obj_t BgL_stringz00_2307, obj_t BgL_hostz00_2308, obj_t BgL_portz00_2309)
{
{ /* Llib/socket.scm 650 */
{ /* Llib/socket.scm 651 */
 int BgL_auxz00_4573; obj_t BgL_auxz00_4566; obj_t BgL_auxz00_4559; obj_t BgL_auxz00_4552;
{ /* Llib/socket.scm 651 */
 obj_t BgL_tmpz00_4574;
if(
INTEGERP(BgL_portz00_2309))
{ /* Llib/socket.scm 651 */
BgL_tmpz00_4574 = BgL_portz00_2309
; }  else 
{ 
 obj_t BgL_auxz00_4577;
BgL_auxz00_4577 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29412L), BGl_string2285z00zz__socketz00, BGl_string2184z00zz__socketz00, BgL_portz00_2309); 
FAILURE(BgL_auxz00_4577,BFALSE,BFALSE);} 
BgL_auxz00_4573 = 
CINT(BgL_tmpz00_4574); } 
if(
STRINGP(BgL_hostz00_2308))
{ /* Llib/socket.scm 651 */
BgL_auxz00_4566 = BgL_hostz00_2308
; }  else 
{ 
 obj_t BgL_auxz00_4569;
BgL_auxz00_4569 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29412L), BGl_string2285z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_hostz00_2308); 
FAILURE(BgL_auxz00_4569,BFALSE,BFALSE);} 
if(
STRINGP(BgL_stringz00_2307))
{ /* Llib/socket.scm 651 */
BgL_auxz00_4559 = BgL_stringz00_2307
; }  else 
{ 
 obj_t BgL_auxz00_4562;
BgL_auxz00_4562 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29412L), BGl_string2285z00zz__socketz00, BGl_string2161z00zz__socketz00, BgL_stringz00_2307); 
FAILURE(BgL_auxz00_4562,BFALSE,BFALSE);} 
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2306))
{ /* Llib/socket.scm 651 */
BgL_auxz00_4552 = BgL_socketz00_2306
; }  else 
{ 
 obj_t BgL_auxz00_4555;
BgL_auxz00_4555 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29412L), BGl_string2285z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2306); 
FAILURE(BgL_auxz00_4555,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2sendz00zz__socketz00(BgL_auxz00_4552, BgL_auxz00_4559, BgL_auxz00_4566, BgL_auxz00_4573);} } 

}



/* datagram-socket-option */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2optionz00zz__socketz00(obj_t BgL_socketz00_84, obj_t BgL_optionz00_85)
{
{ /* Llib/socket.scm 656 */
BGL_TAIL return 
bgl_getsockopt(BgL_socketz00_84, BgL_optionz00_85);} 

}



/* &datagram-socket-option */
obj_t BGl_z62datagramzd2socketzd2optionz62zz__socketz00(obj_t BgL_envz00_2310, obj_t BgL_socketz00_2311, obj_t BgL_optionz00_2312)
{
{ /* Llib/socket.scm 656 */
{ /* Llib/socket.scm 657 */
 obj_t BgL_auxz00_4591; obj_t BgL_auxz00_4584;
if(
KEYWORDP(BgL_optionz00_2312))
{ /* Llib/socket.scm 657 */
BgL_auxz00_4591 = BgL_optionz00_2312
; }  else 
{ 
 obj_t BgL_auxz00_4594;
BgL_auxz00_4594 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29741L), BGl_string2286z00zz__socketz00, BGl_string2255z00zz__socketz00, BgL_optionz00_2312); 
FAILURE(BgL_auxz00_4594,BFALSE,BFALSE);} 
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2311))
{ /* Llib/socket.scm 657 */
BgL_auxz00_4584 = BgL_socketz00_2311
; }  else 
{ 
 obj_t BgL_auxz00_4587;
BgL_auxz00_4587 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(29741L), BGl_string2286z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2311); 
FAILURE(BgL_auxz00_4587,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2optionz00zz__socketz00(BgL_auxz00_4584, BgL_auxz00_4591);} } 

}



/* datagram-socket-option-set! */
BGL_EXPORTED_DEF obj_t BGl_datagramzd2socketzd2optionzd2setz12zc0zz__socketz00(obj_t BgL_socketz00_86, obj_t BgL_optionz00_87, obj_t BgL_valz00_88)
{
{ /* Llib/socket.scm 662 */
BGL_TAIL return 
bgl_setsockopt(BgL_socketz00_86, BgL_optionz00_87, BgL_valz00_88);} 

}



/* &datagram-socket-option-set! */
obj_t BGl_z62datagramzd2socketzd2optionzd2setz12za2zz__socketz00(obj_t BgL_envz00_2313, obj_t BgL_socketz00_2314, obj_t BgL_optionz00_2315, obj_t BgL_valz00_2316)
{
{ /* Llib/socket.scm 662 */
{ /* Llib/socket.scm 663 */
 obj_t BgL_auxz00_4607; obj_t BgL_auxz00_4600;
if(
KEYWORDP(BgL_optionz00_2315))
{ /* Llib/socket.scm 663 */
BgL_auxz00_4607 = BgL_optionz00_2315
; }  else 
{ 
 obj_t BgL_auxz00_4610;
BgL_auxz00_4610 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(30060L), BGl_string2287z00zz__socketz00, BGl_string2255z00zz__socketz00, BgL_optionz00_2315); 
FAILURE(BgL_auxz00_4610,BFALSE,BFALSE);} 
if(
BGL_DATAGRAM_SOCKETP(BgL_socketz00_2314))
{ /* Llib/socket.scm 663 */
BgL_auxz00_4600 = BgL_socketz00_2314
; }  else 
{ 
 obj_t BgL_auxz00_4603;
BgL_auxz00_4603 = 
BGl_typezd2errorzd2zz__errorz00(BGl_string2155z00zz__socketz00, 
BINT(30060L), BGl_string2287z00zz__socketz00, BGl_string2258z00zz__socketz00, BgL_socketz00_2314); 
FAILURE(BgL_auxz00_4603,BFALSE,BFALSE);} 
return 
BGl_datagramzd2socketzd2optionzd2setz12zc0zz__socketz00(BgL_auxz00_4600, BgL_auxz00_4607, BgL_valz00_2316);} } 

}



/* object-init */
obj_t BGl_objectzd2initzd2zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
return BUNSPEC;} 

}



/* generic-init */
obj_t BGl_genericzd2initzd2zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
return BUNSPEC;} 

}



/* method-init */
obj_t BGl_methodzd2initzd2zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
return BUNSPEC;} 

}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zz__socketz00(void)
{
{ /* Llib/socket.scm 14 */
BGl_modulezd2initializa7ationz75zz__errorz00(88804785L, 
BSTRING_TO_STRING(BGl_string2288z00zz__socketz00)); 
BGl_modulezd2initializa7ationz75zz__objectz00(475449627L, 
BSTRING_TO_STRING(BGl_string2288z00zz__socketz00)); 
return 
BGl_modulezd2initializa7ationz75zz__threadz00(149516032L, 
BSTRING_TO_STRING(BGl_string2288z00zz__socketz00));} 

}

#ifdef __cplusplus
}
#endif
