#include "opendylan/run-time.h"

/* Generated by Open Dylan 2014.1 for x86_64-linux */

/* Typedefs for referenced classes */

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value Pgf_cache_;
  dylan_value debug_name_;
  dylan_value generic_function_methods_;
  dylan_value discriminator_;
  dylan_value incremental_gf_module_;
  dylan_value incremental_gf_domain_info_;
  dylan_value incremental_gf_method_libraries_;
  dylan_value incremental_gf_properties_;
} _KLincremental_generic_functionGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value debug_name_;
  dylan_value class_implementation_class_;
  dylan_value class_subtype_bit_;
  dylan_value class_module_;
} _KLfunction_classGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value debug_name_;
  dylan_value class_implementation_class_;
  dylan_value class_subtype_bit_;
  dylan_value class_module_;
} _KLclassGVKd;

#define  define__KLmm_wrapperGVKi(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value mm_wrapper_implementation_class_; \
    dylan_value mm_wrapper_subtype_mask_; \
    DWORD mm_wrapper_fixed_part_; \
    DWORD mm_wrapper_variable_part_; \
    dylan_value mm_wrapper_number_patterns_; \
    DWORD mm_wrapper_pattern_element_[nrepeated+1]; \
  } _KLmm_wrapperGVKi_##nrepeated;
define__KLmm_wrapperGVKi(1);
define__KLmm_wrapperGVKi(0);

typedef struct {
  dylan_value wrapper;
  dylan_value namespace_name_;
  dylan_value library_major_version_;
  dylan_value library_minor_version_;
  dylan_value library_build_count_;
  dylan_value used_libraries_;
  dylan_value all_used_libraries_;
  dylan_value runtime_module_;
  dylan_value library_defined_generics_;
  dylan_value library_number_static_dispatches_;
  dylan_value library_number_dynamic_dispatches_;
} _KLlibraryGVKe;

typedef struct {
  dylan_value wrapper;
} _KLbooleanGVKd;

typedef struct {
  dylan_value wrapper;
} _KLobjectGVKd;

typedef struct {
  dylan_value wrapper;
} _KLunboundGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value head_;
  dylan_value tail_;
} _KLempty_listGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value Pgf_cache_;
  dylan_value debug_name_;
  dylan_value generic_function_methods_;
  dylan_value discriminator_;
} _KLsealed_generic_functionGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value symbol_name_;
} _KLsymbolGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value form_compilation_record_;
  dylan_value private_form_source_location_;
  dylan_value private_form_parent_form_;
  dylan_value form_sequence_number_;
  dylan_value private_form_dependencies_;
  dylan_value private_form_referenced_variables_;
  dylan_value private_form_adjectives_;
  dylan_value private_form_variable_name_or_names_;
  dylan_value form_properties_;
  dylan_value private_form_signature_;
} _KLgeneric_definitionGVdfmc_definitions;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value form_compilation_record_;
  dylan_value private_form_source_location_;
  dylan_value private_form_parent_form_;
  dylan_value form_sequence_number_;
  dylan_value private_form_dependencies_;
  dylan_value private_form_referenced_variables_;
  dylan_value private_form_adjectives_;
  dylan_value form_namespace_name_;
  dylan_value private_form_use_clauses_;
  dylan_value private_form_create_clauses_;
  dylan_value private_form_export_clauses_;
} _KLmodule_definitionGVdfmc_definitions;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value mep_;
} _KLsimple_methodGVKe;

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    dylan_value vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(7);
define__KLsimple_object_vectorGVKd(3);
define__KLsimple_object_vectorGVKd(15);
define__KLsimple_object_vectorGVKd(8);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(4);
define__KLsimple_object_vectorGVKd(0);

typedef struct {
  dylan_value wrapper;
} _KLidGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value stretchy_representation_;
} _KLstretchy_object_vectorGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value id_generic_function_;
  dylan_value id_specializers_;
} _KLmethod_idGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value union_type1_;
  dylan_value union_type2_;
} _KLunionGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value singleton_object_;
} _KLsingletonGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value head_;
  dylan_value tail_;
} _KLpairGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value mep_;
  dylan_value iep_;
  dylan_value keyword_specifiers_;
} _KLkeyword_methodGVKe;

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(8);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(354);
define__KLbyte_stringGVKd(13);
define__KLbyte_stringGVKd(25);
define__KLbyte_stringGVKd(6);
define__KLbyte_stringGVKd(7);
define__KLbyte_stringGVKd(9);
define__KLbyte_stringGVKd(12);

typedef struct {
  dylan_value wrapper;
  dylan_value properties_;
  dylan_value engine_node_callback_;
  dylan_value engine_node_entry_point_;
  dylan_value cache_header_engine_node_next_;
  dylan_value cache_header_engine_node_parent_;
} _KLsimple_typechecked_cache_header_engine_nodeGVKg;

typedef struct {
  dylan_value wrapper;
  dylan_value properties_;
  dylan_value engine_node_callback_;
  dylan_value engine_node_entry_point_;
} _KLabsent_engine_nodeGVKg;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value form_compilation_record_;
  dylan_value private_form_source_location_;
  dylan_value private_form_parent_form_;
  dylan_value form_sequence_number_;
  dylan_value private_form_dependencies_;
  dylan_value private_form_referenced_variables_;
  dylan_value private_form_adjectives_;
  dylan_value private_form_variable_name_or_names_;
  dylan_value form_properties_;
  dylan_value private_form_superclass_expressions_;
  dylan_value private_form_slot_specs_;
  dylan_value private_form_inherited_slot_specs_;
  dylan_value private_form_keyword_specs_;
  dylan_value private_form_metaclass_spec_;
} _KLclass_definitionGVdfmc_definitions;

#define  define__KLsimple_closure_methodGVKi(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value xep_; \
    dylan_value function_signature_; \
    dylan_value mep_; \
    dylan_value environment_size_; \
    dylan_value environment_element_[nrepeated+1]; \
  } _KLsimple_closure_methodGVKi_##nrepeated;
define__KLsimple_closure_methodGVKi(0);

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
} _KLsignatureGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value form_compilation_record_;
  dylan_value private_form_source_location_;
  dylan_value private_form_parent_form_;
  dylan_value form_sequence_number_;
  dylan_value private_form_dependencies_;
  dylan_value private_form_referenced_variables_;
} _KLtop_level_formGVdfmc_common;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
  dylan_value signature_values_;
} _KLsignatureAvaluesGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value Pprimitive_name_;
  dylan_value server_project_;
  dylan_value compiler_object_table_;
  dylan_value dfmc_database_proxy_;
  dylan_value module_name_proxies_;
} _KLdfmc_databaseGVdfmc_environment_database;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value private_shadowable_form_model_;
  dylan_value form_compilation_record_;
  dylan_value private_form_source_location_;
  dylan_value private_form_parent_form_;
  dylan_value form_sequence_number_;
  dylan_value private_form_dependencies_;
  dylan_value private_form_referenced_variables_;
  dylan_value private_form_adjectives_;
  dylan_value private_form_variable_name_or_names_;
  dylan_value form_properties_;
  dylan_value private_form_signature_;
  dylan_value private_form_body_;
  dylan_value private_form_class_;
  dylan_value private_form_signature_and_body_fragment_;
} _KLmethod_definitionGVdfmc_definitions;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
} _KLobject_signatureGVKe;

typedef struct {
  dylan_value wrapper;
} _KLsequenceGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value id_name_;
  dylan_value id_module_;
} _KLdefinition_idGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
  dylan_value signature_keys_;
  dylan_value signature_key_types_;
  dylan_value signature_values_;
} _KLkeyword_signatureAvaluesGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value Pprimitive_name_;
  dylan_value Pid_;
  dylan_value compiler_object_proxy_;
  dylan_value application_object_proxy_;
} _KLgeneric_function_objectGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value Pprimitive_name_;
  dylan_value Pid_;
  dylan_value compiler_object_proxy_;
  dylan_value application_object_proxy_;
} _KLmethod_objectGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
  dylan_value signature_keys_;
  dylan_value signature_key_types_;
} _KLkeyword_signatureGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
} _KLfunctionGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value parameter_name_;
  dylan_value parameter_type_;
} _KLparameterGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value parameter_name_;
  dylan_value parameter_type_;
  dylan_value parameter_keyword_;
  dylan_value parameter_default_value_;
} _KLoptional_parameterGVenvironment_protocols;

typedef struct {
  dylan_value wrapper;
  dylan_value Pprimitive_name_;
  dylan_value Pid_;
  dylan_value compiler_object_proxy_;
  dylan_value application_object_proxy_;
} _KLdylan_function_objectGVenvironment_protocols;


/* Typedefs for defined classes */


/* Referenced object declarations */

dylan_value Kmake_variableYdfmc_derived_informationVdfmc_browser_supportI (dylan_value, dylan_value);
dylan_value KPadd_a_methodVKnI (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe Kfunction_parametersVenvironment_protocols;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLlibraryGVKe Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database;
extern _KLclassGVKd KLlibraryGVKe;
extern _KLmm_wrapperGVKi_0 KLlibraryGVKeW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLincremental_generic_functionGVKe Kdo_generic_function_methodsVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kmethod_specializersVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kmethod_generic_functionVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kfind_compiler_database_proxyVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kcompiler_database_proxy_idVenvironment_protocols;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
dylan_value Kbrowsing_contextVdfmc_environment_databaseMM0I (dylan_value, dylan_value);
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
dylan_value Ksource_form_variableVdfmc_environment_databaseMM0I (dylan_value);
extern _KLsealed_generic_functionGVKe Kvariable_homeYdfmc_derived_informationVdfmc_browser_support;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLsealed_generic_functionGVKe Kvariable_nameYdfmc_derived_informationVdfmc_browser_support;
extern _KLsealed_generic_functionGVKe Kid_nameVenvironment_protocols;
extern _KLincremental_generic_functionGVKe KasVKd;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
dylan_value KEEVKdI (dylan_value, dylan_value);
extern _KLclassGVKd KLgeneric_definitionGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLgeneric_definitionGVdfmc_definitionsW;
dylan_value Kdefinition_home_name_and_moduleVdfmc_environment_databaseI (dylan_value, dylan_value);
extern _KLclassGVKd KLmodule_definitionGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLmodule_definitionGVdfmc_definitionsW;
dylan_value Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM1I (dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kvariable_active_definitionYdfmc_derived_informationVdfmc_browser_support;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
dylan_value Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM2I (dylan_value, dylan_value);
extern _KLclassGVKd KLidGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLidGVenvironment_protocolsW;
dylan_value KLstretchy_object_vectorGZ32ZconstructorVKiMM0I (dylan_value, dylan_value);
extern _KLclassGVKd KLstretchy_object_vectorGVKe;
extern _KLmm_wrapperGVKi_0 KLstretchy_object_vectorGVKeW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
dylan_value KasVKdMM39I (dylan_value, dylan_value);
extern _KLsymbolGVKd KJgeneric_function_;
dylan_value KmakeVKdMenvironment_protocolsM0I (dylan_value, dylan_value);
extern _KLclassGVKd KLmethod_idGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmethod_idGVenvironment_protocolsW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
dylan_value Kunion_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
dylan_value Ksingleton_pointer_idQ_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
extern _KLkeyword_methodGVKe KmakeVKdMM48;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLsimple_methodGVKe Kfunctional_parameter_typesYdfmc_derived_informationVdfmc_browser_support;
extern _KLincremental_generic_functionGVKe Kforward_iteration_protocolVKd;
extern _KLsealed_generic_functionGVKe Ktype_expression_to_definitionVdfmc_environment_database;
extern _KLsimple_methodGVKe Kfunctional_parametersYdfmc_derived_informationVdfmc_browser_support;
dylan_value Kfind_LobjectGVdfmc_environment_databaseI (dylan_value);
extern _KLincremental_generic_functionGVKe KsizeVKd;
extern _KLincremental_generic_functionGVKe KLVKd;
extern _KLclassGVKd KLsimple_typechecked_cache_header_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLsimple_typechecked_cache_header_engine_nodeGVKgW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLclass_definitionGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLclass_definitionGVdfmc_definitionsW;
dylan_value KaddXVKdMM3I (dylan_value, dylan_value);
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLclassGVKd KLtop_level_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLtop_level_formGVdfmc_commonW;
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLclassGVKd KLdfmc_databaseGVdfmc_environment_database;
extern _KLmm_wrapperGVKi_0 KLdfmc_databaseGVdfmc_environment_databaseW;
extern _KLclassGVKd KLmethod_definitionGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLmethod_definitionGVdfmc_definitionsW;
dylan_value Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM4I (dylan_value, dylan_value, dylan_value, dylan_value);
dylan_value Kobject_classVKdI (dylan_value);
extern _KLsealed_generic_functionGVKe Kmap_as_oneVKi;
extern _KLincremental_generic_functionGVKe KemptyQVKd;
extern _KLincremental_generic_functionGVKe KelementVKd;
extern _KLsealed_generic_functionGVKe Kbrowsing_contextVdfmc_environment_database;
dylan_value Kmore_specific_contextVdfmc_environment_databaseI (dylan_value, dylan_value);
dylan_value Kcollect_from_all_client_contextsVdfmc_environment_databaseMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kvariable_active_method_definitionsYdfmc_derived_informationVdfmc_browser_support;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
extern _KLincremental_generic_functionGVKe KEVKd;
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
extern _KLclassGVKd KLdefinition_idGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLdefinition_idGVenvironment_protocolsW;
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
dylan_value Kmake_environment_objectVenvironment_protocolsMM2I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLclassGVKd KLgeneric_function_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLgeneric_function_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLmethod_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmethod_objectGVenvironment_protocolsW;
extern _KLsimple_methodGVKe Kmake_environment_object_for_type_expressionVdfmc_environment_database;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LsequenceG_typesVKi;
extern _KLclassGVKd KLkeyword_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureGVKeW;
extern _KLclassGVKd KLfunctionGVKd;
extern _KLmm_wrapperGVKi_0 KLfunctionGVKdW;
extern _KLsimple_methodGVKe Kfunctional_keysYdfmc_derived_informationVdfmc_browser_support;
dylan_value KmemberQVKdMM4I (dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsimple_methodGVKe KEEVKd;
dylan_value KmakeVKdMM13I (dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsealed_generic_functionGVKe KmapVKd;
extern _KLclassGVKd KLparameterGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLparameterGVenvironment_protocolsW;
extern _KLsimple_methodGVKe Kname_to_stringVdfmc_environment_database;
dylan_value Kmake_environment_object_for_type_expressionVdfmc_environment_databaseI (dylan_value, dylan_value);
dylan_value Kname_to_stringVdfmc_environment_databaseI (dylan_value);
extern _KLsymbolGVKd KJname_;
extern _KLsymbolGVKd KJtype_;
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLclassGVKd KLoptional_parameterGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLoptional_parameterGVenvironment_protocolsW;
extern _KLunionGVKe KLtype_expressionGYdfmc_derived_informationVdfmc_browser_support;
extern _KLclassGVKd KLdylan_function_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLdylan_function_objectGVenvironment_protocolsW;
extern dylan_value Ddispatch_engine_module_idVenvironment_protocols;
extern dylan_value TdebuggingQTVKi;
extern dylan_value Tdebug_partsTVKi;
extern dylan_value Tdebug_out_functionTVKi;
extern dylan_value Dfalse_objectVenvironment_protocols;

/* Defined object declarations */

static _KLsymbolGVKd KJLobjectG_;
static _KLsymbolGVKd KJdylan_;
extern _KLsimple_methodGVKe Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0;
dylan_value Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value, dylan_value);
extern _KLkeyword_methodGVKe Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0;
dylan_value Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0;
dylan_value Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0;
dylan_value Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value, dylan_value);
extern _KLkeyword_methodGVKe Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5;
dylan_value Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5I (dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3;
dylan_value Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3I (dylan_value, dylan_value);
dylan_value Kinternal_dylan_methodQVdfmc_environment_databaseMM0I (dylan_value, dylan_value);
dylan_value Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0I (dylan_value, dylan_value);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_compiler_database_proxy_idF32;
static dylan_value Kanonymous_of_compiler_database_proxy_idF32I (dylan_value);
dylan_value Kdo_method_definition_specializersVdfmc_environment_databaseMM0I (dylan_value, dylan_value, dylan_value);
static _KLsymbolGVKd KJspecializers_;
static _KLpairGVKd K27;
static _KLunionGVKe K28;
static _KLsingletonGVKd K29;
static _KLbyte_stringGVKd_12 K30;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K31;
static _KLsignatureGVKe K33;
static _KLsimple_object_vectorGVKd_1 K34;
static _KLunionGVKe K35;
static _KLsignatureAvaluesGVKi K36;
static _KLsimple_object_vectorGVKd_2 K37;
static _KLsimple_object_vectorGVKd_1 K38;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_find_compiler_database_proxyF62;
static dylan_value Kanonymous_of_find_compiler_database_proxyF62I (dylan_value);
extern _KLsimple_methodGVKe Kfind_method_with_specializersVdfmc_environment_databaseMM0;
dylan_value Kfind_method_with_specializersVdfmc_environment_databaseMM0I (dylan_value, dylan_value, dylan_value);
static _KLunionGVKe K43;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_find_method_with_specializersF52;
static dylan_value Kanonymous_of_find_method_with_specializersF52I (dylan_value);
static _KLunionGVKe K46;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K47;
dylan_value Kdo_generic_definition_methodsVdfmc_environment_databaseMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_do_generic_definition_methodsF51;
static dylan_value Kanonymous_of_do_generic_definition_methodsF51I (dylan_value);
dylan_value Kmethod_definition_specializersVdfmc_environment_databaseMM0I (dylan_value, dylan_value);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_method_definition_specializersF56;
static dylan_value Kanonymous_of_method_definition_specializersF56I (dylan_value);
static _KLsignatureGVKe K57;
static _KLsimple_object_vectorGVKd_1 K58;
static _KLsignatureAvaluesGVKi K59;
static _KLsimple_object_vectorGVKd_3 K60;
static _KLsimple_object_vectorGVKd_1 K61;
static _KLsignatureGVKe K63;
static _KLsimple_object_vectorGVKd_1 K64;
static _KLkeyword_signatureAvaluesGVKi K65;
static _KLsimple_object_vectorGVKd_2 K66;
static _KLsymbolGVKd KJimportedQ_;
static _KLbyte_stringGVKd_9 K68;
static _KLsimple_object_vectorGVKd_2 K69;
static _KLsimple_object_vectorGVKd_1 K70;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K71;
extern _KLsimple_methodGVKe Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0;
static _KLunionGVKe K73;
static _KLsignatureAvaluesGVKi K74;
static _KLsimple_object_vectorGVKd_2 K75;
static _KLsimple_object_vectorGVKd_1 K76;
static _KLunionGVKe K77;
static _KLsignatureAvaluesGVKi K78;
static _KLsimple_object_vectorGVKd_2 K79;
static _KLsimple_object_vectorGVKd_1 K80;
static _KLsignatureAvaluesGVKi K81;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_do_generic_function_methodsF91;
static dylan_value Kanonymous_of_do_generic_function_methodsF91I (dylan_value);
extern _KLkeyword_methodGVKe Kdo_generic_definition_methodsVdfmc_environment_databaseMM0;
static _KLkeyword_signatureGVKe K85;
static _KLsimple_object_vectorGVKd_2 K86;
static _KLsymbolGVKd KJcontext_;
static _KLbyte_stringGVKd_7 K88;
static _KLsimple_object_vectorGVKd_3 K89;
static _KLsimple_object_vectorGVKd_1 K90;
static _KLsignatureGVKe K92;
static _KLkeyword_signatureGVKe K93;
static _KLsimple_object_vectorGVKd_2 K94;
static _KLsymbolGVKd KJclient_;
static _KLbyte_stringGVKd_6 K96;
static _KLsimple_object_vectorGVKd_3 K97;
static _KLsimple_object_vectorGVKd_1 K98;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_function_parametersF120;
static dylan_value Kanonymous_of_function_parametersF120I ();
static _KLsimple_closure_methodGVKi_0 Kmake_parameterF116;
static dylan_value Kmake_parameterF116I (dylan_value, dylan_value);
static _KLsimple_closure_methodGVKi_0 Kmake_optional_parameterF108;
static dylan_value Kmake_optional_parameterF108I (dylan_value, dylan_value, dylan_value);
static _KLsymbolGVKd KJdfmc_environment_database_;
static _KLunionGVKe K106;
static _KLbyte_stringGVKd_25 K107;
static _KLsymbolGVKd KJkeyword_;
static _KLsymbolGVKd KJdefault_value_;
static _KLbyte_stringGVKd_13 K111;
static _KLbyte_stringGVKd_7 K112;
static _KLsignatureAvaluesGVKi K113;
static _KLsimple_object_vectorGVKd_3 K114;
static _KLsimple_object_vectorGVKd_1 K115;
static _KLsignatureAvaluesGVKi K117;
static _KLsimple_object_vectorGVKd_2 K118;
static _KLsimple_object_vectorGVKd_1 K119;
static _KLbyte_stringGVKd_354 K121;
static _KLsignatureGVKe K122;
static _KLsignatureAvaluesGVKi K123;
static _KLsimple_object_vectorGVKd_2 K124;
static _KLsimple_object_vectorGVKd_7 K125;
static _KLbyte_stringGVKd_5 K126;
static _KLbyte_stringGVKd_8 K127;

/* Indirection variables */

static dylan_value IKJLobjectG_ = &KJLobjectG_;
static dylan_value IKJdylan_ = &KJdylan_;
static dylan_value IKJspecializers_ = &KJspecializers_;
static dylan_value IKJimportedQ_ = &KJimportedQ_;
static dylan_value IKJcontext_ = &KJcontext_;
static dylan_value IKJclient_ = &KJclient_;
static dylan_value IKJdfmc_environment_database_ = &KJdfmc_environment_database_;
static dylan_value IKJkeyword_ = &KJkeyword_;
static dylan_value IKJdefault_value_ = &KJdefault_value_;

/* Variables */

dylan_value DLobjectGVdfmc_environment_database = &KPunboundVKi;

/* Objects */

static _KLsymbolGVKd KJLobjectG_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K127
};

static _KLsymbolGVKd KJdylan_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K126
};

_KLsimple_methodGVKe Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K123,
  &Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0I
};

_KLkeyword_methodGVKe Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_5,
  &K93,
  &key_mep_5,
  &Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0I,
  &K94
};

_KLsimple_methodGVKe Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K81,
  &Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0I
};

_KLsimple_methodGVKe Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K78,
  &Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0I
};

_KLkeyword_methodGVKe Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K65,
  &key_mep_4,
  &Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5I,
  &K66
};

_KLsimple_methodGVKe Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K36,
  &Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3I
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_compiler_database_proxy_idF32 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K33,
  &Kanonymous_of_compiler_database_proxy_idF32I,
  (dylan_value) 1
};

static _KLsymbolGVKd KJspecializers_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K30
};

static _KLpairGVKd K27 = {
  &KLpairGVKdW /* wrapper */,
  &KmakeVKdMM48,
  &KPempty_listVKi
};

static _KLunionGVKe K28 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLidGVenvironment_protocols
};

static _KLsingletonGVKd K29 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KPfalseVKi
};

static _KLbyte_stringGVKd_12 K30 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 49,
  "specializers"
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K31 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (dylan_value) 65593,
  &KPfalseVKi,
  &cache_header_engine_2,
  &RSINGULAR_Labsent_engine_nodeG,
  &Ktype_expression_to_definitionVdfmc_environment_database
};

static _KLsignatureGVKe K33 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 44040197,
  &K34
};

static _KLsimple_object_vectorGVKd_1 K34 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &K35
};

static _KLunionGVKe K35 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLtop_level_formGVdfmc_common
};

static _KLsignatureAvaluesGVKi K36 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 37749769,
  &K37,
  &K38
};

static _KLsimple_object_vectorGVKd_2 K37 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLmethod_definitionGVdfmc_definitions
};

static _KLsimple_object_vectorGVKd_1 K38 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &K28
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_find_compiler_database_proxyF62 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K63,
  &Kanonymous_of_find_compiler_database_proxyF62I,
  (dylan_value) 1
};

_KLsimple_methodGVKe Kfind_method_with_specializersVdfmc_environment_databaseMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K59,
  &Kfind_method_with_specializersVdfmc_environment_databaseMM0I
};

static _KLunionGVKe K43 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLmethod_definitionGVdfmc_definitions
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_find_method_with_specializersF52 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K57,
  &Kanonymous_of_find_method_with_specializersF52I,
  (dylan_value) 1
};

static _KLunionGVKe K46 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLclass_definitionGVdfmc_definitions
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K47 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (dylan_value) 65593,
  &KPfalseVKi,
  &cache_header_engine_2,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kbrowsing_contextVdfmc_environment_database
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_do_generic_definition_methodsF51 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &Kanonymous_of_do_generic_definition_methodsF51I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_method_definition_specializersF56 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K33,
  &Kanonymous_of_method_definition_specializersF56I,
  (dylan_value) 1
};

static _KLsignatureGVKe K57 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 44040197,
  &K58
};

static _KLsimple_object_vectorGVKd_1 K58 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLmethod_definitionGVdfmc_definitions
};

static _KLsignatureAvaluesGVKi K59 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555469,
  &K60,
  &K61
};

static _KLsimple_object_vectorGVKd_3 K60 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLgeneric_definitionGVdfmc_definitions,
  &KLsequenceGVKd
};

static _KLsimple_object_vectorGVKd_1 K61 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &K43
};

static _KLsignatureGVKe K63 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 44040197,
  &K64
};

static _KLsimple_object_vectorGVKd_1 K64 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLdefinition_idGVenvironment_protocols
};

static _KLkeyword_signatureAvaluesGVKi K65 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33817609,
  &K69,
  &K70,
  &KDsignature_LobjectG_typesVKi,
  &K61
};

static _KLsimple_object_vectorGVKd_2 K66 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KJimportedQ_,
  &KPfalseVKi
};

static _KLsymbolGVKd KJimportedQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K68
};

static _KLbyte_stringGVKd_9 K68 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 37,
  "imported?"
};

static _KLsimple_object_vectorGVKd_2 K69 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLmethod_idGVenvironment_protocols
};

static _KLsimple_object_vectorGVKd_1 K70 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KJimportedQ_
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K71 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (dylan_value) 65593,
  &KPfalseVKi,
  &cache_header_engine_2,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kbrowsing_contextVdfmc_environment_database
};

_KLsimple_methodGVKe Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K74,
  &Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0I
};

static _KLunionGVKe K73 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLgeneric_function_objectGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K74 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555465,
  &K75,
  &K76
};

static _KLsimple_object_vectorGVKd_2 K75 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLobjectGVKd,
  &KLtop_level_formGVdfmc_common
};

static _KLsimple_object_vectorGVKd_1 K76 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &K77
};

static _KLunionGVKe K77 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLgeneric_definitionGVdfmc_definitions
};

static _KLsignatureAvaluesGVKi K78 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555465,
  &K79,
  &K80
};

static _KLsimple_object_vectorGVKd_2 K79 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLmethod_objectGVenvironment_protocols
};

static _KLsimple_object_vectorGVKd_1 K80 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &K73
};

static _KLsignatureAvaluesGVKi K81 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555465,
  &K79,
  &KDsignature_LsequenceG_typesVKi
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_do_generic_function_methodsF91 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K92,
  &Kanonymous_of_do_generic_function_methodsF91I,
  (dylan_value) 1
};

_KLkeyword_methodGVKe Kdo_generic_definition_methodsVdfmc_environment_databaseMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_5,
  &K85,
  &key_mep_5,
  &Kdo_generic_definition_methodsVdfmc_environment_databaseMM0I,
  &K86
};

static _KLkeyword_signatureGVKe K85 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (dylan_value) 42205197,
  &K89,
  &K90,
  &KDsignature_LobjectG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K86 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KJcontext_,
  &KPfalseVKi
};

static _KLsymbolGVKd KJcontext_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K88
};

static _KLbyte_stringGVKd_7 K88 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "context"
};

static _KLsimple_object_vectorGVKd_3 K89 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLfunctionGVKd,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLgeneric_definitionGVdfmc_definitions
};

static _KLsimple_object_vectorGVKd_1 K90 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KJcontext_
};

static _KLsignatureGVKe K92 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 41943045,
  &K58
};

static _KLkeyword_signatureGVKe K93 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (dylan_value) 42205197,
  &K97,
  &K98,
  &KDsignature_LobjectG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K94 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KJclient_,
  &KPfalseVKi
};

static _KLsymbolGVKd KJclient_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K96
};

static _KLbyte_stringGVKd_6 K96 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 25,
  "client"
};

static _KLsimple_object_vectorGVKd_3 K97 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLfunctionGVKd,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLgeneric_function_objectGVenvironment_protocols
};

static _KLsimple_object_vectorGVKd_1 K98 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KJclient_
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_function_parametersF120 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K122,
  &Kanonymous_of_function_parametersF120I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 Kmake_parameterF116 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K117,
  &Kmake_parameterF116I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 Kmake_optional_parameterF108 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_3,
  &K113,
  &Kmake_optional_parameterF108I,
  (dylan_value) 1
};

static _KLsymbolGVKd KJdfmc_environment_database_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K107
};

static _KLunionGVKe K106 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K29,
  &KLparameterGVenvironment_protocols
};

static _KLbyte_stringGVKd_25 K107 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 101,
  "dfmc-environment-database"
};

static _KLsymbolGVKd KJkeyword_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K112
};

static _KLsymbolGVKd KJdefault_value_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K111
};

static _KLbyte_stringGVKd_13 K111 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "default-value"
};

static _KLbyte_stringGVKd_7 K112 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "keyword"
};

static _KLsignatureAvaluesGVKi K113 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555469,
  &K114,
  &K115
};

static _KLsimple_object_vectorGVKd_3 K114 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLobjectGVKd,
  &KLtype_expressionGYdfmc_derived_informationVdfmc_browser_support,
  &KLsymbolGVKd
};

static _KLsimple_object_vectorGVKd_1 K115 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLoptional_parameterGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K117 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555465,
  &K118,
  &K119
};

static _KLsimple_object_vectorGVKd_2 K118 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLobjectGVKd,
  &KLtype_expressionGYdfmc_derived_informationVdfmc_browser_support
};

static _KLsimple_object_vectorGVKd_1 K119 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLparameterGVenvironment_protocols
};

static _KLbyte_stringGVKd_354 K121 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 1417,
  "req-vars:  %=\n           req-types: %=\n           rest-var:  %=\n           rest-type: %=\n           next-var:  %=\n           next-type: %=\n           key-vars:  %=\n           key-types: %=\n           keys:      %=\n           all-keys?: %=\n           value-vars:  %=\n           value-types: %=\n           rest-value-var:  %=\n           rest-value-type: %="
};

static _KLsignatureGVKe K122 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 44040193,
  &KPempty_vectorVKi
};

static _KLsignatureAvaluesGVKi K123 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33561609,
  &K124,
  &K125
};

static _KLsimple_object_vectorGVKd_2 K124 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLdfmc_databaseGVdfmc_environment_database,
  &KLdylan_function_objectGVenvironment_protocols
};

static _KLsimple_object_vectorGVKd_7 K125 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 29,
  &KLsequenceGVKd,
  &K106,
  &KLsequenceGVKd,
  &KLbooleanGVKd,
  &K106,
  &KLsequenceGVKd,
  &K106
};

static _KLbyte_stringGVKd_5 K126 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 21,
  "dylan"
};

static _KLbyte_stringGVKd_8 K127 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 33,
  "<object>"
};

/* Code */

dylan_value Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value server_, dylan_value function_) {
  dylan_value function_definition_;
  dylan_value T4_0;
  dylan_value T4_1;
  dylan_value T4_2;
  dylan_value T4_3;
  dylan_value T4_4;
  dylan_value T4_5;
  dylan_value req_vars_;
  dylan_value rest_var_;
  dylan_value next_var_;
  dylan_value key_vars_;
  dylan_value value_vars_;
  dylan_value rest_value_var_;
  dylan_value T11_0;
  dylan_value T11_1;
  dylan_value T11_2;
  dylan_value T11_3;
  dylan_value T11_4;
  dylan_value T11_5;
  dylan_value req_types_;
  dylan_value rest_type_;
  dylan_value next_type_;
  dylan_value key_types_;
  dylan_value value_types_;
  dylan_value rest_value_type_;
  dylan_value T18_0;
  dylan_value T18_1;
  dylan_value keys_;
  dylan_value all_keysQ_;
  dylan_value T21;
  dylan_value T22;
  dylan_value T23;
  dylan_value T24;
  dylan_value T25;
  dylan_value T26;
  dylan_value env_required_;
  dylan_value T28;
  dylan_value T29;
  dylan_value env_rest_;
  dylan_value T31;
  dylan_value T32;
  dylan_value T33;
  dylan_value env_keys_;
  dylan_value T35;
  dylan_value T36;
  dylan_value env_next_;
  dylan_value T38;
  dylan_value T39;
  dylan_value T40;
  dylan_value env_values_;
  dylan_value T42;
  dylan_value T43;
  dylan_value env_rest_value_;
  dylan_value T45;
  dylan_value T46;
  dylan_value T47;
  dylan_value T48_0;
  dylan_value T48_1;
  dylan_value T48_2;
  dylan_value T48_3;
  dylan_value T48_4;
  dylan_value T48_5;
  dylan_value T48_6;
  dylan_value T49;
  dylan_value T50;
  dylan_value T51;
  dylan_value T52;
  dylan_value T53;
  dylan_value T54;
  dylan_value T55;
  dylan_value T56_0;
  dylan_value T57;
  dylan_value T58;
  dylan_value T59;
  dylan_value T60_0;
  dylan_value T61;
  dylan_value T62_0;
  dylan_value T63;
  dylan_value T64_0;
  dylan_value T65;
  dylan_value T66_0;
  dylan_value T66_1;
  dylan_value T66_2;
  dylan_value T66_3;
  dylan_value T66_4;
  dylan_value T66_5;
  dylan_value T66_6;
  dylan_value T67_0;
  dylan_value T67_1;
  dylan_value T67_2;
  dylan_value T67_3;
  dylan_value T67_4;
  dylan_value T67_5;
  dylan_value T67_6;
  dylan_value T68_0;
  dylan_value T68_1;
  dylan_value T68_2;
  dylan_value T68_3;
  dylan_value T68_4;
  dylan_value T68_5;
  dylan_value T68_6;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:15
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:25
  T49 = SLOT_VALUE_INITD(function_, 2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:24
  primitive_type_check(T49, &K35);
  function_definition_ = T49;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:26
  if (function_definition_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:28
    T4_0 = CALL1(&Kfunctional_parametersYdfmc_derived_informationVdfmc_browser_support, function_definition_);
    T4_1 = MV_GET_ELT(1);
    T4_2 = MV_GET_ELT(2);
    T4_3 = MV_GET_ELT(3);
    T4_4 = MV_GET_ELT(4);
    T4_5 = MV_GET_ELT(5);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    req_vars_ = T4_0;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    rest_var_ = T4_1;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    next_var_ = T4_2;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    key_vars_ = T4_3;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    value_vars_ = T4_4;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:27
    rest_value_var_ = T4_5;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:30
    T11_0 = CALL1(&Kfunctional_parameter_typesYdfmc_derived_informationVdfmc_browser_support, function_definition_);
    T11_1 = MV_GET_ELT(1);
    T11_2 = MV_GET_ELT(2);
    T11_3 = MV_GET_ELT(3);
    T11_4 = MV_GET_ELT(4);
    T11_5 = MV_GET_ELT(5);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    req_types_ = T11_0;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    rest_type_ = T11_1;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    next_type_ = T11_2;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    key_types_ = T11_3;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    value_types_ = T11_4;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:29
    rest_value_type_ = T11_5;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:31
    T18_0 = CALL1(&Kfunctional_keysYdfmc_derived_informationVdfmc_browser_support, function_definition_);
    T18_1 = MV_GET_ELT(1);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:31
    keys_ = T18_0;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:31
    all_keysQ_ = T18_1;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    T50 = TdebuggingQTVKi;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    if (T50 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T51 = Tdebug_partsTVKi;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T52 = primitive_idQ(T51,&KPempty_listVKi);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T53 = primitive_not(T52);
      T54 = T53;
    } else {
      T54 = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    if (T54 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T55 = Tdebug_partsTVKi;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T56_0 = KmemberQVKdMM4I(IKJdfmc_environment_database_, T55, &KPempty_vectorVKi, &KEEVKd);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T57 = T56_0;
      T58 = T57;
    } else {
      T58 = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    if (T58 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T59 = Tdebug_out_functionTVKi;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      T21 = MAKE_CLOSURE_INITD(&Kanonymous_of_function_parametersF120, 14, all_keysQ_, keys_, rest_value_type_, value_types_, key_types_, next_type_, rest_type_, req_types_, rest_value_var_, value_vars_, key_vars_, next_var_, rest_var_, req_vars_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
      CALL1(T59, T21);
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
    T22 = MAKE_CLOSURE_INITD(&Kmake_parameterF116, 1, server_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:52
    T23 = MAKE_CLOSURE_INITD(&Kmake_optional_parameterF108, 1, server_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:71
    if (req_vars_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:74
      if (req_types_ != &KPfalseVKi) {
        T25 = req_types_;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:75
        CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
        T24 = CONGRUENT_CALL1(req_vars_);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:75
        T60_0 = KmakeVKdMM13I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, DLobjectGVdfmc_environment_database, T24);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:75
        T61 = T60_0;
        T25 = T61;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:74
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:72
      T26 = CALL3(&KmapVKd, T22, req_vars_, T25);
      env_required_ = T26;
    } else {
      env_required_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:71
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:77
    if (rest_var_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:78
      if (rest_type_ != &KPfalseVKi) {
        T28 = rest_type_;
      } else {
        T28 = DLobjectGVdfmc_environment_database;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:78
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:78
      T29 = CALL2(T22, rest_var_, T28);
      env_rest_ = T29;
    } else {
      env_rest_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:77
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:80
    if (key_vars_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:83
      if (key_types_ != &KPfalseVKi) {
        T32 = key_types_;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:84
        CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
        T31 = CONGRUENT_CALL1(key_vars_);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:84
        T62_0 = KmakeVKdMM13I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, DLobjectGVdfmc_environment_database, T31);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:84
        T63 = T62_0;
        T32 = T63;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:83
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:81
      T33 = CALL4(&KmapVKd, T23, key_vars_, T32, keys_);
      env_keys_ = T33;
    } else {
      env_keys_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:80
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:87
    if (next_var_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:88
      if (next_type_ != &KPfalseVKi) {
        T35 = next_type_;
      } else {
        T35 = DLobjectGVdfmc_environment_database;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:88
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:88
      T36 = CALL2(T22, next_var_, T35);
      env_next_ = T36;
    } else {
      env_next_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:87
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:90
    if (value_vars_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:93
      if (value_types_ != &KPfalseVKi) {
        T39 = value_types_;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:94
        CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
        T38 = CONGRUENT_CALL1(value_vars_);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:94
        T64_0 = KmakeVKdMM13I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, DLobjectGVdfmc_environment_database, T38);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:94
        T65 = T64_0;
        T39 = T65;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:93
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:91
      T40 = CALL3(&KmapVKd, T22, value_vars_, T39);
      env_values_ = T40;
    } else {
      env_values_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:90
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:96
    if (rest_value_var_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:97
      if (rest_value_type_ != &KPfalseVKi) {
        T42 = rest_value_type_;
      } else {
        T42 = DLobjectGVdfmc_environment_database;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:97
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:97
      T43 = CALL2(T22, rest_value_var_, T42);
      env_rest_value_ = T43;
    } else {
      env_rest_value_ = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:96
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    if (env_required_ != &KPfalseVKi) {
      T45 = env_required_;
    } else {
      T45 = &KPempty_listVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    if (env_keys_ != &KPfalseVKi) {
      T46 = env_keys_;
    } else {
      T46 = &KPempty_listVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:99
    if (env_values_ != &KPfalseVKi) {
      T47 = env_values_;
    } else {
      T47 = &KPempty_listVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:99
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    T66_0 = T45;
    T66_1 = env_rest_;
    T66_2 = T46;
    T66_3 = all_keysQ_;
    T66_4 = env_next_;
    T66_5 = T47;
    T66_6 = env_rest_value_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:98
    T68_0 = T66_0;
    T68_1 = T66_1;
    T68_2 = T66_2;
    T68_3 = T66_3;
    T68_4 = T66_4;
    T68_5 = T66_5;
    T68_6 = T66_6;
    {
      MV_CHECK_TYPE_PROLOGUE(T66_0);
      primitive_type_check(T68_0, &KLsequenceGVKd);
      primitive_type_check(T68_1, &K106);
      primitive_type_check(T68_2, &KLsequenceGVKd);
      primitive_type_check(T68_3, &KLbooleanGVKd);
      primitive_type_check(T68_4, &K106);
      primitive_type_check(T68_5, &KLsequenceGVKd);
      primitive_type_check(T68_6, &K106);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T48_0 = T68_0;
    T48_1 = T68_1;
    T48_2 = T68_2;
    T48_3 = T68_3;
    T48_4 = T68_4;
    T48_5 = T68_5;
    T48_6 = T68_6;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:101
    T67_0 = &KPempty_listVKi;
    T67_1 = &KPfalseVKi;
    T67_2 = &KPempty_listVKi;
    T67_3 = &KPfalseVKi;
    T67_4 = &KPfalseVKi;
    T67_5 = &KPempty_listVKi;
    T67_6 = &KPfalseVKi;
    T48_0 = T67_0;
    T48_1 = T67_1;
    T48_2 = T67_2;
    T48_3 = T67_3;
    T48_4 = T67_4;
    T48_5 = T67_5;
    T48_6 = T67_6;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:26
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:15
  MV_SET_ELT(1, T48_1);
  MV_SET_ELT(2, T48_2);
  MV_SET_ELT(3, T48_3);
  MV_SET_ELT(4, T48_4);
  MV_SET_ELT(5, T48_5);
  MV_SET_ELT(6, T48_6);
  MV_SET_COUNT(7);
  return(T48_0);
}

dylan_value Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value function_, dylan_value server_, dylan_value generic_function_, dylan_value Urest_, dylan_value client_) {
  dylan_value definition_;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;
  dylan_value T11;
  dylan_value T12;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:105
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:111
  T11 = SLOT_VALUE_INITD(generic_function_, 2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:110
  primitive_type_check(T11, &K77);
  definition_ = T11;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:112
  if (definition_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:113
    T12 = SLOT_VALUE_INITD(server_, 1);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:115
    T7 = MAKE_CLOSURE_INITD(&Kanonymous_of_do_generic_function_methodsF91, 2, T12, function_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:114
    T8 = CALL3(&Kdo_generic_definition_methodsVdfmc_environment_databaseMM0, T7, server_, definition_);
    T10 = T8;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:112
    T9 = &KPfalseVKi;
    T10 = T9;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:112
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:105
  MV_SET_COUNT(0);
  return(T10);
}

dylan_value Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value server_, dylan_value object_) {
  dylan_value req_types_;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10T, T10;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13;
  dylan_value T14;
  dylan_value req_vars_;
  dylan_value object_class_definition_;
  dylan_value T17;
  DWORD i_T, i_;
  dylan_value T19;
  dylan_value T20_0;
  dylan_value T21_0;
  dylan_value specializers_;
  dylan_value T23;
  DWORD T24;
  dylan_value T25;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:144
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:147
  T21_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:147
  specializers_ = T21_0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:148
  T23 = SLOT_VALUE_INITD(object_, 2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:151
  req_types_ = CALL1(&Kfunctional_parameter_typesYdfmc_derived_informationVdfmc_browser_support, T23);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:152
  if (req_types_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T4 = CALL1(&Kforward_iteration_protocolVKd, req_types_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T5 = T4;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T6 = MV_GET_ELT(1);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T7 = MV_GET_ELT(2);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T8 = MV_GET_ELT(3);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T9 = MV_GET_ELT(5);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
    T10T = T5;
  L0: ;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
      T10 = T10T;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
      T11 = CALL3(T8, req_types_, T10, T6);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
      if (T11 == &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
        T12 = CALL2(T9, req_types_, T10);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:154
        T13 = CALL2(&Kmake_environment_object_for_type_expressionVdfmc_environment_database, server_, T12);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:154
        KaddXVKdMM3I(specializers_, T13);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
        T14 = CALL2(T7, req_types_, T10);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
        T10T = T14;
        goto L0;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:153
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:158
    req_vars_ = CALL1(&Kfunctional_parametersYdfmc_derived_informationVdfmc_browser_support, T23);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:159
    object_class_definition_ = Kfind_LobjectGVdfmc_environment_databaseI(server_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
    CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
    T17 = CONGRUENT_CALL1(req_vars_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
    i_T = 1;
  L1: ;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
      i_ = i_T;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
      T25 = primitive_cast_raw_as_integer(i_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
      CONGRUENT_CALL_PROLOG(&KLVKd, 2);
      T19 = CONGRUENT_CALL2(T25, T17);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
      if (T19 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:161
        KaddXVKdMM3I(specializers_, object_class_definition_);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
        T24 = primitive_machine_word_add_signal_overflow(i_,4);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
        i_T = T24;
        goto L1;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:160
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:152
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:164
  T20_0 = specializers_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:144
  MV_SET_COUNT(1);
  return(T20_0);
}

dylan_value Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0I (dylan_value server_, dylan_value object_) {
  dylan_value definition_;
  dylan_value T4_0;
  dylan_value T5_0;
  dylan_value T6;
  dylan_value T7;
  dylan_value context_;
  dylan_value T9;
  dylan_value T10_0;
  dylan_value T11_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:199
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:202
  T7 = SLOT_VALUE_INITD(object_, 2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:203
  ENGINE_NODE_CALL_PROLOG(&Kbrowsing_contextVdfmc_environment_database, &K71, 2);
  context_ = ENGINE_NODE_CALL2(&K71, server_, T7);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:205
  definition_ = CALL2(&Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0, context_, T7);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:206
  if (definition_ != &KPfalseVKi) {
    T6 = definition_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:208
    T9 = SLOT_VALUE_INITD(server_, 1);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:207
    T10_0 = Kmake_environment_objectVenvironment_protocolsMM2I(&KLgeneric_function_objectGVenvironment_protocols, &KPempty_vectorVKi, T9, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi, T6);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:207
    T11_0 = T10_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T10_0);
      primitive_type_check(T11_0, &K73);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T5_0 = T11_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:206
    T4_0 = &KPfalseVKi;
    T5_0 = T4_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:206
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:199
  MV_SET_COUNT(1);
  return(T5_0);
}

dylan_value Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5I (dylan_value server_, dylan_value id_, dylan_value Urest_, dylan_value importedQ_) {
  volatile dylan_value returnPexit_12_;
  volatile dylan_value T6;
  volatile dylan_value T7;
  volatile dylan_value T8;
  volatile dylan_value T9_0;
  volatile dylan_value T10_0;
  volatile dylan_value T11_0;
  volatile dylan_value T12;
  volatile dylan_value T13;
  volatile dylan_value T14;
  volatile dylan_value T15;
  volatile dylan_value T16;
  volatile dylan_value T17;
  volatile dylan_value T18_0;
  volatile dylan_value T19;
  volatile dylan_value T20_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:264
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:268
  T13 = SLOT_VALUE_INITD(id_, 0);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:269
  T14 = SLOT_VALUE_INITD(id_, 1);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:271
  T15 = Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM4I(server_, T13, &KPempty_vectorVKi, importedQ_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:272
  T16 = primitive_instanceQ(T15,&KLgeneric_definitionGVdfmc_definitions);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:272
  if (T16 != &KPfalseVKi) {
    T12 = T15;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    ENTER_EXIT_FRAME(returnPexit_12_);
    if (nlx_setjmp(FRAME_DEST(returnPexit_12_))) {
        T9_0 = FRAME_RETVAL(returnPexit_12_);
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
      T7 = MAKE_CLOSURE_INITD(&Kanonymous_of_find_compiler_database_proxyF62, 2, returnPexit_12_, server_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
      T18_0 = Kobject_classVKdI(T14);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
      T19 = T18_0;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
      T17 = CALL3(&Kmap_as_oneVKi, T19, T7, T14);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:287
      T8 = CALL3(&Kfind_method_with_specializersVdfmc_environment_databaseMM0, server_, T12, T17);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    T9_0 = T8;
      /* invalidate returnPexit_12_ */
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    T20_0 = T9_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T9_0);
      primitive_type_check(T20_0, &K43);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T11_0 = T20_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:272
    T10_0 = &KPfalseVKi;
    T11_0 = T10_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:272
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:264
  MV_SET_COUNT(1);
  return(T11_0);
}

dylan_value Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3I (dylan_value server_, dylan_value definition_) {
  volatile dylan_value gf_;
  volatile dylan_value function_id_;
  volatile dylan_value returnPexit_13_;
  volatile dylan_value T6;
  volatile dylan_value T7;
  volatile dylan_value T8_0;
  volatile dylan_value T9;
  volatile dylan_value Utmp_;
  volatile dylan_value T11_0;
  volatile dylan_value T12_0;
  volatile dylan_value T13;
  volatile dylan_value T14;
  volatile dylan_value T15;
  volatile dylan_value context_;
  volatile dylan_value T17;
  volatile dylan_value T18_0;
  volatile dylan_value specializer_ids_;
  volatile dylan_value T20;
  volatile _KLsimple_object_vectorGVKd_4 T21 = {&KLsimple_object_vectorGVKdW, (dylan_value) 17};
  volatile dylan_value T22;
  volatile dylan_value T23;
  volatile dylan_value T24_0;
  volatile dylan_value T25_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:292
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:295
  context_ = Kbrowsing_contextVdfmc_environment_databaseMM0I(server_, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:296
  gf_ = Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0I(context_, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:297
  if (gf_ != &KPfalseVKi) {
    T13 = gf_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:297
    T17 = Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM2I(server_, T13);
    function_id_ = T17;
  } else {
    function_id_ = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:297
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
  if (function_id_ != &KPfalseVKi) {
    T14 = function_id_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    ENTER_EXIT_FRAME(returnPexit_13_);
    if (nlx_setjmp(FRAME_DEST(returnPexit_13_))) {
        T8_0 = FRAME_RETVAL(returnPexit_13_);
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:300
      T18_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:300
      specializer_ids_ = T18_0;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:302
      T7 = MAKE_CLOSURE_INITD(&Kanonymous_of_compiler_database_proxy_idF32, 3, specializer_ids_, returnPexit_13_, server_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:301
      Kdo_method_definition_specializersVdfmc_environment_databaseMM0I(T7, server_, definition_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:315
      T20 = KasVKdMM39I(&KLsimple_object_vectorGVKd, specializer_ids_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:313
      T21.vector_element_[0] = &KJgeneric_function_;
      T21.vector_element_[1] = T14;
      T21.vector_element_[2] = IKJspecializers_;
      T21.vector_element_[3] = T20;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:313
      MIEP_CALL_PROLOG(&K27);
      T22 = KmakeVKdMenvironment_protocolsM0I(&KLmethod_idGVenvironment_protocols, &T21);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    T8_0 = T22;
      /* invalidate returnPexit_13_ */
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    T9 = T8_0;
    Utmp_ = T9;
  } else {
    Utmp_ = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
  if (Utmp_ != &KPfalseVKi) {
    T15 = Utmp_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
    T11_0 = T15;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
    T25_0 = T11_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T11_0);
      primitive_type_check(T25_0, &K28);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T12_0 = T25_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:318
    T23 = Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM2I(server_, definition_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:318
    T24_0 = T23;
    T12_0 = T24_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:298
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:292
  MV_SET_COUNT(1);
  return(T12_0);
}

dylan_value Kinternal_dylan_methodQVdfmc_environment_databaseMM0I (dylan_value server_, dylan_value definition_) {
  dylan_value variable_;
  dylan_value home_variable_;
  dylan_value T5_0;
  dylan_value T5_1;
  dylan_value module_name_;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9_0;
  dylan_value gf_;
  dylan_value T11_0;
  dylan_value T11_1;
  dylan_value T12_0;
  dylan_value T13_0;
  dylan_value T14_0;
  dylan_value T15;
  dylan_value T16;
  dylan_value context_;
  dylan_value T18;
  dylan_value T19;
  dylan_value T20;
  dylan_value T21;
  dylan_value T22_0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:321
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:324
  context_ = Kbrowsing_contextVdfmc_environment_databaseMM0I(server_, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:325
  variable_ = Ksource_form_variableVdfmc_environment_databaseMM0I(definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:326
  if (variable_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:327
    CONGRUENT_CALL_PROLOG(&Kvariable_homeYdfmc_derived_informationVdfmc_browser_support, 2);
    home_variable_ = CONGRUENT_CALL2(context_, variable_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:328
    CONGRUENT_CALL_PROLOG(&Kvariable_nameYdfmc_derived_informationVdfmc_browser_support, 1);
    T5_0 = CONGRUENT_CALL1(home_variable_);
    T5_1 = MV_GET_ELT(1);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:328
    module_name_ = T5_1;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:329
    T7 = CALL1(&Kid_nameVenvironment_protocols, Ddispatch_engine_module_idVenvironment_protocols);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:329
    CONGRUENT_CALL_PROLOG(&KasVKd, 2);
    T8 = CONGRUENT_CALL2(&KLsymbolGVKd, T7);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:329
    T9_0 = KEEVKdI(module_name_, T8);
    T14_0 = T9_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:331
    gf_ = Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0I(context_, definition_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:332
    if (gf_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/utilities.dylan:26
      T15 = gf_;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:332
      T11_0 = Kdefinition_home_name_and_moduleVdfmc_environment_databaseI(server_, T15);
      T11_1 = MV_GET_ELT(1);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:332
      T18 = T11_1;
      T19 = T18;
    } else {
      T19 = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:332
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:333
    if (T19 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/utilities.dylan:26
      T16 = T19;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:334
      T20 = Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM1I(server_, T16);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:334
      T21 = primitive_idQ(T20,Ddispatch_engine_module_idVenvironment_protocols);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:334
      T22_0 = T21;
      T13_0 = T22_0;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:333
      T12_0 = &KPfalseVKi;
      T13_0 = T12_0;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:333
    T14_0 = T13_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:326
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:321
  MV_SET_COUNT(1);
  return(T14_0);
}

dylan_value Kmethod_definition_generic_definitionVdfmc_environment_databaseMM0I (dylan_value context_, dylan_value method_definition_) {
  dylan_value variable_;
  dylan_value T4;
  dylan_value generic_definition_;
  dylan_value T6_0;
  dylan_value T7_0;
  dylan_value T8_0;
  dylan_value T9;
  dylan_value T10;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:250
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:253
  variable_ = Ksource_form_variableVdfmc_environment_databaseMM0I(method_definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:255
  if (variable_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:255
    T4 = CALL2(&Kvariable_active_definitionYdfmc_derived_informationVdfmc_browser_support, context_, variable_);
    generic_definition_ = T4;
  } else {
    generic_definition_ = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:255
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:256
  T10 = primitive_instanceQ(generic_definition_,&KLgeneric_definitionGVdfmc_definitions);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:256
  if (T10 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:331
    T9 = generic_definition_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:257
    T6_0 = T9;
    T8_0 = T6_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:256
    T7_0 = &KPfalseVKi;
    T8_0 = T7_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:256
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:250
  MV_SET_COUNT(1);
  return(T8_0);
}

static dylan_value Kanonymous_of_compiler_database_proxy_idF32I (dylan_value definition_) {
  dylan_value definitionF1;
  dylan_value id_;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  _KLsimple_object_vectorGVKd_1 T8 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T9;
  dylan_value T10;
  dylan_value T11;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:302
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:302
  definitionF1 = definition_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:304
  T6 = primitive_instanceQ(definitionF1,&KLclass_definitionGVdfmc_definitions);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:304
  if (T6 != &KPfalseVKi) {
    T4 = definitionF1;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:305
    T7 = Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM2I(CREF(2), T4);
    id_ = T7;
  } else {
    id_ = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:304
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:306
  if (id_ != &KPfalseVKi) {
    T5 = id_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:307
    T11 = KaddXVKdMM3I(CREF(0), T5);
    T3 = T11;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:309
    T8.vector_element_[0] = &KPfalseVKi;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    T9 = MV_SET_REST_AT(&T8, 0);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:299
    T10 = NLX(CREF(1), T9);
    T3 = T10;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:306
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:302
  return(T3);
}

dylan_value Kdo_method_definition_specializersVdfmc_environment_databaseMM0I (dylan_value function_, dylan_value server_, dylan_value definition_) {
  dylan_value req_types_;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;
  dylan_value T11T, T11;
  dylan_value T12;
  dylan_value T13;
  dylan_value T14;
  dylan_value T15;
  dylan_value req_vars_;
  dylan_value object_class_definition_;
  dylan_value T18;
  DWORD i_T, i_;
  dylan_value T20;
  dylan_value T21;
  dylan_value T22;
  dylan_value definitionF23;
  DWORD T24;
  dylan_value T25;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:218
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:222
  req_types_ = CALL1(&Kfunctional_parameter_typesYdfmc_derived_informationVdfmc_browser_support, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:223
  if (req_types_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T5 = CALL1(&Kforward_iteration_protocolVKd, req_types_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T6 = T5;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T7 = MV_GET_ELT(1);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T8 = MV_GET_ELT(2);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T9 = MV_GET_ELT(3);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T10 = MV_GET_ELT(5);
;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T11T = T6;
  L0: ;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
      T11 = T11T;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
      T12 = CALL3(T9, req_types_, T11, T7);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
      if (T12 == &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
        T13 = CALL2(T10, req_types_, T11);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:225
        ENGINE_NODE_CALL_PROLOG(&Ktype_expression_to_definitionVdfmc_environment_database, &K31, 2);
        definitionF23 = ENGINE_NODE_CALL2(&K31, server_, T13);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:226
        CALL1(function_, definitionF23);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
        T14 = CALL2(T8, req_types_, T11);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
        T11T = T14;
        goto L0;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
      T15 = &KPfalseVKi;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:224
    T22 = T15;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:230
    req_vars_ = CALL1(&Kfunctional_parametersYdfmc_derived_informationVdfmc_browser_support, definition_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:231
    object_class_definition_ = Kfind_LobjectGVdfmc_environment_databaseI(server_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
    CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
    T18 = CONGRUENT_CALL1(req_vars_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
    i_T = 1;
  L1: ;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      i_ = i_T;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      T25 = primitive_cast_raw_as_integer(i_);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      CONGRUENT_CALL_PROLOG(&KLVKd, 2);
      T20 = CONGRUENT_CALL2(T25, T18);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      if (T20 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:233
        CALL1(function_, object_class_definition_);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
        T24 = primitive_machine_word_add_signal_overflow(i_,4);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
        i_T = T24;
        goto L1;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
      T21 = &KPfalseVKi;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:232
    T22 = T21;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:223
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:218
  MV_SET_COUNT(0);
  return(T22);
}

static dylan_value Kanonymous_of_find_compiler_database_proxyF62I (dylan_value id_) {
  dylan_value T2;
  dylan_value definition_;
  dylan_value T4;
  _KLsimple_object_vectorGVKd_1 T5 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T6;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:277
  definition_ = Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM4I(CREF(1), id_, &KPempty_vectorVKi, &KPtrueVKi);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:281
  T4 = primitive_instanceQ(definition_,&KLclass_definitionGVdfmc_definitions);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:281
  if (T4 == &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:282
    T5.vector_element_[0] = &KPfalseVKi;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    T6 = MV_SET_REST_AT(&T5, 0);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:273
    NLX(CREF(0), T6);
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:281
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:284
  T2 = definition_;
  MV_SET_ELT(0, definition_);
  MV_SET_COUNT(1);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:275
  return(T2);
}

dylan_value Kfind_method_with_specializersVdfmc_environment_databaseMM0I (dylan_value server_, dylan_value definition_, dylan_value specializers_) {
  volatile dylan_value T4;
  volatile dylan_value T5;
  volatile dylan_value T6;
  volatile dylan_value Utmp_;
  volatile dylan_value T8;
  volatile dylan_value context_;
  volatile dylan_value returnPexit_11_;
  volatile dylan_value T11;
  volatile dylan_value T12;
  volatile dylan_value T13;
  volatile dylan_value T14_0;
  volatile dylan_value T15_0;
  volatile dylan_value T16;
  volatile dylan_value gf_context_;
  volatile dylan_value class_context_;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:170
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:175
  CONGRUENT_CALL_PROLOG(&KemptyQVKd, 1);
  T4 = CONGRUENT_CALL1(specializers_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:175
  if (T4 != &KPfalseVKi) {
    T6 = &KPfalseVKi;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:175
    CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
    T5 = CONGRUENT_CALL3(specializers_, (dylan_value) 1, &KPempty_vectorVKi);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:175
    primitive_type_check(T5, &K46);
    T16 = T5;
    T6 = T16;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:175
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:176
  gf_context_ = Kbrowsing_contextVdfmc_environment_databaseMM0I(server_, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:178
  if (T6 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:179
    ENGINE_NODE_CALL_PROLOG(&Kbrowsing_contextVdfmc_environment_database, &K47, 2);
    class_context_ = ENGINE_NODE_CALL2(&K47, server_, T6);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:180
    Utmp_ = Kmore_specific_contextVdfmc_environment_databaseI(class_context_, gf_context_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:180
    if (Utmp_ != &KPfalseVKi) {
      T8 = Utmp_;
    } else {
      T8 = gf_context_;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:180
    context_ = T8;
  } else {
    context_ = gf_context_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:178
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:184
  ENTER_EXIT_FRAME(returnPexit_11_);
  if (nlx_setjmp(FRAME_DEST(returnPexit_11_))) {
    T14_0 = FRAME_RETVAL(returnPexit_11_);
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:186
    T12 = MAKE_CLOSURE_INITD(&Kanonymous_of_find_method_with_specializersF52, 3, returnPexit_11_, specializers_, server_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:185
    Kdo_generic_definition_methodsVdfmc_environment_databaseMM0I(T12, server_, definition_, &KPempty_vectorVKi, context_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:195
    T13 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:184
  T14_0 = T13;
    /* invalidate returnPexit_11_ */
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:184
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:170
  T15_0 = T14_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T14_0);
    primitive_type_check(T15_0, &K43);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:170
  MV_SET_COUNT(1);
  return(T15_0);
}

static dylan_value Kanonymous_of_find_method_with_specializersF52I (dylan_value method_definition_) {
  dylan_value method_specializers_;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  _KLsimple_object_vectorGVKd_1 T6 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T7;
  dylan_value T8;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:186
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:188
  method_specializers_ = Kmethod_definition_specializersVdfmc_environment_databaseMM0I(CREF(2), method_definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:189
  CONGRUENT_CALL_PROLOG(&KEVKd, 2);
  T3 = CONGRUENT_CALL2(method_specializers_, CREF(1));
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:189
  if (T3 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:190
    T6.vector_element_[0] = method_definition_;
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:184
    T7 = MV_SET_REST_AT(&T6, 0);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:184
    T8 = NLX(CREF(0), T7);
    T5 = T8;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:189
    T4 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T5 = T4;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:189
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:186
  return(T5);
}

dylan_value Kdo_generic_definition_methodsVdfmc_environment_databaseMM0I (dylan_value function_, dylan_value server_, dylan_value definition_, dylan_value Urest_, dylan_value context_) {
  dylan_value variable_;
  dylan_value contextF7;
  dylan_value T8;
  dylan_value method_definitions_;
  dylan_value T10;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13;
  DWORD T14T, T14;
  dylan_value T15;
  DWORD T16;
  dylan_value T17;
  dylan_value T18;
  DWORD T19;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:126
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:131
  variable_ = Ksource_form_variableVdfmc_environment_databaseMM0I(definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:132
  if (variable_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:133
    if (context_ != &KPfalseVKi) {
      contextF7 = context_;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:133
      T12 = Kbrowsing_contextVdfmc_environment_databaseMM0I(server_, definition_);
      contextF7 = T12;
    }
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:133
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:136
    T8 = MAKE_CLOSURE_INITD(&Kanonymous_of_do_generic_definition_methodsF51, 1, variable_);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:135
    method_definitions_ = Kcollect_from_all_client_contextsVdfmc_environment_databaseMM0I(T8, server_, contextF7, &KPempty_vectorVKi, &KPtrueVKi);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
    T15 = SLOT_VALUE_INITD(method_definitions_, 0);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
    T16 = primitive_cast_integer_as_raw(T15);
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
    T14T = 1;
  L0: ;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
      T14 = T14T;
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
      T17 = primitive_machine_word_equalQ(T14,T16);
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
      if (T17 == &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
        T18 = REPEATED_DYLAN_VALUE_SLOT_VALUE_TAGGED(method_definitions_, 1, T14);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
        CALL1(function_, T18);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
        T19 = primitive_machine_word_add_signal_overflow(T14,4);
        // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
        T14T = T19;
        goto L0;
      }
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
      // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:140
    T13 = &KPfalseVKi;
    T11 = T13;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:132
    T10 = &KPfalseVKi;
    T11 = T10;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:132
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:126
  MV_SET_COUNT(0);
  return(T11);
}

static dylan_value Kanonymous_of_do_generic_definition_methodsF51I (dylan_value context_) {
  dylan_value T1;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:136
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:137
  T1 = CALL2(&Kvariable_active_method_definitionsYdfmc_derived_informationVdfmc_browser_support, context_, CREF(0));
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:136
  return(T1);
}

dylan_value Kmethod_definition_specializersVdfmc_environment_databaseMM0I (dylan_value server_, dylan_value definition_) {
  dylan_value T3;
  dylan_value T4_0;
  dylan_value T5_0;
  dylan_value specializers_;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:238
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:241
  T5_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:241
  specializers_ = T5_0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:243
  T3 = MAKE_CLOSURE_INITD(&Kanonymous_of_method_definition_specializersF56, 1, specializers_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:242
  Kdo_method_definition_specializersVdfmc_environment_databaseMM0I(T3, server_, definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:247
  T4_0 = specializers_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:238
  MV_SET_COUNT(1);
  return(T4_0);
}

static dylan_value Kanonymous_of_method_definition_specializersF56I (dylan_value type_) {
  dylan_value typeF1;
  dylan_value T2;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:243
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:243
  typeF1 = type_;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:244
  T2 = KaddXVKdMM3I(CREF(0), typeF1);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:243
  return(T2);
}

static dylan_value Kanonymous_of_do_generic_function_methodsF91I (dylan_value method_definition_) {
  dylan_value environment_method_;
  dylan_value T3;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:115
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:117
  environment_method_ = Kmake_environment_objectVenvironment_protocolsMM2I(&KLmethod_objectGVenvironment_protocols, &KPempty_vectorVKi, CREF(0), &KPfalseVKi, &KPfalseVKi, &KPfalseVKi, method_definition_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:120
  CALL1(CREF(1), environment_method_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:115
  T3 = &KPfalseVKi;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:115
  MV_SET_COUNT(0);
  return(T3);
}

static dylan_value Kanonymous_of_function_parametersF120I () {
  _KLsimple_object_vectorGVKd_15 T0 = {&KLsimple_object_vectorGVKdW, (dylan_value) 61};
  dylan_value T1;
  dylan_value T2_0;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  T0.vector_element_[0] = &K121;
  T0.vector_element_[1] = CREF(13);
  T0.vector_element_[2] = CREF(7);
  T0.vector_element_[3] = CREF(12);
  T0.vector_element_[4] = CREF(6);
  T0.vector_element_[5] = CREF(11);
  T0.vector_element_[6] = CREF(5);
  T0.vector_element_[7] = CREF(10);
  T0.vector_element_[8] = CREF(4);
  T0.vector_element_[9] = CREF(1);
  T0.vector_element_[10] = CREF(0);
  T0.vector_element_[11] = CREF(9);
  T0.vector_element_[12] = CREF(3);
  T0.vector_element_[13] = CREF(8);
  T0.vector_element_[14] = CREF(2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  T1 = primitive_copy_vector(&T0);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  T2_0 = T1;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  MV_SET_COUNT(1);
  return(T2_0);
}

static dylan_value Kmake_parameterF116I (dylan_value var_, dylan_value type_) {
  dylan_value T2;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6_0;
  dylan_value T7_0;
  _KLsimple_object_vectorGVKd_4 T8 = {&KLsimple_object_vectorGVKdW, (dylan_value) 17};
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:47
  CONGRUENT_CALL_PROLOG(&Kvariable_nameYdfmc_derived_informationVdfmc_browser_support, 1);
  T2 = CONGRUENT_CALL1(var_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:47
  CALL1(&Kname_to_stringVdfmc_environment_database, T2);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:49
  CONGRUENT_CALL_PROLOG(&Kvariable_nameYdfmc_derived_informationVdfmc_browser_support, 1);
  T3 = CONGRUENT_CALL1(var_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:49
  T4 = CALL1(&Kname_to_stringVdfmc_environment_database, T3);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:50
  T5 = Kmake_environment_object_for_type_expressionVdfmc_environment_databaseI(CREF(0), type_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:48
  T8.vector_element_[0] = &KJname_;
  T8.vector_element_[1] = T4;
  T8.vector_element_[2] = &KJtype_;
  T8.vector_element_[3] = T5;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:48
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T6_0 = CONGRUENT_CALL2(&KLparameterGVenvironment_protocols, &T8);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  T7_0 = T6_0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:32
  MV_SET_COUNT(1);
  return(T7_0);
}

static dylan_value Kmake_optional_parameterF108I (dylan_value var_, dylan_value type_, dylan_value key_) {
  dylan_value name_;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9_0;
  dylan_value T10_0;
  dylan_value T11;
  _KLsimple_object_vectorGVKd_8 T12 = {&KLsimple_object_vectorGVKdW, (dylan_value) 33};
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:52
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:57
  CONGRUENT_CALL_PROLOG(&Kvariable_nameYdfmc_derived_informationVdfmc_browser_support, 1);
  name_ = CONGRUENT_CALL1(var_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:59
  T5 = CALL1(&Kname_to_stringVdfmc_environment_database, name_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:60
  T6 = Kmake_environment_object_for_type_expressionVdfmc_environment_databaseI(CREF(0), type_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:61
  T11 = primitive_idQ(key_,name_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:61
  if (T11 != &KPfalseVKi) {
    T8 = &KPfalseVKi;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:62
    T7 = Kname_to_stringVdfmc_environment_databaseI(key_);
    T8 = T7;
  }
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:61
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:58
  T12.vector_element_[0] = &KJname_;
  T12.vector_element_[1] = T5;
  T12.vector_element_[2] = &KJtype_;
  T12.vector_element_[3] = T6;
  T12.vector_element_[4] = IKJkeyword_;
  T12.vector_element_[5] = T8;
  T12.vector_element_[6] = IKJdefault_value_;
  T12.vector_element_[7] = Dfalse_objectVenvironment_protocols;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:58
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T9_0 = CONGRUENT_CALL2(&KLoptional_parameterGVenvironment_protocols, &T12);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:52
  T10_0 = T9_0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:52
  MV_SET_COUNT(1);
  return(T10_0);
}


/* SYSTEM INIT CODE */

void _Init_dfmc_environment_database__X_function_objects_for_system () {
  extern dylan_value KPresolve_symbolVKiI(dylan_value);
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJLobjectG_);
    if (T0 != &KJLobjectG_) {
      IKJLobjectG_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJdylan_);
    if (T0 != &KJdylan_) {
      IKJdylan_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJspecializers_);
    if (T0 != &KJspecializers_) {
      IKJspecializers_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJimportedQ_);
    if (T0 != &KJimportedQ_) {
      primitive_repeated_slot_value_setter(T0, &K70, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K66, 1, 0);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJcontext_);
    if (T0 != &KJcontext_) {
      primitive_repeated_slot_value_setter(T0, &K90, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K86, 1, 0);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJclient_);
    if (T0 != &KJclient_) {
      primitive_repeated_slot_value_setter(T0, &K98, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K94, 1, 0);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJdfmc_environment_database_);
    if (T0 != &KJdfmc_environment_database_) {
      IKJdfmc_environment_database_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJkeyword_);
    if (T0 != &KJkeyword_) {
      IKJkeyword_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJdefault_value_);
    if (T0 != &KJdefault_value_) {
      IKJdefault_value_ = T0;
    }
  }
  return;
}

/* USER INIT CODE */

void _Init_dfmc_environment_database__X_function_objects_for_user () {
{
  dylan_value T0;
  dylan_value T1;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:13
  T0 = Kmake_variableYdfmc_derived_informationVdfmc_browser_supportI(IKJLobjectG_, IKJdylan_);
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:13
  DLobjectGVdfmc_environment_database = T0;
  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:13
  T1 = &KPfalseVKi;
  goto I0;
}
I0:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:15
  T0 = KPadd_a_methodVKnI(&Kfunction_parametersVenvironment_protocols, &Kfunction_parametersVenvironment_protocolsMdfmc_environment_databaseM0, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I5;
}
I5:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:105
  T0 = KPadd_a_methodVKnI(&Kdo_generic_function_methodsVenvironment_protocols, &Kdo_generic_function_methodsVenvironment_protocolsMdfmc_environment_databaseM0, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I8;
}
I8:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:144
  T0 = KPadd_a_methodVKnI(&Kmethod_specializersVenvironment_protocols, &Kmethod_specializersVenvironment_protocolsMdfmc_environment_databaseM0, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I11;
}
I11:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:199
  T0 = KPadd_a_methodVKnI(&Kmethod_generic_functionVenvironment_protocols, &Kmethod_generic_functionVenvironment_protocolsMdfmc_environment_databaseM0, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I14;
}
I14:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:264
  T0 = KPadd_a_methodVKnI(&Kfind_compiler_database_proxyVenvironment_protocols, &Kfind_compiler_database_proxyVenvironment_protocolsMdfmc_environment_databaseM5, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I17;
}
I17:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/environment/dfmc/database/function-objects.dylan:292
  T0 = KPadd_a_methodVKnI(&Kcompiler_database_proxy_idVenvironment_protocols, &Kcompiler_database_proxy_idVenvironment_protocolsMdfmc_environment_databaseM3, &Kdfmc_environment_database_libraryYdylan_userVdfmc_environment_database, &KPfalseVKi, &KPfalseVKi, &KPtrueVKi);
  goto I20;
}
I20:

  return;
}


/* eof */
