#include "run-time.h"

/* Typedefs for referenced classes */

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

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

typedef struct {
  D wrapper;
} _KLobjectGVKd;

typedef struct {
  D wrapper;
} _KLunboundGVKe;

typedef struct {
  D wrapper;
} _KLbooleanGVKd;

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

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

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

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

typedef struct {
  D wrapper;
  D namespace_name_;
  D home_library_;
} _KLmoduleGVKe;

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    D wrapper; \
    D size_; \
    D vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(4);
define__KLsimple_object_vectorGVKd(5);
define__KLsimple_object_vectorGVKd(9);
define__KLsimple_object_vectorGVKd(3);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(16);
define__KLsimple_object_vectorGVKd(0);

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    D wrapper; \
    D size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(3);
define__KLbyte_stringGVKd(24);
define__KLbyte_stringGVKd(19);
define__KLbyte_stringGVKd(22);
define__KLbyte_stringGVKd(13);
define__KLbyte_stringGVKd(9);
define__KLbyte_stringGVKd(30);
define__KLbyte_stringGVKd(49);
define__KLbyte_stringGVKd(21);
define__KLbyte_stringGVKd(32);
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(8);
define__KLbyte_stringGVKd(12);
define__KLbyte_stringGVKd(10);
define__KLbyte_stringGVKd(7);
define__KLbyte_stringGVKd(4);
define__KLbyte_stringGVKd(27);
define__KLbyte_stringGVKd(11);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(15);
define__KLbyte_stringGVKd(6);
define__KLbyte_stringGVKd(2);
define__KLbyte_stringGVKd(1);
define__KLbyte_stringGVKd(14);
define__KLbyte_stringGVKd(33);
define__KLbyte_stringGVKd(0);

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

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

typedef struct {
  D wrapper;
} _KLserverGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
} _KLenvironment_objectGVenvironment_protocols;

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

typedef struct {
  D wrapper;
} _KLstringGVKd;

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

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

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

typedef struct {
  D wrapper;
} _KLlocatorGYlocators_protocolVcommon_dylan;

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

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

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D project_proxy_;
  D project_application_;
  D project_compiler_database_;
  D project_next_numeric_id_;
  D project_object_table_;
  D project_query_database_;
  D project_server_path_;
  D environment_object_breakpoints_;
  D source_location_breakpoints_;
  D project_properties_;
  D project_profile_state_;
} _KLproject_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
} _KLsource_locationGVsource_records;

typedef struct {
  D wrapper;
  D interactive_source_record_id_;
  D source_record_project_;
  D source_record_module_name_;
  D source_record_language_;
  D source_record_contents_;
} _KLinteractive_source_recordGVsource_records;

typedef struct {
  D wrapper;
} _KLfile_source_recordGVfile_source_records;

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

typedef struct {
  D wrapper;
  D outer_stream_;
  D private_stream_element_type_value_;
  D private_stream_direction_value_;
  D private_stream_lock_value_;
  D initial_position_;
  D current_position_;
  D final_position_;
  D stream_sequence_;
  D stream_limit_;
} _KLstring_streamGYstreamsVio;

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

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

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

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D application_object_proxy_;
} _KLfunction_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLnamespace_objectGVenvironment_protocols;

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

typedef struct {
  D wrapper;
} _KLstreamGYcommon_extensionsVcommon_dylan;

typedef struct {
  D wrapper;
} _KLintegerGVKd;

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

typedef struct {
  D wrapper;
  D signature_properties_;
  D signature_required_;
  D signature_values_;
  D signature_rest_value_;
} _KLsignatureAvaluesArest_valueGVKi;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D application_object_proxy_;
} _KLcollection_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D application_object_proxy_;
} _KLcomposite_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLslot_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLclass_objectGVenvironment_protocols;

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

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

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLmacro_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLconstant_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLvariable_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLdomain_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLdefinition_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLmodule_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLlibrary_objectGVenvironment_protocols;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D application_object_proxy_;
} _KLuser_objectGVenvironment_protocols;

#define  define__KLkeyword_closure_methodGVKe(nrepeated) \
  typedef struct { \
    D wrapper; \
    D xep_; \
    D function_signature_; \
    D mep_; \
    D iep_; \
    D keyword_specifiers_; \
    D environment_size_; \
    D environment_element_[nrepeated+1]; \
  } _KLkeyword_closure_methodGVKe_##nrepeated;
define__KLkeyword_closure_methodGVKe(0);

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

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D Pid_;
  D compiler_object_proxy_;
  D application_object_proxy_;
} _KLmodule_variable_objectGVenvironment_protocols;

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

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

typedef struct {
  D wrapper;
} _KLsequenceGVKd;

typedef struct {
  D wrapper;
  D Pprimitive_name_;
  D compiler_object_proxy_;
} _KLbinding_name_objectGVenvironment_protocols;


/* Typedefs for defined classes */


/* Referenced object declarations */

extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLmoduleGVKe Kenvironment_protocols_moduleYdylan_userVenvironment_protocols;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LbooleanG_typesVKi;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LstringG_typesVKi;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
extern _KLclassGVKd KLserverGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLserverGVenvironment_protocolsW;
extern _KLclassGVKd KLenvironment_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLenvironment_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
extern _KLincremental_generic_functionGVKe Kproject_filenameVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kproject_debug_filenameVenvironment_protocols;
extern _KLclassGVKd KLstringGVKd;
extern _KLmm_wrapperGVKi_0 KLstringGVKdW;
extern _KLincremental_generic_functionGVKe Klocator_as_stringYlocatorsVsystem;
extern _KLincremental_generic_functionGVKe KasVKd;
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
D Kunion_instanceQVKiI (D, D);
extern _KLclassGVKd KLlocatorGYlocators_protocolVcommon_dylan;
extern _KLmm_wrapperGVKi_0 KLlocatorGYlocators_protocolVcommon_dylanW;
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
D Ksingleton_pointer_idQ_instanceQVKiI (D, D);
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLclassGVKd KLproject_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLproject_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kenvironment_object_source_locationVenvironment_protocols;
extern _KLclassGVKd KLsource_locationGVsource_records;
extern _KLmm_wrapperGVKi_0 KLsource_locationGVsource_recordsW;
extern _KLincremental_generic_functionGVKe Ksource_location_source_recordVsource_records;
extern _KLclassGVKd KLinteractive_source_recordGVsource_records;
extern _KLmm_wrapperGVKi_0 KLinteractive_source_recordGVsource_recordsW;
extern _KLclassGVKd KLfile_source_recordGVfile_source_records;
extern _KLmm_wrapperGVKi_0 KLfile_source_recordGVfile_source_recordsW;
extern _KLincremental_generic_functionGVKe Ksource_record_locationVsource_records;
extern _KLsealed_generic_functionGVKe Kfile_existsQYfile_systemVsystem;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLsealed_generic_functionGVKe Klocator_nameYlocatorsVsystem;
extern _KLincremental_generic_functionGVKe Ksource_record_nameVsource_records;
extern _KLsymbolGVKd KJdirection_;
extern _KLsymbolGVKd KJoutput_;
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLclassGVKd KLstring_streamGYstreamsVio;
extern _KLmm_wrapperGVKi_0 KLstring_streamGYstreamsVioW;
extern _KLincremental_generic_functionGVKe Kfind_environment_objectVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kfunction_parametersVenvironment_protocols;
D KformatYformatVioMM0I (D, D, D);
extern _KLincremental_generic_functionGVKe Kforward_iteration_protocolVKd;
extern _KLincremental_generic_functionGVKe KsizeVKd;
extern _KLincremental_generic_functionGVKe K_VKd;
extern _KLincremental_generic_functionGVKe KLVKd;
extern _KLincremental_generic_functionGVKe KAVKd;
extern _KLclassGVKd KLparameterGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLparameterGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kstream_contentsYstreams_protocolVcommon_dylan;
extern _KLincremental_generic_functionGVKe Kenvironment_object_display_nameVenvironment_protocols;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLclassGVKd KLfunction_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLfunction_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLnamespace_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLnamespace_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLoptional_parameterGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLoptional_parameterGVenvironment_protocolsW;
extern _KLbyte_stringGVKd_0 KPempty_stringVKi;
extern _KLincremental_generic_functionGVKe KemptyQVKd;
extern _KLclassGVKd KLstreamGYcommon_extensionsVcommon_dylan;
extern _KLmm_wrapperGVKi_0 KLstreamGYcommon_extensionsVcommon_dylanW;
extern _KLclassGVKd KLintegerGVKd;
extern _KLmm_wrapperGVKi_0 KLintegerGVKdW;
D Kstring_pluralizeYcl_stringsVclMM0I (D, D, D);
extern _KLsealed_generic_functionGVKe KformatYformatVio;
extern _KLclassGVKd KLsimple_typechecked_cache_header_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLsimple_typechecked_cache_header_engine_nodeGVKgW;
extern _KLsymbolGVKd KJname_;
extern _KLsymbolGVKd KJclass_;
extern _KLsymbolGVKd KJconstant_;
extern _KLsymbolGVKd KJgeneric_function_;
D KerrorVKdMM1I (D, D);
extern _KLclassGVKd KLsignatureAvaluesArest_valueGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesArest_valueGVKiW;
extern _KLincremental_generic_functionGVKe Kcollection_sizeVenvironment_protocols;
extern _KLclassGVKd KLcollection_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLcollection_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kcomposite_object_sizeVenvironment_protocols;
extern _KLclassGVKd KLcomposite_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLcomposite_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kdo_direct_slotsVenvironment_protocols;
extern _KLclassGVKd KLslot_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLslot_objectGVenvironment_protocolsW;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LintegerG_typesVKi;
extern _KLclassGVKd KLclass_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLclass_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kdo_generic_function_methodsVenvironment_protocols;
extern _KLclassGVKd KLmethod_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmethod_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLgeneric_function_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLgeneric_function_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kdo_module_definitionsVenvironment_protocols;
extern _KLclassGVKd KLmacro_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmacro_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLconstant_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLconstant_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLvariable_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLvariable_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLdomain_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLdomain_objectGVenvironment_protocolsW;
D KmemberQVKdMM3I (D, D, D, D);
extern _KLsimple_methodGVKe KEEVKd;
extern _KLclassGVKd KLdefinition_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLdefinition_objectGVenvironment_protocolsW;
extern _KLclassGVKd KLmodule_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmodule_objectGVenvironment_protocolsW;
D Kdo_library_modulesVenvironment_protocolsI (D, D, D, D, D, D);
extern _KLclassGVKd KLlibrary_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLlibrary_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kproject_libraryVenvironment_protocols;
extern _KLclassGVKd KLuser_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLuser_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe KwriteYstreams_protocolVcommon_dylan;
extern _KLfunction_classGVKi KLkeyword_closure_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_closure_methodGVKeW;
extern _KLclassGVKd KLkeyword_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureGVKeW;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
extern _KLincremental_generic_functionGVKe Kvariable_typeVenvironment_protocols;
D Kconcatenate_asVKdMM3I (D, D, D);
extern _KLincremental_generic_functionGVKe Ktype_for_copyVKd;
extern _KLsealed_generic_functionGVKe Kconcatenate_asVKd;
extern _KLsimple_methodGVKe Kconcatenate_asVKdMM0;
extern _KLsimple_methodGVKe Kconcatenate_asVKdMM1;
extern _KLclassGVKd KLmodule_variable_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLmodule_variable_objectGVenvironment_protocolsW;
extern _KLsealed_generic_functionGVKe KconcatenateVKd;
extern _KLclassGVKd KLdylan_function_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLdylan_function_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kdomain_specializersVenvironment_protocols;
extern _KLincremental_generic_functionGVKe KelementVKd;
extern _KLincremental_generic_functionGVKe Kreduce1VKd;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_2VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
D Kclass_direct_superclassesVenvironment_protocolsI (D, D);
extern _KLsealed_generic_functionGVKe Kmap_as_oneVKi;
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLincremental_generic_functionGVKe Kenvironment_object_unique_nameVenvironment_protocols;
D Kformat_to_stringYformatVioMM0I (D, D);
extern _KLincremental_generic_functionGVKe Kapplication_object_classVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kenvironment_object_home_nameVenvironment_protocols;
extern _KLclassGVKd KLbinding_name_objectGVenvironment_protocols;
extern _KLmm_wrapperGVKi_0 KLbinding_name_objectGVenvironment_protocolsW;
extern _KLincremental_generic_functionGVKe Kenvironment_object_primitive_nameVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kname_namespaceVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kenvironment_object_libraryVenvironment_protocols;
extern _KLincremental_generic_functionGVKe Kenvironment_object_type_nameVenvironment_protocols;
extern D DLobjectG_idVenvironment_protocols;
extern D TdebuggingQTVKi;
extern D Tdebug_partsTVKi;
extern D Tdebug_out_functionTVKi;
extern D Dlist_separatorVenvironment_protocols;
extern D DunknownVenvironment_protocols;

/* Defined object declarations */

extern _KLincremental_generic_functionGVKe Kprint_environment_object_locationVenvironment_protocols;
extern _KLkeyword_methodGVKe Kprint_environment_object_locationVenvironment_protocolsMM0;
D Kprint_environment_object_locationVenvironment_protocolsMM0I (D, D, D, D);
extern _KLkeyword_methodGVKe Kprint_environment_object_locationVenvironment_protocolsMM1;
D Kprint_environment_object_locationVenvironment_protocolsMM1I (D, D, D, D);
static _KLpairGVKd K5;
static _KLpairGVKd K6;
static _KLkeyword_signatureAvaluesGVKi K7;
static _KLbyte_stringGVKd_33 K8;
static _KLsimple_object_vectorGVKd_2 K9;
static _KLsimple_object_vectorGVKd_1 K10;
static _KLsymbolGVKd KJabsolute_pathQ_;
static _KLbyte_stringGVKd_14 K12;
static _KLsimple_closure_methodGVKi_0 KprintitF15;
static D KprintitF15I (D, D);
static _KLsignatureGVKe K16;
static _KLsimple_object_vectorGVKd_2 K17;
static _KLunionGVKe K18;
static _KLsingletonGVKd K19;
static _KLkeyword_signatureAvaluesGVKi K20;
static _KLsimple_object_vectorGVKd_2 K21;
static _KLsimple_object_vectorGVKd_2 K22;
static _KLkeyword_signatureAvaluesGVKi K23;
static _KLsimple_object_vectorGVKd_2 K24;
extern _KLsimple_methodGVKe Kprint_function_valuesVenvironment_protocols;
D Kprint_function_valuesVenvironment_protocolsI (D, D, D);
static _KLbyte_stringGVKd_1 K27;
static _KLsimple_closure_methodGVKi_0 Kdo_valueF35;
static D Kdo_valueF35I (D, D, D, D, D);
static _KLbyte_stringGVKd_2 K30;
static _KLbyte_stringGVKd_6 K31;
static _KLbyte_stringGVKd_1 K32;
static _KLsymbolGVKd KJclear_contentsQ_;
static _KLbyte_stringGVKd_15 K34;
static _KLbyte_stringGVKd_2 K36;
static _KLbyte_stringGVKd_6 K37;
static _KLsignatureGVKe K38;
static _KLsimple_object_vectorGVKd_5 K39;
static _KLsignatureAvaluesGVKi K40;
static _KLsimple_object_vectorGVKd_3 K41;
static _KLunionGVKe K42;
extern _KLsimple_methodGVKe Kprint_function_parametersVenvironment_protocols;
D Kprint_function_parametersVenvironment_protocolsI (D, D, D);
static _KLsimple_closure_methodGVKi_0 Kprint_separatorF55;
static D Kprint_separatorF55I (D);
static D Kdo_parametersF54I (D, D, D, D, D);
static _KLbyte_stringGVKd_6 K48;
static D Kdo_parameterF53I (D, D, D, D, D);
static _KLbyte_stringGVKd_5 K50;
static _KLbyte_stringGVKd_11 K51;
static _KLbyte_stringGVKd_15 K52;
static _KLsignatureGVKe K56;
static _KLsimple_object_vectorGVKd_1 K57;
extern _KLsealed_generic_functionGVKe Kenvironment_object_contentsVenvironment_protocols;
extern _KLsimple_methodGVKe Kenvironment_object_contentsVenvironment_protocolsMM0;
D Kenvironment_object_contentsVenvironment_protocolsMM0I (D, D);
static _KLpairGVKd K61;
static _KLsignatureAvaluesGVKi K62;
static _KLbyte_stringGVKd_27 K63;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K64;
extern _KLsealed_generic_functionGVKe Kprint_environment_object_contentsVenvironment_protocols;
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM0;
D Kprint_environment_object_contentsVenvironment_protocolsMM0I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM1;
D Kprint_environment_object_contentsVenvironment_protocolsMM1I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM2;
D Kprint_environment_object_contentsVenvironment_protocolsMM2I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM3;
D Kprint_environment_object_contentsVenvironment_protocolsMM3I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM4;
D Kprint_environment_object_contentsVenvironment_protocolsMM4I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM5;
D Kprint_environment_object_contentsVenvironment_protocolsMM5I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM6;
D Kprint_environment_object_contentsVenvironment_protocolsMM6I (D, D, D);
extern _KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM7;
D Kprint_environment_object_contentsVenvironment_protocolsMM7I (D, D, D);
static _KLpairGVKd K82;
static _KLpairGVKd K83;
static _KLpairGVKd K84;
static _KLpairGVKd K85;
static _KLpairGVKd K86;
static _KLpairGVKd K87;
static _KLpairGVKd K88;
static _KLpairGVKd K89;
static _KLsignatureGVKe K90;
static _KLbyte_stringGVKd_33 K91;
static _KLsimple_object_vectorGVKd_3 K92;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K93;
extern _KLsealed_generic_functionGVKe Kenvironment_object_content_countsVenvironment_protocols;
D Kprint_content_countVenvironment_protocolsI (D, D, D);
static _KLsymbolGVKd KJslot_;
static _KLbyte_stringGVKd_4 K97;
D Kcontent_type_nameVenvironment_protocolsI (D);
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K99;
static _KLbyte_stringGVKd_5 K100;
static _KLsymbolGVKd KJlibrary_;
static _KLbyte_stringGVKd_7 K102;
static _KLsymbolGVKd KJmodule_;
static _KLbyte_stringGVKd_6 K104;
static _KLbyte_stringGVKd_4 K105;
static _KLsymbolGVKd KJdefinition_;
static _KLbyte_stringGVKd_10 K107;
static _KLsymbolGVKd KJunbound_;
static _KLbyte_stringGVKd_12 K109;
static _KLsymbolGVKd KJelement_;
static _KLbyte_stringGVKd_7 K111;
static _KLsymbolGVKd KJmacro_;
static _KLbyte_stringGVKd_5 K113;
static _KLbyte_stringGVKd_5 K114;
static _KLsymbolGVKd KJvariable_;
static _KLbyte_stringGVKd_8 K116;
static _KLbyte_stringGVKd_8 K117;
static _KLbyte_stringGVKd_16 K118;
static _KLsymbolGVKd KJmethod_;
static _KLbyte_stringGVKd_6 K120;
static _KLsymbolGVKd KJdomain_;
static _KLbyte_stringGVKd_6 K122;
static _KLbyte_stringGVKd_32 K123;
static _KLbyte_stringGVKd_7 K124;
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM0;
D Kenvironment_object_content_countsVenvironment_protocolsMM0I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM1;
D Kenvironment_object_content_countsVenvironment_protocolsMM1I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM2;
D Kenvironment_object_content_countsVenvironment_protocolsMM2I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM3;
D Kenvironment_object_content_countsVenvironment_protocolsMM3I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM4;
D Kenvironment_object_content_countsVenvironment_protocolsMM4I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM5;
D Kenvironment_object_content_countsVenvironment_protocolsMM5I (D, D);
extern _KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM6;
D Kenvironment_object_content_countsVenvironment_protocolsMM6I (D, D);
static _KLpairGVKd K139;
static _KLpairGVKd K140;
static _KLpairGVKd K141;
static _KLpairGVKd K142;
static _KLpairGVKd K143;
static _KLpairGVKd K144;
static _KLpairGVKd K145;
static _KLsignatureAvaluesArest_valueGVKi K146;
static _KLbyte_stringGVKd_33 K147;
static _KLsimple_object_vectorGVKd_1 K148;
static _KLunionGVKe K149;
static _KLsignatureAvaluesArest_valueGVKi K150;
static _KLsimple_object_vectorGVKd_2 K151;
static _KLsignatureAvaluesArest_valueGVKi K152;
static _KLsimple_object_vectorGVKd_2 K153;
static _KLsimple_closure_methodGVKi_0 Kdo_slotF156;
static D Kdo_slotF156I (D);
static _KLsignatureGVKe K157;
static _KLsimple_object_vectorGVKd_1 K158;
static _KLsignatureAvaluesArest_valueGVKi K159;
static _KLsimple_object_vectorGVKd_2 K160;
static _KLsimple_closure_methodGVKi_0 Kdo_methodF163;
static D Kdo_methodF163I (D);
static _KLsignatureGVKe K164;
static _KLsimple_object_vectorGVKd_1 K165;
static _KLsignatureAvaluesArest_valueGVKi K166;
static _KLsimple_object_vectorGVKd_2 K167;
static _KLsimple_closure_methodGVKi_0 Kdo_definitionF170;
static D Kdo_definitionF170I (D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_environment_object_content_countsF175;
static D Kanonymous_of_environment_object_content_countsF175I ();
static _KLsymbolGVKd KJenvironment_protocols_;
static _KLbyte_stringGVKd_21 K174;
static _KLbyte_stringGVKd_49 K176;
static _KLsignatureGVKe K177;
static _KLsignatureGVKe K178;
static _KLsimple_object_vectorGVKd_1 K179;
static _KLsignatureAvaluesArest_valueGVKi K180;
static _KLsimple_object_vectorGVKd_2 K181;
static _KLsimple_closure_methodGVKi_0 Kdo_moduleF184;
static D Kdo_moduleF184I (D);
static _KLsignatureGVKe K185;
static _KLsimple_object_vectorGVKd_1 K186;
static _KLsignatureAvaluesArest_valueGVKi K187;
static _KLsimple_object_vectorGVKd_2 K188;
static _KLsignatureAvaluesArest_valueGVKi K189;
static _KLsignatureGVKe K190;
static _KLsimple_object_vectorGVKd_3 K191;
static _KLsignatureGVKe K192;
static _KLsimple_object_vectorGVKd_3 K193;
static _KLsignatureGVKe K194;
static _KLsimple_object_vectorGVKd_3 K195;
static _KLsignatureGVKe K196;
static _KLsimple_object_vectorGVKd_3 K197;
static _KLkeyword_closure_methodGVKe_0 Kmaybe_print_content_countF202;
static D Kmaybe_print_content_countF202I (D, D, D, D, D, D);
static _KLbyte_stringGVKd_2 K200;
static _KLbyte_stringGVKd_7 K201;
static _KLkeyword_signatureGVKe K203;
static _KLsimple_object_vectorGVKd_4 K204;
static _KLsymbolGVKd KJprefix_;
static _KLsymbolGVKd KJsuffix_;
static _KLbyte_stringGVKd_6 K207;
static _KLbyte_stringGVKd_6 K208;
static _KLsimple_object_vectorGVKd_3 K209;
static _KLsimple_object_vectorGVKd_2 K210;
static _KLsignatureGVKe K211;
static _KLsimple_object_vectorGVKd_3 K212;
extern _KLsimple_methodGVKe Kprint_content_countVenvironment_protocols;
static _KLsignatureGVKe K214;
static _KLsignatureGVKe K215;
static _KLsimple_object_vectorGVKd_3 K216;
static _KLsignatureGVKe K217;
static _KLsimple_object_vectorGVKd_3 K218;
extern _KLsealed_generic_functionGVKe Kenvironment_object_descriptionVenvironment_protocols;
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM0;
D Kenvironment_object_descriptionVenvironment_protocolsMM0I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM1;
D Kenvironment_object_descriptionVenvironment_protocolsMM1I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM2;
D Kenvironment_object_descriptionVenvironment_protocolsMM2I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM3;
D Kenvironment_object_descriptionVenvironment_protocolsMM3I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM4;
D Kenvironment_object_descriptionVenvironment_protocolsMM4I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM5;
D Kenvironment_object_descriptionVenvironment_protocolsMM5I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM6;
D Kenvironment_object_descriptionVenvironment_protocolsMM6I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM7;
D Kenvironment_object_descriptionVenvironment_protocolsMM7I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM8;
D Kenvironment_object_descriptionVenvironment_protocolsMM8I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM9;
D Kenvironment_object_descriptionVenvironment_protocolsMM9I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM10;
D Kenvironment_object_descriptionVenvironment_protocolsMM10I (D, D, D);
extern _KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM11;
D Kenvironment_object_descriptionVenvironment_protocolsMM11I (D, D, D);
static _KLpairGVKd K244;
static _KLpairGVKd K245;
static _KLpairGVKd K246;
static _KLpairGVKd K247;
static _KLpairGVKd K248;
static _KLpairGVKd K249;
static _KLpairGVKd K250;
static _KLpairGVKd K251;
static _KLpairGVKd K252;
static _KLpairGVKd K253;
static _KLpairGVKd K254;
static _KLpairGVKd K255;
static _KLsignatureAvaluesGVKi K256;
static _KLbyte_stringGVKd_30 K257;
static _KLsimple_object_vectorGVKd_3 K258;
static _KLbyte_stringGVKd_4 K259;
static _KLpairGVKd K260;
static _KLpairGVKd K261;
static _KLsignatureAvaluesGVKi K262;
static _KLsimple_object_vectorGVKd_3 K263;
static _KLsignatureAvaluesGVKi K264;
static _KLsimple_object_vectorGVKd_3 K265;
static _KLbyte_stringGVKd_11 K266;
static _KLsignatureAvaluesGVKi K267;
static _KLsimple_object_vectorGVKd_3 K268;
static _KLsignatureAvaluesGVKi K269;
static _KLsimple_object_vectorGVKd_3 K270;
static _KLsignatureAvaluesGVKi K271;
static _KLsimple_object_vectorGVKd_3 K272;
static _KLbyte_stringGVKd_15 K273;
static _KLbyte_stringGVKd_5 K274;
static _KLbyte_stringGVKd_5 K275;
static _KLsignatureAvaluesGVKi K276;
static _KLsimple_object_vectorGVKd_3 K277;
D Knames_Gname_listVenvironment_protocolsI (D);
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_names_Gname_listF281;
static D Kanonymous_of_names_Gname_listF281I (D, D);
static _KLsignatureAvaluesGVKi K282;
static _KLsimple_object_vectorGVKd_3 K283;
static _KLsimple_closure_methodGVKi_0 Kanonymous_of_environment_object_descriptionF286;
static D Kanonymous_of_environment_object_descriptionF286I (D);
static _KLsignatureAvaluesGVKi K287;
static _KLsimple_object_vectorGVKd_3 K288;
static _KLsymbolGVKd KJqualify_namesQ_;
static _KLbyte_stringGVKd_15 K290;
static _KLbyte_stringGVKd_9 K291;
static _KLbyte_stringGVKd_14 K292;
static _KLsignatureAvaluesGVKi K293;
static _KLsimple_object_vectorGVKd_3 K294;
static _KLbyte_stringGVKd_11 K295;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K296;
static _KLsignatureAvaluesGVKi K297;
static _KLsimple_object_vectorGVKd_3 K298;
static _KLbyte_stringGVKd_10 K299;
static _KLbyte_stringGVKd_12 K300;
static _KLbyte_stringGVKd_2 K301;
static _KLbyte_stringGVKd_1 K302;
static _KLbyte_stringGVKd_10 K303;
static _KLsignatureAvaluesGVKi K304;
static _KLsimple_object_vectorGVKd_3 K305;
static _KLbyte_stringGVKd_13 K306;
static _KLbyte_stringGVKd_14 K307;
static _KLbyte_stringGVKd_22 K308;
static _KLbyte_stringGVKd_19 K309;
static _KLbyte_stringGVKd_14 K310;
static _KLbyte_stringGVKd_24 K311;
static _KLbyte_stringGVKd_3 K312;
static _KLbyte_stringGVKd_3 K313;

/* Indirection variables */

static D IKJabsolute_pathQ_ = &KJabsolute_pathQ_;
static D IKJclear_contentsQ_ = &KJclear_contentsQ_;
static D IKJslot_ = &KJslot_;
static D IKJlibrary_ = &KJlibrary_;
static D IKJmodule_ = &KJmodule_;
static D IKJdefinition_ = &KJdefinition_;
static D IKJunbound_ = &KJunbound_;
static D IKJelement_ = &KJelement_;
static D IKJmacro_ = &KJmacro_;
static D IKJvariable_ = &KJvariable_;
static D IKJmethod_ = &KJmethod_;
static D IKJdomain_ = &KJdomain_;
static D IKJenvironment_protocols_ = &KJenvironment_protocols_;
static D IKJprefix_ = &KJprefix_;
static D IKJsuffix_ = &KJsuffix_;
static D IKJqualify_namesQ_ = &KJqualify_namesQ_;

/* Variables */

D DnSaVenvironment_protocols = &K313;
D Dtype_nSaVenvironment_protocols = &K312;
D Dno_information_availableVenvironment_protocols = &K311;
D Dunknown_nameVenvironment_protocols = &K310;
D Dproject_not_builtVenvironment_protocols = &K309;
D Dinteractive_definitionVenvironment_protocols = &K308;
D Dnot_applicableVenvironment_protocols = &K307;
D Dnot_availableVenvironment_protocols = &K306;
D environment_object_descriptionVenvironment_protocols = &Kenvironment_object_descriptionVenvironment_protocols;
D environment_object_contentsVenvironment_protocols = &Kenvironment_object_contentsVenvironment_protocols;
D print_function_parametersVenvironment_protocols = &Kprint_function_parametersVenvironment_protocols;
D print_function_valuesVenvironment_protocols = &Kprint_function_valuesVenvironment_protocols;
D print_environment_object_locationVenvironment_protocols = &Kprint_environment_object_locationVenvironment_protocols;

/* Objects */

_KLincremental_generic_functionGVKe Kprint_environment_object_locationVenvironment_protocols = {
  &KLincremental_generic_functionGVKeW /* wrapper */,
  &gf_optional_xep_2,
  &K7,
  (D) 1,
  &K8,
  &K5,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kenvironment_protocols_moduleYdylan_userVenvironment_protocols,
  &KPfalseVKi,
  &KPempty_vectorVKi,
  (D) 25
};

_KLkeyword_methodGVKe Kprint_environment_object_locationVenvironment_protocolsMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K23,
  &key_mep_4,
  &Kprint_environment_object_locationVenvironment_protocolsMM0I,
  &K21
};

_KLkeyword_methodGVKe Kprint_environment_object_locationVenvironment_protocolsMM1 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K20,
  &key_mep_4,
  &Kprint_environment_object_locationVenvironment_protocolsMM1I,
  &K21
};

static _KLpairGVKd K5 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_locationVenvironment_protocolsMM0,
  &K6
};

static _KLpairGVKd K6 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_locationVenvironment_protocolsMM1,
  &KPempty_listVKi
};

static _KLkeyword_signatureAvaluesGVKi K7 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 33817609,
  &K9,
  &K10,
  &KDsignature_LbooleanG_typesVKi,
  &KDsignature_LstringG_typesVKi
};

static _KLbyte_stringGVKd_33 K8 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 133,
  "print-environment-object-location"
};

static _KLsimple_object_vectorGVKd_2 K9 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLserverGVenvironment_protocols,
  &KLenvironment_objectGVenvironment_protocols
};

static _KLsimple_object_vectorGVKd_1 K10 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KJabsolute_pathQ_
};

static _KLsymbolGVKd KJabsolute_pathQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K12
};

static _KLbyte_stringGVKd_14 K12 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "absolute-path?"
};

static _KLsimple_closure_methodGVKi_0 KprintitF15 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K16,
  &KprintitF15I,
  (D) 1
};

static _KLsignatureGVKe K16 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 44040201,
  &K17
};

static _KLsimple_object_vectorGVKd_2 K17 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLobjectGVKd,
  &K18
};

static _KLunionGVKe K18 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K19,
  &KLlocatorGYlocators_protocolVcommon_dylan
};

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

static _KLkeyword_signatureAvaluesGVKi K20 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 33817609,
  &K22,
  &K10,
  &KDsignature_LbooleanG_typesVKi,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K21 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJabsolute_pathQ_,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_2 K22 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLproject_objectGVenvironment_protocols
};

static _KLkeyword_signatureAvaluesGVKi K23 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (D) 33817609,
  &K24,
  &K10,
  &KDsignature_LbooleanG_typesVKi,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K24 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLenvironment_objectGVenvironment_protocols
};

_KLsimple_methodGVKe Kprint_function_valuesVenvironment_protocols = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K40,
  &Kprint_function_valuesVenvironment_protocolsI
};

static _KLbyte_stringGVKd_1 K27 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 5,
  "("
};

static _KLsimple_closure_methodGVKi_0 Kdo_valueF35 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_5,
  &K38,
  &Kdo_valueF35I,
  (D) 1
};

static _KLbyte_stringGVKd_2 K30 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 9,
  ", "
};

static _KLbyte_stringGVKd_6 K31 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "#rest "
};

static _KLbyte_stringGVKd_1 K32 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 5,
  ")"
};

static _KLsymbolGVKd KJclear_contentsQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K34
};

static _KLbyte_stringGVKd_15 K34 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "clear-contents?"
};

static _KLbyte_stringGVKd_2 K36 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 9,
  "%s"
};

static _KLbyte_stringGVKd_6 K37 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  " :: %s"
};

static _KLsignatureGVKe K38 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943061,
  &K39
};

static _KLsimple_object_vectorGVKd_5 K39 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 21,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLobjectGVKd,
  &KLparameterGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K40 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K41,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K41 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLserverGVenvironment_protocols,
  &KLfunction_objectGVenvironment_protocols,
  &K42
};

static _KLunionGVKe K42 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K19,
  &KLnamespace_objectGVenvironment_protocols
};

_KLsimple_methodGVKe Kprint_function_parametersVenvironment_protocols = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K40,
  &Kprint_function_parametersVenvironment_protocolsI
};

static _KLsimple_closure_methodGVKi_0 Kprint_separatorF55 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K56,
  &Kprint_separatorF55I,
  (D) 1
};

static _KLbyte_stringGVKd_6 K48 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "#next "
};

static _KLbyte_stringGVKd_5 K50 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "#key "
};

static _KLbyte_stringGVKd_11 K51 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  ", #all-keys"
};

static _KLbyte_stringGVKd_15 K52 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "#key, #all-keys"
};

static _KLsignatureGVKe K56 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943045,
  &K57
};

static _KLsimple_object_vectorGVKd_1 K57 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLobjectGVKd
};

_KLsealed_generic_functionGVKe Kenvironment_object_contentsVenvironment_protocols = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &K62,
  &KPfalseVKi,
  &K63,
  &K61,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kenvironment_object_contentsVenvironment_protocolsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K62,
  &Kenvironment_object_contentsVenvironment_protocolsMM0I
};

static _KLpairGVKd K61 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_contentsVenvironment_protocolsMM0,
  &KPempty_listVKi
};

static _KLsignatureAvaluesGVKi K62 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555465,
  &K24,
  &KDsignature_LstringG_typesVKi
};

static _KLbyte_stringGVKd_27 K63 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 109,
  "environment-object-contents"
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K64 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (D) 196665,
  &KPfalseVKi,
  &cache_header_engine_3,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kprint_environment_object_contentsVenvironment_protocols
};

_KLsealed_generic_functionGVKe Kprint_environment_object_contentsVenvironment_protocols = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_3,
  &K90,
  (D) 13,
  &K91,
  &K82,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K90,
  &Kprint_environment_object_contentsVenvironment_protocolsMM0I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM1 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K217,
  &Kprint_environment_object_contentsVenvironment_protocolsMM1I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM2 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K215,
  &Kprint_environment_object_contentsVenvironment_protocolsMM2I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM3 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K211,
  &Kprint_environment_object_contentsVenvironment_protocolsMM3I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM4 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K196,
  &Kprint_environment_object_contentsVenvironment_protocolsMM4I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM5 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K194,
  &Kprint_environment_object_contentsVenvironment_protocolsMM5I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM6 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K192,
  &Kprint_environment_object_contentsVenvironment_protocolsMM6I
};

_KLsimple_methodGVKe Kprint_environment_object_contentsVenvironment_protocolsMM7 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K190,
  &Kprint_environment_object_contentsVenvironment_protocolsMM7I
};

static _KLpairGVKd K82 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM0,
  &K83
};

static _KLpairGVKd K83 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM1,
  &K84
};

static _KLpairGVKd K84 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM2,
  &K85
};

static _KLpairGVKd K85 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM3,
  &K86
};

static _KLpairGVKd K86 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM4,
  &K87
};

static _KLpairGVKd K87 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM5,
  &K88
};

static _KLpairGVKd K88 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM6,
  &K89
};

static _KLpairGVKd K89 = {
  &KLpairGVKdW /* wrapper */,
  &Kprint_environment_object_contentsVenvironment_protocolsMM7,
  &KPempty_listVKi
};

static _KLsignatureGVKe K90 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K92
};

static _KLbyte_stringGVKd_33 K91 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 133,
  "print-environment-object-contents"
};

static _KLsimple_object_vectorGVKd_3 K92 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLenvironment_objectGVenvironment_protocols
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K93 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (D) 65593,
  &KPfalseVKi,
  &cache_header_engine_2,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kenvironment_object_content_countsVenvironment_protocols
};

_KLsealed_generic_functionGVKe Kenvironment_object_content_countsVenvironment_protocols = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_2,
  &K146,
  (D) 5,
  &K147,
  &K139,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLsymbolGVKd KJslot_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K97
};

static _KLbyte_stringGVKd_4 K97 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 17,
  "slot"
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K99 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (D) 131129,
  &KPfalseVKi,
  &cache_header_engine_3,
  &RSINGULAR_Labsent_engine_nodeG,
  &KformatYformatVio
};

static _KLbyte_stringGVKd_5 K100 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "%d %s"
};

static _KLsymbolGVKd KJlibrary_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K102
};

static _KLbyte_stringGVKd_7 K102 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  "library"
};

static _KLsymbolGVKd KJmodule_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K104
};

static _KLbyte_stringGVKd_6 K104 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "module"
};

static _KLbyte_stringGVKd_4 K105 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 17,
  "name"
};

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

static _KLbyte_stringGVKd_10 K107 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "definition"
};

static _KLsymbolGVKd KJunbound_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K124
};

static _KLbyte_stringGVKd_12 K109 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  "unbound name"
};

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

static _KLbyte_stringGVKd_7 K111 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  "element"
};

static _KLsymbolGVKd KJmacro_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K113
};

static _KLbyte_stringGVKd_5 K113 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "macro"
};

static _KLbyte_stringGVKd_5 K114 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "class"
};

static _KLsymbolGVKd KJvariable_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K116
};

static _KLbyte_stringGVKd_8 K116 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "variable"
};

static _KLbyte_stringGVKd_8 K117 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 33,
  "constant"
};

static _KLbyte_stringGVKd_16 K118 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 65,
  "generic function"
};

static _KLsymbolGVKd KJmethod_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K120
};

static _KLbyte_stringGVKd_6 K120 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "method"
};

static _KLsymbolGVKd KJdomain_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K122
};

static _KLbyte_stringGVKd_6 K122 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "domain"
};

static _KLbyte_stringGVKd_32 K123 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 129,
  "Fell through select cases on %=."
};

static _KLbyte_stringGVKd_7 K124 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  "unbound"
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K189,
  &Kenvironment_object_content_countsVenvironment_protocolsMM0I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM1 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K187,
  &Kenvironment_object_content_countsVenvironment_protocolsMM1I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM2 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K180,
  &Kenvironment_object_content_countsVenvironment_protocolsMM2I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM3 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K166,
  &Kenvironment_object_content_countsVenvironment_protocolsMM3I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM4 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K159,
  &Kenvironment_object_content_countsVenvironment_protocolsMM4I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM5 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K152,
  &Kenvironment_object_content_countsVenvironment_protocolsMM5I
};

_KLsimple_methodGVKe Kenvironment_object_content_countsVenvironment_protocolsMM6 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K150,
  &Kenvironment_object_content_countsVenvironment_protocolsMM6I
};

static _KLpairGVKd K139 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM0,
  &K140
};

static _KLpairGVKd K140 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM1,
  &K141
};

static _KLpairGVKd K141 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM2,
  &K142
};

static _KLpairGVKd K142 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM3,
  &K143
};

static _KLpairGVKd K143 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM4,
  &K144
};

static _KLpairGVKd K144 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM5,
  &K145
};

static _KLpairGVKd K145 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_content_countsVenvironment_protocolsMM6,
  &KPempty_listVKi
};

static _KLsignatureAvaluesArest_valueGVKi K146 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K24,
  &K148,
  &KLintegerGVKd
};

static _KLbyte_stringGVKd_33 K147 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 133,
  "environment-object-content-counts"
};

static _KLsimple_object_vectorGVKd_1 K148 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &K149
};

static _KLunionGVKe K149 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K19,
  &KLintegerGVKd
};

static _KLsignatureAvaluesArest_valueGVKi K150 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K151,
  &K148,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K151 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLcollection_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K152 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K153,
  &K148,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K153 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLcomposite_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kdo_slotF156 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K157,
  &Kdo_slotF156I,
  (D) 1
};

static _KLsignatureGVKe K157 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943045,
  &K158
};

static _KLsimple_object_vectorGVKd_1 K158 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLslot_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K159 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K160,
  &KDsignature_LintegerG_typesVKi,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K160 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLclass_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kdo_methodF163 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K164,
  &Kdo_methodF163I,
  (D) 1
};

static _KLsignatureGVKe K164 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943045,
  &K165
};

static _KLsimple_object_vectorGVKd_1 K165 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLmethod_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K166 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K167,
  &KDsignature_LintegerG_typesVKi,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K167 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLgeneric_function_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kdo_definitionF170 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K178,
  &Kdo_definitionF170I,
  (D) 1
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_environment_object_content_countsF175 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K177,
  &Kanonymous_of_environment_object_content_countsF175I,
  (D) 1
};

static _KLsymbolGVKd KJenvironment_protocols_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K174
};

static _KLbyte_stringGVKd_21 K174 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 85,
  "environment-protocols"
};

static _KLbyte_stringGVKd_49 K176 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 197,
  "Unexpected definition %= when counting -- ignored"
};

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

static _KLsignatureGVKe K178 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943045,
  &K179
};

static _KLsimple_object_vectorGVKd_1 K179 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLdefinition_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K180 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K181,
  &KDsignature_LintegerG_typesVKi,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K181 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kdo_moduleF184 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &K185,
  &Kdo_moduleF184I,
  (D) 1
};

static _KLsignatureGVKe K185 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943045,
  &K186
};

static _KLsimple_object_vectorGVKd_1 K186 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 5,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K187 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K188,
  &KDsignature_LintegerG_typesVKi,
  &KLintegerGVKd
};

static _KLsimple_object_vectorGVKd_2 K188 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KLproject_objectGVenvironment_protocols,
  &KLlibrary_objectGVenvironment_protocols
};

static _KLsignatureAvaluesArest_valueGVKi K189 = {
  &KLsignatureAvaluesArest_valueGVKiW /* wrapper */,
  (D) 35652617,
  &K22,
  &K148,
  &KLintegerGVKd
};

static _KLsignatureGVKe K190 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K191
};

static _KLsimple_object_vectorGVKd_3 K191 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLuser_objectGVenvironment_protocols
};

static _KLsignatureGVKe K192 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K193
};

static _KLsimple_object_vectorGVKd_3 K193 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLcollection_objectGVenvironment_protocols
};

static _KLsignatureGVKe K194 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K195
};

static _KLsimple_object_vectorGVKd_3 K195 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLclass_objectGVenvironment_protocols
};

static _KLsignatureGVKe K196 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K197
};

static _KLsimple_object_vectorGVKd_3 K197 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLgeneric_function_objectGVenvironment_protocols
};

static _KLkeyword_closure_methodGVKe_0 Kmaybe_print_content_countF202 = {
  &KLkeyword_closure_methodGVKeW /* wrapper */,
  &rest_key_xep_6,
  &K203,
  &key_mep_6,
  &Kmaybe_print_content_countF202I,
  &K204,
  (D) 1
};

static _KLbyte_stringGVKd_2 K200 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 9,
  " ("
};

static _KLbyte_stringGVKd_7 K201 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 29,
  " total)"
};

static _KLkeyword_signatureGVKe K203 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (D) 42205197,
  &K209,
  &K210,
  &KDsignature_LobjectG_typesVKi
};

static _KLsimple_object_vectorGVKd_4 K204 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 17,
  &KJprefix_,
  &KPfalseVKi,
  &KJsuffix_,
  &KPfalseVKi
};

static _KLsymbolGVKd KJprefix_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K208
};

static _KLsymbolGVKd KJsuffix_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K207
};

static _KLbyte_stringGVKd_6 K207 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "suffix"
};

static _KLbyte_stringGVKd_6 K208 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 25,
  "prefix"
};

static _KLsimple_object_vectorGVKd_3 K209 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLintegerGVKd,
  &KLsymbolGVKd
};

static _KLsimple_object_vectorGVKd_2 K210 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 9,
  &KJprefix_,
  &KJsuffix_
};

static _KLsignatureGVKe K211 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K212
};

static _KLsimple_object_vectorGVKd_3 K212 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

_KLsimple_methodGVKe Kprint_content_countVenvironment_protocols = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K214,
  &Kprint_content_countVenvironment_protocolsI
};

static _KLsignatureGVKe K214 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K209
};

static _KLsignatureGVKe K215 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K216
};

static _KLsimple_object_vectorGVKd_3 K216 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLlibrary_objectGVenvironment_protocols
};

static _KLsignatureGVKe K217 = {
  &KLsignatureGVKeW /* wrapper */,
  (D) 41943053,
  &K218
};

static _KLsimple_object_vectorGVKd_3 K218 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLstreamGYcommon_extensionsVcommon_dylan,
  &KLproject_objectGVenvironment_protocols,
  &KLproject_objectGVenvironment_protocols
};

_KLsealed_generic_functionGVKe Kenvironment_object_descriptionVenvironment_protocols = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_3,
  &K256,
  (D) 21,
  &K257,
  &K244,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K256,
  &Kenvironment_object_descriptionVenvironment_protocolsMM0I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM1 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K304,
  &Kenvironment_object_descriptionVenvironment_protocolsMM1I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM2 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K297,
  &Kenvironment_object_descriptionVenvironment_protocolsMM2I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM3 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K293,
  &Kenvironment_object_descriptionVenvironment_protocolsMM3I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM4 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K287,
  &Kenvironment_object_descriptionVenvironment_protocolsMM4I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM5 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K282,
  &Kenvironment_object_descriptionVenvironment_protocolsMM5I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM6 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K276,
  &Kenvironment_object_descriptionVenvironment_protocolsMM6I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM7 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K271,
  &Kenvironment_object_descriptionVenvironment_protocolsMM7I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM8 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K269,
  &Kenvironment_object_descriptionVenvironment_protocolsMM8I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM9 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K267,
  &Kenvironment_object_descriptionVenvironment_protocolsMM9I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM10 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K264,
  &Kenvironment_object_descriptionVenvironment_protocolsMM10I
};

_KLsimple_methodGVKe Kenvironment_object_descriptionVenvironment_protocolsMM11 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K262,
  &Kenvironment_object_descriptionVenvironment_protocolsMM11I
};

static _KLpairGVKd K244 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM0,
  &K245
};

static _KLpairGVKd K245 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM1,
  &K246
};

static _KLpairGVKd K246 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM2,
  &K247
};

static _KLpairGVKd K247 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM3,
  &K248
};

static _KLpairGVKd K248 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM4,
  &K249
};

static _KLpairGVKd K249 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM5,
  &K250
};

static _KLpairGVKd K250 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM6,
  &K251
};

static _KLpairGVKd K251 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM7,
  &K252
};

static _KLpairGVKd K252 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM8,
  &K253
};

static _KLpairGVKd K253 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM9,
  &K254
};

static _KLpairGVKd K254 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM10,
  &K255
};

static _KLpairGVKd K255 = {
  &KLpairGVKdW /* wrapper */,
  &Kenvironment_object_descriptionVenvironment_protocolsMM11,
  &KPempty_listVKi
};

static _KLsignatureAvaluesGVKi K256 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K258,
  &KDsignature_LstringG_typesVKi
};

static _KLbyte_stringGVKd_30 K257 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 121,
  "environment-object-description"
};

static _KLsimple_object_vectorGVKd_3 K258 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLenvironment_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_4 K259 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 17,
  " :: "
};

static _KLpairGVKd K260 = {
  &KLpairGVKdW /* wrapper */,
  &Kconcatenate_asVKdMM1,
  &K261
};

static _KLpairGVKd K261 = {
  &KLpairGVKdW /* wrapper */,
  &Kconcatenate_asVKdMM0,
  &KPempty_listVKi
};

static _KLsignatureAvaluesGVKi K262 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K263,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K263 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLconstant_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K264 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K265,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K265 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLmodule_variable_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_11 K266 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "\nContents:\t"
};

static _KLsignatureAvaluesGVKi K267 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K268,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K268 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K269 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K270,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K270 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLmacro_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K271 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K272,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K272 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLlibrary_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_15 K273 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "No next method."
};

static _KLbyte_stringGVKd_5 K274 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "\n => "
};

static _KLbyte_stringGVKd_5 K275 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 21,
  "\n    "
};

static _KLsignatureAvaluesGVKi K276 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K277,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K277 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLdylan_function_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_names_Gname_listF281 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &Kanonymous_of_names_Gname_listF281I,
  (D) 1
};

static _KLsignatureAvaluesGVKi K282 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K283,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K283 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLdomain_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsimple_closure_methodGVKi_0 Kanonymous_of_environment_object_descriptionF286 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &Kanonymous_of_environment_object_descriptionF286I,
  (D) 1
};

static _KLsignatureAvaluesGVKi K287 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K288,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K288 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLclass_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLsymbolGVKd KJqualify_namesQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K292
};

static _KLbyte_stringGVKd_15 K290 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 61,
  "Collection %s:\n"
};

static _KLbyte_stringGVKd_9 K291 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 37,
  "Size: %s\n"
};

static _KLbyte_stringGVKd_14 K292 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "qualify-names?"
};

static _KLsignatureAvaluesGVKi K293 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K294,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K294 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLcollection_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_11 K295 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 45,
  "Object %s:\n"
};

static _KLsimple_typechecked_cache_header_engine_nodeGVKg K296 = {
  &KLsimple_typechecked_cache_header_engine_nodeGVKgW /* wrapper */,
  (D) 327737,
  &KPfalseVKi,
  &cache_header_engine_3,
  &RSINGULAR_Labsent_engine_nodeG,
  &Kenvironment_object_descriptionVenvironment_protocols
};

static _KLsignatureAvaluesGVKi K297 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 37749773,
  &K298,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K298 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLuser_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_10 K299 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  ", library "
};

static _KLbyte_stringGVKd_12 K300 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 49,
  ", from file "
};

static _KLbyte_stringGVKd_2 K301 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 9,
  ":\n"
};

static _KLbyte_stringGVKd_1 K302 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 5,
  " "
};

static _KLbyte_stringGVKd_10 K303 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 41,
  "In module "
};

static _KLsignatureAvaluesGVKi K304 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (D) 33555469,
  &K305,
  &KDsignature_LstringG_typesVKi
};

static _KLsimple_object_vectorGVKd_3 K305 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (D) 13,
  &KLproject_objectGVenvironment_protocols,
  &KLdefinition_objectGVenvironment_protocols,
  &KLmodule_objectGVenvironment_protocols
};

static _KLbyte_stringGVKd_13 K306 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 53,
  "not available"
};

static _KLbyte_stringGVKd_14 K307 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "not applicable"
};

static _KLbyte_stringGVKd_22 K308 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 89,
  "interactive definition"
};

static _KLbyte_stringGVKd_19 K309 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 77,
  "[project not built]"
};

static _KLbyte_stringGVKd_14 K310 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 57,
  "{unknown-name}"
};

static _KLbyte_stringGVKd_24 K311 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 97,
  "No information available"
};

static _KLbyte_stringGVKd_3 K312 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 13,
  "<?>"
};

static _KLbyte_stringGVKd_3 K313 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (D) 13,
  "n/a"
};

/* Code */

D Kprint_environment_object_locationVenvironment_protocolsMM0I (D project_, D object_, D Urest_, D absolute_pathQ_) {
  D absolute_pathQF5;
  D source_location_;
  D source_record_;
  D location_;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D Utmp_;
  D T18_0;
  D T19_0;
  D T20_0;
  D T21;
  D T22;
  D T23;
  D T24_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:606
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:606
  primitive_type_check(absolute_pathQ_, &KLbooleanGVKd);
  absolute_pathQF5 = absolute_pathQ_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:610
  CONGRUENT_CALL_PROLOG(&Kenvironment_object_source_locationVenvironment_protocols, 2);
  source_location_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
  if (source_location_ != &KPfalseVKi) {
    T21 = source_location_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:612
    CONGRUENT_CALL_PROLOG(&Ksource_location_source_recordVsource_records, 1);
    source_record_ = CONGRUENT_CALL1(T21);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
    T22 = primitive_instanceQ(source_record_,&KLinteractive_source_recordGVsource_records);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
    if (T22 != &KPfalseVKi) {
      T16 = Dinteractive_definitionVenvironment_protocols;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
      T23 = primitive_instanceQ(source_record_,&KLfile_source_recordGVfile_source_records);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
      if (T23 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:617
        location_ = CALL1(&Ksource_record_locationVsource_records, source_record_);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:618
        T9 = CALL1(&Kfile_existsQYfile_systemVsystem, location_);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:618
        if (T9 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:619
          if (absolute_pathQF5 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:620
            T10 = CALL2(&Klocator_as_stringYlocatorsVsystem, &KLbyte_stringGVKd, location_);
            T12 = T10;
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:622
            CONGRUENT_CALL_PROLOG(&Klocator_nameYlocatorsVsystem, 1);
            T11 = CONGRUENT_CALL1(location_);
            T12 = T11;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:619
          T13 = T12;
        } else {
          T13 = &KPfalseVKi;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:618
        T15 = T13;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:626
        T14 = CALL1(&Ksource_record_nameVsource_records, source_record_);
        T15 = T14;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
      T16 = T15;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:613
    Utmp_ = T16;
  } else {
    Utmp_ = &KPfalseVKi;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
  if (Utmp_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
    T18_0 = Utmp_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
    T24_0 = T18_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T18_0);
      primitive_type_check(T24_0, &KLstringGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T20_0 = T24_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:629
    T19_0 = DnSaVenvironment_protocols;
    T20_0 = T19_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:611
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:606
  MV_SET_COUNT(1);
  return(T20_0);
}

D Kprint_environment_object_locationVenvironment_protocolsMM1I (D project_, D project_object_, D Urest_, D absolute_pathQ_) {
  volatile D absolute_pathQF5;
  volatile D retPexit_13_;
  volatile D T7;
  volatile D T8;
  volatile D T9;
  volatile D T10;
  volatile D T11;
  volatile D T12_0;
  volatile D T13_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:632
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:632
  primitive_type_check(absolute_pathQ_, &KLbooleanGVKd);
  absolute_pathQF5 = absolute_pathQ_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:638
  ENTER_EXIT_FRAME(retPexit_13_);
  if (nlx_setjmp(FRAME_DEST(retPexit_13_))) {
    T12_0 = FRAME_RETVAL(retPexit_13_);
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:639
    T8 = MAKE_CLOSURE_INITD(&KprintitF15, 1, retPexit_13_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:648
    CONGRUENT_CALL_PROLOG(&Kproject_filenameVenvironment_protocols, 1);
    T9 = CONGRUENT_CALL1(project_object_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:648
    get_teb()->function = T8;
    KprintitF15I(absolute_pathQF5, T9);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:649
    CONGRUENT_CALL_PROLOG(&Kproject_debug_filenameVenvironment_protocols, 1);
    T10 = CONGRUENT_CALL1(project_object_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:649
    get_teb()->function = T8;
    KprintitF15I(absolute_pathQF5, T10);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:650
    T11 = DnSaVenvironment_protocols;
    MV_SET_ELT(0, DnSaVenvironment_protocols);
    MV_SET_COUNT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:638
  T12_0 = T11;
    /* invalidate retPexit_13_ */
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:638
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:632
  T13_0 = T12_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T12_0);
    primitive_type_check(T13_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:632
  MV_SET_COUNT(1);
  return(T13_0);
}

static D KprintitF15I (D absolute_pathQ_, D locator_) {
  D locatorF2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  _KLsimple_object_vectorGVKd_1 T8 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T9;
  D T10;
  _KLsimple_object_vectorGVKd_1 T11 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T12;
  D T13;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:639
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:639
  locatorF2 = locator_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:640
  if (locatorF2 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:641
    if (absolute_pathQ_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:642
      T3 = CALL2(&Klocator_as_stringYlocatorsVsystem, &KLbyte_stringGVKd, locatorF2);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:642
      T8.vector_element_[0] = T3;
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:642
      T9 = MV_SET_REST_AT(&T8, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:642
      T10 = NLX(CREF(0), T9);
      T5 = T10;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:644
      CONGRUENT_CALL_PROLOG(&KasVKd, 2);
      T4 = CONGRUENT_CALL2(&KLstringGVKd, locatorF2);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:644
      T11.vector_element_[0] = T4;
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:638
      T12 = MV_SET_REST_AT(&T11, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:638
      T13 = NLX(CREF(0), T12);
      T5 = T13;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:641
    T7 = T5;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:640
    T6 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T7 = T6;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:640
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:639
  return(T7);
}

D Kprint_function_valuesVenvironment_protocolsI (D server_, D function_object_, D namespace_) {
  D T3;
  D LobjectG_class_;
  D T5_0;
  D T5_1;
  D T5_2;
  D T5_3;
  D T5_4;
  D T5_5;
  D T5_6;
  D required_values_;
  D rest_value_;
  D T8;
  D T9_0;
  D T10_0;
  D T11;
  _KLsimple_object_vectorGVKd_2 T12 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;
  D T21T, T21;
  D count_T, count_;
  D T23;
  D T24;
  D T25;
  D T26;
  D T27_0;
  D T28;
  D T29_0;
  D T30;
  _KLsimple_object_vectorGVKd_2 T31 = {&KLsimple_object_vectorGVKdW, (D) 9};

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:557
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:561
  T12.vector_element_[0] = &KJdirection_;
  T12.vector_element_[1] = &KJoutput_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:561
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T3 = CONGRUENT_CALL2(&KLstring_streamGYstreamsVio, &T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:562
  LobjectG_class_ = CALL2(&Kfind_environment_objectVenvironment_protocols, server_, DLobjectG_idVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:565
  T5_0 = CALL2(&Kfunction_parametersVenvironment_protocols, server_, function_object_);
  T5_1 = MV_GET_ELT(1);
  T5_2 = MV_GET_ELT(2);
  T5_3 = MV_GET_ELT(3);
  T5_4 = MV_GET_ELT(4);
  T5_5 = MV_GET_ELT(5);
  T5_6 = MV_GET_ELT(6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:563
  required_values_ = T5_5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:563
  rest_value_ = T5_6;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:567
  KformatYformatVioMM0I(T3, &K27, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  CONGRUENT_CALL_PROLOG(&Kforward_iteration_protocolVKd, 1);
  T13 = CONGRUENT_CALL1(required_values_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T14 = T13;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T15 = MV_GET_ELT(1);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T16 = MV_GET_ELT(2);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T17 = MV_GET_ELT(3);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T18 = MV_GET_ELT(5);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:579
  CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
  T19 = CONGRUENT_CALL1(required_values_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:579
  CONGRUENT_CALL_PROLOG(&K_VKd, 2);
  T20 = CONGRUENT_CALL2(T19, (D) 5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  T21T = T14;
  count_T = T20;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
    T21 = T21T;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
    count_ = count_T;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
    T23 = CALL3(T17, required_values_, T21, T15);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
    if (T23 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
      T24 = CALL2(T18, required_values_, T21);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:580
      CALL5(&Kdo_valueF35, LobjectG_class_, T3, namespace_, server_, T24);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:581
      CONGRUENT_CALL_PROLOG(&KLVKd, 2);
      T27_0 = CONGRUENT_CALL2((D) 1, count_);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:581
      T28 = T27_0;
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:581
      if (T28 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:582
        KformatYformatVioMM0I(T3, &K30, &KPempty_vectorVKi);
      }
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:581
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
      T25 = CALL2(T16, required_values_, T21);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T26 = CONGRUENT_CALL2(count_, (D) -3);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
      T21T = T25;
      count_T = T26;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:578
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:587
  if (rest_value_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:150
    T11 = rest_value_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:588
    CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
    T8 = CONGRUENT_CALL1(required_values_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:588
    CONGRUENT_CALL_PROLOG(&KLVKd, 2);
    T29_0 = CONGRUENT_CALL2((D) 1, T8);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:588
    T30 = T29_0;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:588
    if (T30 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:589
      KformatYformatVioMM0I(T3, &K30, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:588
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:591
    KformatYformatVioMM0I(T3, &K31, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:592
    Kdo_valueF35I(LobjectG_class_, T3, namespace_, server_, T11);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:587
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:594
  KformatYformatVioMM0I(T3, &K32, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:561
  T31.vector_element_[0] = IKJclear_contentsQ_;
  T31.vector_element_[1] = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:561
  CONGRUENT_CALL_PROLOG(&Kstream_contentsYstreams_protocolVcommon_dylan, 2);
  T9_0 = CONGRUENT_CALL2(T3, &T31);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:557
  T10_0 = T9_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T9_0);
    primitive_type_check(T10_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:557
  MV_SET_COUNT(1);
  return(T10_0);
}

static D Kdo_valueF35I (D LobjectG_class_, D implicit_argument_, D namespace_, D server_, D parameter_) {
  D Utmp_;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11;
  _KLsimple_object_vectorGVKd_1 T12 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T13;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:566
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:569
  T10 = SLOT_VALUE_INITD(parameter_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:570
  T11 = SLOT_VALUE_INITD(parameter_, 0);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:570
  T12.vector_element_[0] = T11;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:570
  KformatYformatVioMM0I(implicit_argument_, &K36, &T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:571
  T13 = primitive_idQ(T10,LobjectG_class_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:571
  if (T13 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:571
    T8 = &KPfalseVKi;
    T9 = T8;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:573
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_display_nameVenvironment_protocols, 4);
    Utmp_ = CONGRUENT_CALL4(server_, T10, namespace_, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:573
    if (Utmp_ != &KPfalseVKi) {
      T7 = Utmp_;
    } else {
      T7 = Dtype_nSaVenvironment_protocols;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:573
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:572
    T14.vector_element_[0] = T7;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:572
    T15 = KformatYformatVioMM0I(implicit_argument_, &K37, &T14);
    T9 = T15;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:571
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:566
  MV_SET_COUNT(0);
  return(T9);
}

D Kprint_function_parametersVenvironment_protocolsI (D server_, D function_object_, D namespace_) {
  D T3;
  D LobjectG_class_;
  D T5_0;
  D T5_1;
  D T5_2;
  D T5_3;
  D T5_4;
  D required_;
  D rest_;
  D key_;
  D all_keysQ_;
  D next_;
  D T11;
  D T12;
  D T13;
  D T14_0;
  D T15_0;
  D printed_somethingF16;
  D T17;
  D T18;
  _KLsimple_object_vectorGVKd_2 T19 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T20_0;
  D printed_somethingF21;
  D T22_0;
  D T23;
  _KLsimple_object_vectorGVKd_2 T24 = {&KLsimple_object_vectorGVKdW, (D) 9};

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:484
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:488
  T19.vector_element_[0] = &KJdirection_;
  T19.vector_element_[1] = &KJoutput_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:488
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T3 = CONGRUENT_CALL2(&KLstring_streamGYstreamsVio, &T19);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:489
  LobjectG_class_ = CALL2(&Kfind_environment_objectVenvironment_protocols, server_, DLobjectG_idVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:491
  T5_0 = CALL2(&Kfunction_parametersVenvironment_protocols, server_, function_object_);
  T5_1 = MV_GET_ELT(1);
  T5_2 = MV_GET_ELT(2);
  T5_3 = MV_GET_ELT(3);
  T5_4 = MV_GET_ELT(4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:490
  required_ = T5_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:490
  rest_ = T5_1;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:490
  key_ = T5_2;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:490
  all_keysQ_ = T5_3;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:490
  next_ = T5_4;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:492
  KformatYformatVioMM0I(T3, &K27, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:519
  Kdo_parametersF54I(LobjectG_class_, T3, namespace_, server_, required_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:520
  CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
  T11 = CONGRUENT_CALL1(required_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:520
  CONGRUENT_CALL_PROLOG(&KLVKd, 2);
  T20_0 = CONGRUENT_CALL2((D) 1, T11);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:520
  printed_somethingF21 = T20_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:520
  printed_somethingF16 = MAKE_D_CELL(printed_somethingF21);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:521
  T12 = MAKE_CLOSURE_INITD(&Kprint_separatorF55, 1, printed_somethingF16);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:528
  if (next_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:148
    T17 = next_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:529
    get_teb()->function = T12;
    Kprint_separatorF55I(T3);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:530
    KformatYformatVioMM0I(T3, &K48, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:531
    Kdo_parameterF53I(LobjectG_class_, T3, namespace_, server_, T17);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:528
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:533
  if (rest_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:148
    T18 = rest_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:534
    get_teb()->function = T12;
    Kprint_separatorF55I(T3);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:535
    KformatYformatVioMM0I(T3, &K31, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:536
    Kdo_parameterF53I(LobjectG_class_, T3, namespace_, server_, T18);
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:533
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:539
  CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
  T13 = CONGRUENT_CALL1(key_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:539
  CONGRUENT_CALL_PROLOG(&KLVKd, 2);
  T22_0 = CONGRUENT_CALL2((D) 1, T13);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:539
  T23 = T22_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:538
  if (T23 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:540
    get_teb()->function = T12;
    Kprint_separatorF55I(T3);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:541
    KformatYformatVioMM0I(T3, &K50, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:542
    Kdo_parametersF54I(LobjectG_class_, T3, namespace_, server_, key_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:543
    if (all_keysQ_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:544
      KformatYformatVioMM0I(T3, &K51, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:543
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:538
    if (all_keysQ_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:547
      get_teb()->function = T12;
      Kprint_separatorF55I(T3);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:548
      KformatYformatVioMM0I(T3, &K52, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:538
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:538
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:552
  KformatYformatVioMM0I(T3, &K32, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:488
  T24.vector_element_[0] = IKJclear_contentsQ_;
  T24.vector_element_[1] = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:488
  CONGRUENT_CALL_PROLOG(&Kstream_contentsYstreams_protocolVcommon_dylan, 2);
  T14_0 = CONGRUENT_CALL2(T3, &T24);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:484
  T15_0 = T14_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T14_0);
    primitive_type_check(T15_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:484
  MV_SET_COUNT(1);
  return(T15_0);
}

static D Kprint_separatorF55I (D implicit_argument_) {
  D T1;
  D T2;
  D T3;
  D T4;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:521
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:522
  T3 = GET_D_CELL_VAL(CREF(0));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:522
  if (T3 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:523
    T4 = KformatYformatVioMM0I(implicit_argument_, &K30, &KPempty_vectorVKi);
    T2 = T4;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:525
    SET_D_CELL_VAL(CREF(0), &KPtrueVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:525
    T1 = &KPfalseVKi;
    T2 = T1;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:522
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:521
  MV_SET_COUNT(0);
  return(T2);
}

static D Kdo_parametersF54I (D LobjectG_class_, D implicit_argument_, D namespace_, D server_, D parameters_) {
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  D T10;
  D T11T, T11;
  D separator_T, separator_;
  D T13;
  D parameter_;
  D T15;
  D T16;
  D T17;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:512
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  CONGRUENT_CALL_PROLOG(&Kforward_iteration_protocolVKd, 1);
  T5 = CONGRUENT_CALL1(parameters_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T6 = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T7 = MV_GET_ELT(1);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T8 = MV_GET_ELT(2);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T9 = MV_GET_ELT(3);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T10 = MV_GET_ELT(5);
;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  T11T = T6;
  separator_T = &KPempty_stringVKi;
L0: ;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    T11 = T11T;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    separator_ = separator_T;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    T13 = CALL3(T9, parameters_, T11, T7);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    if (T13 == &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
      T15 = CALL2(T10, parameters_, T11);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
      primitive_type_check(T15, &KLparameterGVenvironment_protocols);
      parameter_ = T15;
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:515
      KformatYformatVioMM0I(implicit_argument_, separator_, &KPempty_vectorVKi);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:516
      Kdo_parameterF53I(LobjectG_class_, implicit_argument_, namespace_, server_, parameter_);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
      T16 = CALL2(T8, parameters_, T11);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
      T11T = T16;
      separator_T = &K30;
      goto L0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
    T17 = &KPfalseVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:513
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:512
  MV_SET_COUNT(0);
  return(T17);
}

static D Kdo_parameterF53I (D LobjectG_class_, D implicit_argument_, D namespace_, D server_, D parameter_) {
  D keyword_;
  D T7;
  D Utmp_;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  _KLsimple_object_vectorGVKd_1 T17 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T18;
  _KLsimple_object_vectorGVKd_1 T19 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T20;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:492
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:495
  T13 = primitive_instanceQ(parameter_,&KLoptional_parameterGVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:495
  if (T13 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:148
    T12 = parameter_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:496
    T14 = SLOT_VALUE_INITD(T12, 2);
    keyword_ = T14;
  } else {
    keyword_ = &KPfalseVKi;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:495
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:497
  T15 = SLOT_VALUE_INITD(parameter_, 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:504
  if (keyword_ != &KPfalseVKi) {
    T7 = keyword_;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:504
    T16 = SLOT_VALUE_INITD(parameter_, 0);
    T7 = T16;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:504
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:504
  T17.vector_element_[0] = T7;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:504
  KformatYformatVioMM0I(implicit_argument_, &K36, &T17);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:506
  T18 = primitive_idQ(T15,LobjectG_class_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:506
  if (T18 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:506
    T10 = &KPfalseVKi;
    T11 = T10;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:508
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_display_nameVenvironment_protocols, 4);
    Utmp_ = CONGRUENT_CALL4(server_, T15, namespace_, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:508
    if (Utmp_ != &KPfalseVKi) {
      T9 = Utmp_;
    } else {
      T9 = Dtype_nSaVenvironment_protocols;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:508
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:507
    T19.vector_element_[0] = T9;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:507
    T20 = KformatYformatVioMM0I(implicit_argument_, &K37, &T19);
    T11 = T20;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:506
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:492
  MV_SET_COUNT(0);
  return(T11);
}

D Kenvironment_object_contentsVenvironment_protocolsMM0I (D project_, D object_) {
  D T3;
  D contents_;
  D T5;
  D T6_0;
  D T7_0;
  D T8_0;
  _KLsimple_object_vectorGVKd_2 T9 = {&KLsimple_object_vectorGVKdW, (D) 9};
  _KLsimple_object_vectorGVKd_2 T10 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T11_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:344
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:348
  T9.vector_element_[0] = &KJdirection_;
  T9.vector_element_[1] = &KJoutput_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:348
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T3 = CONGRUENT_CALL2(&KLstring_streamGYstreamsVio, &T9);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:349
  ENGINE_NODE_CALL_PROLOG(&Kprint_environment_object_contentsVenvironment_protocols, &K64, 3);
  ENGINE_NODE_CALL3(&K64, T3, project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:348
  T10.vector_element_[0] = IKJclear_contentsQ_;
  T10.vector_element_[1] = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:348
  CONGRUENT_CALL_PROLOG(&Kstream_contentsYstreams_protocolVcommon_dylan, 2);
  contents_ = CONGRUENT_CALL2(T3, &T10);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:351
  CONGRUENT_CALL_PROLOG(&KemptyQVKd, 1);
  T5 = CONGRUENT_CALL1(contents_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:351
  if (T5 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:352
    T6_0 = Dnot_availableVenvironment_protocols;
    T8_0 = T6_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:354
    T7_0 = contents_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:354
    T11_0 = T7_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T7_0);
      primitive_type_check(T11_0, &KLstringGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T8_0 = T11_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:351
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:344
  MV_SET_COUNT(1);
  return(T8_0);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM0I (D stream_, D project_, D environment_object_) {
  D T4;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:363
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:367
  CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
  T4 = CONGRUENT_CALL3(stream_, Dnot_applicableVenvironment_protocols, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:363
  MV_SET_COUNT(0);
  return(T4);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM1I (D stream_, D project_, D project_object_) {
  D library_count_;
  D module_count_;
  D name_count_;
  D T7;
  D T8;
  D T9;
  D T10_0;
  D T10_1;
  D T10_2;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:370
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:375
  T10_0 = Kenvironment_object_content_countsVenvironment_protocolsMM0I(project_, project_object_);
  T10_1 = MV_GET_ELT(1);
  T10_2 = MV_GET_ELT(2);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:374
  library_count_ = T10_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:374
  module_count_ = T10_1;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:374
  name_count_ = T10_2;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:377
  if (library_count_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:378
    CALL3(&Kprint_content_countVenvironment_protocols, stream_, module_count_, IKJmodule_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:379
    CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
    CONGRUENT_CALL3(stream_, Dlist_separatorVenvironment_protocols, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:380
    T7 = CALL3(&Kprint_content_countVenvironment_protocols, stream_, name_count_, &KJname_);
    T9 = T7;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:377
    T8 = &KPfalseVKi;
    T9 = T8;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:377
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:370
  MV_SET_COUNT(0);
  return(T9);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM2I (D stream_, D project_, D library_object_) {
  D module_count_;
  D name_count_;
  D T6;
  D T7;
  D T8_0;
  D T8_1;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:384
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:389
  T8_0 = Kenvironment_object_content_countsVenvironment_protocolsMM1I(project_, library_object_);
  T8_1 = MV_GET_ELT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:388
  module_count_ = T8_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:388
  name_count_ = T8_1;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
  T7 = module_count_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:391
  Kprint_content_countVenvironment_protocolsI(stream_, T7, IKJmodule_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:392
  CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
  CONGRUENT_CALL3(stream_, Dlist_separatorVenvironment_protocols, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:393
  T6 = CALL3(&Kprint_content_countVenvironment_protocols, stream_, name_count_, &KJname_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:384
  MV_SET_COUNT(0);
  return(T6);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM3I (D stream_, D project_, D module_object_) {
  D T4;
  D macro_count_;
  D class_count_;
  D constant_count_;
  D variable_count_;
  D gf_count_;
  D method_count_;
  D domain_count_;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D total_count_;
  D T19;
  D T20;
  D T21;
  D need_separatorQ_;
  D T23;
  D T24_0;
  D T24_1;
  D T24_2;
  D T24_3;
  D T24_4;
  D T24_5;
  D T24_6;
  D T25;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:397
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:401
  need_separatorQ_ = MAKE_D_CELL(&KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:402
  T4 = MAKE_KEYWORD_CLOSURE_INITD(&Kmaybe_print_content_countF202, 1, need_separatorQ_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:422
  T24_0 = Kenvironment_object_content_countsVenvironment_protocolsMM2I(project_, module_object_);
  T24_1 = MV_GET_ELT(1);
  T24_2 = MV_GET_ELT(2);
  T24_3 = MV_GET_ELT(3);
  T24_4 = MV_GET_ELT(4);
  T24_5 = MV_GET_ELT(5);
  T24_6 = MV_GET_ELT(6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  macro_count_ = T24_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  class_count_ = T24_1;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  constant_count_ = T24_2;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  variable_count_ = T24_3;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  gf_count_ = T24_4;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  method_count_ = T24_5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:415
  domain_count_ = T24_6;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
  T23 = macro_count_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T12 = CONGRUENT_CALL2(T23, class_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T13 = CONGRUENT_CALL2(T12, constant_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T14 = CONGRUENT_CALL2(T13, variable_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T15 = CONGRUENT_CALL2(T14, gf_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T16 = CONGRUENT_CALL2(T15, method_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:425
  CONGRUENT_CALL_PROLOG(&KAVKd, 2);
  T17 = CONGRUENT_CALL2(T16, domain_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:424
  primitive_type_check(T17, &KLintegerGVKd);
  total_count_ = T17;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:427
  T25 = primitive_idQ(total_count_,(D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:427
  if (T25 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:428
    T19 = Kprint_content_countVenvironment_protocolsI(stream_, total_count_, IKJdefinition_);
    T21 = T19;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:430
    get_teb()->function = T4;
    Kmaybe_print_content_countF202I(stream_, T23, IKJmacro_, &KPempty_vectorVKi, &KPfalseVKi, &KPfalseVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:431
    CALL3(T4, stream_, class_count_, &KJclass_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:432
    CALL3(T4, stream_, constant_count_, &KJconstant_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:433
    CALL3(T4, stream_, variable_count_, IKJvariable_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:434
    CALL3(T4, stream_, gf_count_, &KJgeneric_function_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:435
    CALL3(T4, stream_, method_count_, IKJmethod_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:436
    CALL3(T4, stream_, domain_count_, IKJdomain_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:437
    CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
    CONGRUENT_CALL3(stream_, &K200, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:438
    Kprint_content_countVenvironment_protocolsI(stream_, total_count_, IKJdefinition_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:439
    CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
    T20 = CONGRUENT_CALL3(stream_, &K201, &KPempty_vectorVKi);
    T21 = T20;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:427
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:397
  MV_SET_COUNT(0);
  return(T21);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM4I (D stream_, D project_, D generic_function_object_) {
  D T4;
  D T5;
  D method_count_;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:444
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:449
  method_count_ = Kenvironment_object_content_countsVenvironment_protocolsMM3I(project_, generic_function_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
  T5 = method_count_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:450
  T4 = Kprint_content_countVenvironment_protocolsI(stream_, T5, IKJmethod_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:444
  MV_SET_COUNT(0);
  return(T4);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM5I (D stream_, D project_, D class_object_) {
  D T4;
  D T5;
  D slot_count_;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:453
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:457
  slot_count_ = Kenvironment_object_content_countsVenvironment_protocolsMM4I(project_, class_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
  T5 = slot_count_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:458
  T4 = Kprint_content_countVenvironment_protocolsI(stream_, T5, IKJslot_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:453
  MV_SET_COUNT(0);
  return(T4);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM6I (D stream_, D project_, D collection_object_) {
  D T4;
  D T5;
  D T6;
  D T7;
  D element_count_;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:461
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:466
  element_count_ = Kenvironment_object_content_countsVenvironment_protocolsMM6I(project_, collection_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:467
  if (element_count_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
    T7 = element_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:467
    T4 = Kprint_content_countVenvironment_protocolsI(stream_, T7, IKJelement_);
    T6 = T4;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:467
    T5 = &KPfalseVKi;
    T6 = T5;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:467
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:461
  MV_SET_COUNT(0);
  return(T6);
}

D Kprint_environment_object_contentsVenvironment_protocolsMM7I (D stream_, D project_, D user_object_) {
  D T4;
  D T5;
  D T6;
  D T7;
  D slot_count_;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:470
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:475
  ENGINE_NODE_CALL_PROLOG(&Kenvironment_object_content_countsVenvironment_protocols, &K93, 2);
  slot_count_ = ENGINE_NODE_CALL2(&K93, project_, user_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:476
  if (slot_count_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
    T7 = slot_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:476
    T4 = Kprint_content_countVenvironment_protocolsI(stream_, T7, IKJslot_);
    T6 = T4;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:476
    T5 = &KPfalseVKi;
    T6 = T5;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:476
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:470
  MV_SET_COUNT(0);
  return(T6);
}

D Kprint_content_countVenvironment_protocolsI (D stream_, D count_, D content_type_) {
  D T3;
  D T4;
  _KLsimple_object_vectorGVKd_2 T5 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T6;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:331
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:336
  T3 = Kcontent_type_nameVenvironment_protocolsI(content_type_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:336
  T4 = Kstring_pluralizeYcl_stringsVclMM0I(T3, &KPempty_vectorVKi, count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:334
  T5.vector_element_[0] = count_;
  T5.vector_element_[1] = T4;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:334
  ENGINE_NODE_CALL_PROLOG(&KformatYformatVio, &K99, 3);
  T6 = ENGINE_NODE_CALL3(&K99, stream_, &K100, &T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:331
  MV_SET_COUNT(0);
  return(T6);
}

D Kcontent_type_nameVenvironment_protocolsI (D content_type_) {
  D T1_0;
  D T2_0;
  D T3_0;
  D T4_0;
  D T5_0;
  D T6_0;
  D T7_0;
  D T8_0;
  D T9_0;
  D T10_0;
  D T11_0;
  D T12_0;
  D T13_0;
  D T14_0;
  D T15_0;
  D T16_0;
  D T17_0;
  D T18_0;
  D T19_0;
  D T20_0;
  D T21_0;
  D T22_0;
  D T23_0;
  D T24_0;
  D T25_0;
  D T26_0;
  D T27_0;
  D T28_0;
  D T29;
  D T30;
  D T31;
  D T32;
  D T33;
  D T34;
  D T35;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40;
  D T41;
  D T42;
  _KLsimple_object_vectorGVKd_1 T43 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T44_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:308
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
  T29 = primitive_idQ(content_type_,IKJlibrary_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
  if (T29 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:311
    T1_0 = &K102;
    T28_0 = T1_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
    T30 = primitive_idQ(content_type_,IKJmodule_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
    if (T30 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:312
      T2_0 = &K104;
      T27_0 = T2_0;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
      T31 = primitive_idQ(content_type_,&KJname_);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
      if (T31 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:313
        T3_0 = &K105;
        T26_0 = T3_0;
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
        T32 = primitive_idQ(content_type_,IKJdefinition_);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
        if (T32 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:314
          T4_0 = &K107;
          T25_0 = T4_0;
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
          T33 = primitive_idQ(content_type_,IKJunbound_);
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
          if (T33 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:315
            T5_0 = &K109;
            T24_0 = T5_0;
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
            T34 = primitive_idQ(content_type_,IKJelement_);
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
            if (T34 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:316
              T6_0 = &K111;
              T23_0 = T6_0;
            } else {
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
              T35 = primitive_idQ(content_type_,IKJmacro_);
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
              if (T35 != &KPfalseVKi) {
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:317
                T7_0 = &K113;
                T22_0 = T7_0;
              } else {
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                T36 = primitive_idQ(content_type_,&KJclass_);
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                if (T36 != &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:318
                  T8_0 = &K114;
                  T21_0 = T8_0;
                } else {
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                  T37 = primitive_idQ(content_type_,IKJslot_);
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                  if (T37 != &KPfalseVKi) {
                    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:319
                    T9_0 = &K97;
                    T20_0 = T9_0;
                  } else {
                    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                    T38 = primitive_idQ(content_type_,IKJvariable_);
                    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                    if (T38 != &KPfalseVKi) {
                      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:320
                      T10_0 = &K116;
                      T19_0 = T10_0;
                    } else {
                      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                      T39 = primitive_idQ(content_type_,&KJconstant_);
                      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                      if (T39 != &KPfalseVKi) {
                        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:321
                        T11_0 = &K117;
                        T18_0 = T11_0;
                      } else {
                        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                        T40 = primitive_idQ(content_type_,&KJgeneric_function_);
                        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                        if (T40 != &KPfalseVKi) {
                          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:322
                          T12_0 = &K118;
                          T17_0 = T12_0;
                        } else {
                          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                          T41 = primitive_idQ(content_type_,IKJmethod_);
                          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                          if (T41 != &KPfalseVKi) {
                            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:323
                            T13_0 = &K120;
                            T16_0 = T13_0;
                          } else {
                            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                            T42 = primitive_idQ(content_type_,IKJdomain_);
                            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                            if (T42 != &KPfalseVKi) {
                              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:324
                              T14_0 = &K122;
                              T15_0 = T14_0;
                            } else {
                              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                              T43.vector_element_[0] = content_type_;
                              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                              T44_0 = KerrorVKdMM1I(&K123, &T43);
                              T15_0 = T44_0;
                            }
                            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                            T16_0 = T15_0;
                          }
                          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                          T17_0 = T16_0;
                        }
                        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                        T18_0 = T17_0;
                      }
                      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                      T19_0 = T18_0;
                    }
                    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                    T20_0 = T19_0;
                  }
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                  T21_0 = T20_0;
                }
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
                T22_0 = T21_0;
              }
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
              T23_0 = T22_0;
            }
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
            T24_0 = T23_0;
          }
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
          T25_0 = T24_0;
        }
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
        T26_0 = T25_0;
      }
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
      T27_0 = T26_0;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
    T28_0 = T27_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:310
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:308
  MV_SET_COUNT(1);
  return(T28_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM0I (D project_, D project_object_) {
  D library_;
  D library_module_count_;
  D library_name_count_;
  D T6;
  D T7;
  D T8_0;
  D T8;
  D T9_0;
  D T9;
  D module_count_;
  D T11;
  D T12;
  D name_count_;
  D T14;
  D T15;
  D T16;
  D T17_0;
  D T17_1;
  DWORD T18;
  DWORD T19;
  DWORD T20;
  DWORD T21;
  D T22;
  D T23_0;
  D T23;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:198
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:201
  CONGRUENT_CALL_PROLOG(&Kproject_libraryVenvironment_protocols, 1);
  library_ = CONGRUENT_CALL1(project_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:202
  if (library_ != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:375
    T16 = library_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:204
    module_count_ = (D) 1;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:205
    name_count_ = (D) 1;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:207
    T17_0 = Kenvironment_object_content_countsVenvironment_protocolsMM1I(project_object_, T16);
    T17_1 = MV_GET_ELT(1);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:206
    library_module_count_ = T17_0;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:206
    library_name_count_ = T17_1;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T12 = module_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T18 = primitive_cast_integer_as_raw(T12);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T19 = primitive_cast_integer_as_raw(library_module_count_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T20 = primitive_machine_word_logxor(T19,1);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T21 = primitive_machine_word_add_signal_overflow(T18,T20);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    T22 = primitive_cast_raw_as_integer(T21);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:208
    module_count_ = T22;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:209
    T15 = name_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:209
    CONGRUENT_CALL_PROLOG(&KAVKd, 2);
    T6 = CONGRUENT_CALL2(T15, library_name_count_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:209
    primitive_type_check(T6, &KLintegerGVKd);
    T7 = T6;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:209
    name_count_ = T7;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:210
    T11 = module_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:210
    T14 = name_count_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:210
    T23_0 = (D) 5;
    MV_SET_ELT(1, T11);
    MV_SET_ELT(2, T14);
    MV_SET_COUNT(3);
    T9_0 = T23_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:202
    T8_0 = &KPfalseVKi;
    MV_SET_COUNT(1);
    T9_0 = T8_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:202
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:198
  return(T9_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM1I (D project_, D library_object_) {
  D T3;
  D module_count_;
  D T5;
  D name_count_;
  D T7;
  D T8_0;
  D T8;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:214
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:217
  module_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:218
  name_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:219
  T3 = MAKE_CLOSURE_INITD(&Kdo_moduleF184, 3, name_count_, module_count_, project_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:225
  Kdo_library_modulesVenvironment_protocolsI(T3, project_, library_object_, &KPempty_vectorVKi, &KPfalseVKi, &KPfalseVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:226
  T5 = GET_D_CELL_VAL(module_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:226
  T7 = GET_D_CELL_VAL(name_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:226
  T8_0 = T5;
  MV_SET_ELT(1, T7);
  MV_SET_COUNT(2);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:214
  return(T8_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM2I (D project_, D module_object_) {
  D T3;
  D macro_count_;
  D T5;
  D class_count_;
  D T7;
  D constant_count_;
  D T9;
  D variable_count_;
  D T11;
  D gf_count_;
  D T13;
  D method_count_;
  D T15;
  D domain_count_;
  D T17;
  D T18_0;
  D T18;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:229
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:232
  macro_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:233
  class_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:234
  constant_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:235
  variable_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:236
  gf_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:237
  method_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:238
  domain_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:239
  T3 = MAKE_CLOSURE_INITD(&Kdo_definitionF170, 7, domain_count_, method_count_, gf_count_, variable_count_, constant_count_, class_count_, macro_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:256
  CONGRUENT_CALL_PROLOG(&Kdo_module_definitionsVenvironment_protocols, 4);
  CONGRUENT_CALL4(T3, project_, module_object_, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T5 = GET_D_CELL_VAL(macro_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T7 = GET_D_CELL_VAL(class_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T9 = GET_D_CELL_VAL(constant_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T11 = GET_D_CELL_VAL(variable_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T13 = GET_D_CELL_VAL(gf_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T15 = GET_D_CELL_VAL(method_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T17 = GET_D_CELL_VAL(domain_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:257
  T18_0 = T5;
  MV_SET_ELT(1, T7);
  MV_SET_ELT(2, T9);
  MV_SET_ELT(3, T11);
  MV_SET_ELT(4, T13);
  MV_SET_ELT(5, T15);
  MV_SET_ELT(6, T17);
  MV_SET_COUNT(7);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:229
  return(T18_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM3I (D project_, D generic_function_object_) {
  D T3;
  D T4_0;
  D T4;
  D method_count_;
  D T6;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:266
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:270
  method_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:271
  T3 = MAKE_CLOSURE_INITD(&Kdo_methodF163, 1, method_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:275
  CONGRUENT_CALL_PROLOG(&Kdo_generic_function_methodsVenvironment_protocols, 4);
  CONGRUENT_CALL4(T3, project_, generic_function_object_, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:276
  T6 = GET_D_CELL_VAL(method_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:276
  T4_0 = T6;
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:266
  return(T4_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM4I (D project_, D class_object_) {
  D T3;
  D T4_0;
  D T4;
  D slot_count_;
  D T6;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:279
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:282
  slot_count_ = MAKE_D_CELL((D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:283
  T3 = MAKE_CLOSURE_INITD(&Kdo_slotF156, 1, slot_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:287
  CONGRUENT_CALL_PROLOG(&Kdo_direct_slotsVenvironment_protocols, 4);
  CONGRUENT_CALL4(T3, project_, class_object_, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:288
  T6 = GET_D_CELL_VAL(slot_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:288
  T4_0 = T6;
  MV_SET_COUNT(1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:279
  return(T4_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM5I (D project_, D composite_object_) {
  D T3_0;
  D T3;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:291
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:294
  CONGRUENT_CALL_PROLOG(&Kcomposite_object_sizeVenvironment_protocols, 3);
  T3_0 = CONGRUENT_CALL3(project_, composite_object_, &KPempty_vectorVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:291
  return(T3_0);
}

D Kenvironment_object_content_countsVenvironment_protocolsMM6I (D project_, D collection_object_) {
  D T3_0;
  D T3;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:297
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:300
  CONGRUENT_CALL_PROLOG(&Kcollection_sizeVenvironment_protocols, 2);
  T3_0 = CONGRUENT_CALL2(project_, collection_object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:297
  return(T3_0);
}

static D Kdo_slotF156I (D s_) {
  D T1;
  D T2;
  DWORD T3;
  DWORD T4;
  D T5;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:283
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  T2 = GET_D_CELL_VAL(CREF(0));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  T3 = primitive_cast_integer_as_raw(T2);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  T4 = primitive_machine_word_add_signal_overflow(T3,4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  T5 = primitive_cast_raw_as_integer(T4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  SET_D_CELL_VAL(CREF(0), T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:285
  T1 = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:283
  MV_SET_COUNT(0);
  return(T1);
}

static D Kdo_methodF163I (D m_) {
  D T1;
  D T2;
  DWORD T3;
  DWORD T4;
  D T5;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:271
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  T2 = GET_D_CELL_VAL(CREF(0));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  T3 = primitive_cast_integer_as_raw(T2);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  T4 = primitive_machine_word_add_signal_overflow(T3,4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  T5 = primitive_cast_raw_as_integer(T4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  SET_D_CELL_VAL(CREF(0), T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:273
  T1 = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:271
  MV_SET_COUNT(0);
  return(T1);
}

static D Kdo_definitionF170I (D definition_) {
  D T1;
  D T2;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  D T9;
  DWORD T10;
  DWORD T11;
  D T12;
  D T13;
  DWORD T14;
  DWORD T15;
  D T16;
  D T17;
  DWORD T18;
  DWORD T19;
  D T20;
  D T21;
  DWORD T22;
  DWORD T23;
  D T24;
  D T25;
  DWORD T26;
  DWORD T27;
  D T28;
  D T29;
  DWORD T30;
  DWORD T31;
  D T32;
  D T33;
  DWORD T34;
  DWORD T35;
  D T36;
  D T37;
  D T38;
  D T39;
  D T40;
  D T41;
  D T42;
  D T43_0;
  D T44;
  D T45;
  D T46;
  D T47;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:239
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
  T9 = primitive_instanceQ(definition_,&KLmacro_objectGVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
  if (T9 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:242
    T2 = GET_D_CELL_VAL(CREF(6));
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:242
    T10 = primitive_cast_integer_as_raw(T2);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:242
    T11 = primitive_machine_word_add_signal_overflow(T10,4);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:242
    T12 = primitive_cast_raw_as_integer(T11);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:242
    SET_D_CELL_VAL(CREF(6), T12);
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
    T13 = primitive_instanceQ(definition_,&KLclass_objectGVenvironment_protocols);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
    if (T13 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:243
      T3 = GET_D_CELL_VAL(CREF(5));
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:243
      T14 = primitive_cast_integer_as_raw(T3);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:243
      T15 = primitive_machine_word_add_signal_overflow(T14,4);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:243
      T16 = primitive_cast_raw_as_integer(T15);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:243
      SET_D_CELL_VAL(CREF(5), T16);
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
      T17 = primitive_instanceQ(definition_,&KLconstant_objectGVenvironment_protocols);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
      if (T17 != &KPfalseVKi) {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:244
        T4 = GET_D_CELL_VAL(CREF(4));
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:244
        T18 = primitive_cast_integer_as_raw(T4);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:244
        T19 = primitive_machine_word_add_signal_overflow(T18,4);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:244
        T20 = primitive_cast_raw_as_integer(T19);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:244
        SET_D_CELL_VAL(CREF(4), T20);
      } else {
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
        T21 = primitive_instanceQ(definition_,&KLvariable_objectGVenvironment_protocols);
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
        if (T21 != &KPfalseVKi) {
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:245
          T5 = GET_D_CELL_VAL(CREF(3));
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:245
          T22 = primitive_cast_integer_as_raw(T5);
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:245
          T23 = primitive_machine_word_add_signal_overflow(T22,4);
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:245
          T24 = primitive_cast_raw_as_integer(T23);
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:245
          SET_D_CELL_VAL(CREF(3), T24);
        } else {
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
          T25 = primitive_instanceQ(definition_,&KLgeneric_function_objectGVenvironment_protocols);
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
          if (T25 != &KPfalseVKi) {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:246
            T6 = GET_D_CELL_VAL(CREF(2));
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:246
            T26 = primitive_cast_integer_as_raw(T6);
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:246
            T27 = primitive_machine_word_add_signal_overflow(T26,4);
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:246
            T28 = primitive_cast_raw_as_integer(T27);
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:246
            SET_D_CELL_VAL(CREF(2), T28);
          } else {
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
            T29 = primitive_instanceQ(definition_,&KLmethod_objectGVenvironment_protocols);
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
            if (T29 != &KPfalseVKi) {
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:247
              T7 = GET_D_CELL_VAL(CREF(1));
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:247
              T30 = primitive_cast_integer_as_raw(T7);
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:247
              T31 = primitive_machine_word_add_signal_overflow(T30,4);
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:247
              T32 = primitive_cast_raw_as_integer(T31);
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:247
              SET_D_CELL_VAL(CREF(1), T32);
            } else {
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
              T33 = primitive_instanceQ(definition_,&KLdomain_objectGVenvironment_protocols);
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
              if (T33 != &KPfalseVKi) {
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:248
                T8 = GET_D_CELL_VAL(CREF(0));
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:248
                T34 = primitive_cast_integer_as_raw(T8);
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:248
                T35 = primitive_machine_word_add_signal_overflow(T34,4);
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:248
                T36 = primitive_cast_raw_as_integer(T35);
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:248
                SET_D_CELL_VAL(CREF(0), T36);
              } else {
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                T37 = TdebuggingQTVKi;
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                if (T37 != &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T38 = Tdebug_partsTVKi;
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T39 = primitive_idQ(T38,&KPempty_listVKi);
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T40 = primitive_not(T39);
                  T41 = T40;
                } else {
                  T41 = &KPfalseVKi;
                }
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                if (T41 != &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T42 = Tdebug_partsTVKi;
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T43_0 = KmemberQVKdMM3I(IKJenvironment_protocols_, T42, &KPempty_vectorVKi, &KEEVKd);
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T44 = T43_0;
                  T45 = T44;
                } else {
                  T45 = &KPfalseVKi;
                }
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                if (T45 != &KPfalseVKi) {
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T46 = Tdebug_out_functionTVKi;
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  T1 = MAKE_CLOSURE_INITD(&Kanonymous_of_environment_object_content_countsF175, 1, definition_);
                  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
                  CALL1(T46, T1);
                }
                // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
              }
              // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
            }
            // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
          }
          // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
        }
        // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
      }
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:241
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:239
  T47 = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:239
  MV_SET_COUNT(0);
  return(T47);
}

static D Kanonymous_of_environment_object_content_countsF175I () {
  _KLsimple_object_vectorGVKd_2 T0 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T1;
  D T2_0;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
  T0.vector_element_[0] = &K176;
  T0.vector_element_[1] = CREF(0);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
  T1 = primitive_copy_vector(&T0);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
  T2_0 = T1;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:250
  MV_SET_COUNT(1);
  return(T2_0);
}

static D Kdo_moduleF184I (D m_) {
  D T2;
  D T3;
  D T4;
  DWORD T5;
  DWORD T6;
  D T7;
  D module_name_count_;
  DWORD T9;
  DWORD T10;
  DWORD T11;
  DWORD T12;
  D T13;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:219
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:220
  T3 = GET_D_CELL_VAL(CREF(1));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:220
  T5 = primitive_cast_integer_as_raw(T3);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:220
  T6 = primitive_machine_word_add_signal_overflow(T5,4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:220
  T7 = primitive_cast_raw_as_integer(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:220
  SET_D_CELL_VAL(CREF(1), T7);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:222
  module_name_count_ = Kenvironment_object_content_countsVenvironment_protocolsMM2I(CREF(2), m_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T4 = GET_D_CELL_VAL(CREF(0));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T9 = primitive_cast_integer_as_raw(T4);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T10 = primitive_cast_integer_as_raw(module_name_count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T11 = primitive_machine_word_logxor(T10,1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T12 = primitive_machine_word_add_signal_overflow(T9,T11);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T13 = primitive_cast_raw_as_integer(T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  SET_D_CELL_VAL(CREF(0), T13);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:223
  T2 = &KPfalseVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:219
  MV_SET_COUNT(0);
  return(T2);
}

static D Kmaybe_print_content_countF202I (D stream_, D count_, D content_type_, D Urest_, D prefix_, D suffix_) {
  D T7;
  D T8;
  D T9;
  D T10;
  DWORD T11;
  D T12;
  CAPTURE_KEYWORD_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:402
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:405
  T11 = primitive_cast_integer_as_raw(count_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:405
  T12 = primitive_machine_word_less_thanQ(1,T11);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:405
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:406
    T10 = GET_D_CELL_VAL(CREF(0));
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:406
    if (T10 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:407
      CONGRUENT_CALL_PROLOG(&KwriteYstreams_protocolVcommon_dylan, 3);
      CONGRUENT_CALL3(stream_, Dlist_separatorVenvironment_protocols, &KPempty_vectorVKi);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:406
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:409
    if (prefix_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:409
      CALL2(&KwriteYstreams_protocolVcommon_dylan, stream_, prefix_);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:409
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:410
    Kprint_content_countVenvironment_protocolsI(stream_, count_, content_type_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:411
    if (suffix_ != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:411
      CALL2(&KwriteYstreams_protocolVcommon_dylan, stream_, suffix_);
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:411
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:412
    SET_D_CELL_VAL(CREF(0), &KPtrueVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:412
    T7 = &KPfalseVKi;
    T9 = T7;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:405
    T8 = &KPfalseVKi;
    T9 = T8;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:405
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:402
  MV_SET_COUNT(0);
  return(T9);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM0I (D project_, D object_, D module_) {
  D T4_0;
  _KLsimple_object_vectorGVKd_2 T5 = {&KLsimple_object_vectorGVKdW, (D) 9};

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:26
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:30
  T5.vector_element_[0] = IKJqualify_namesQ_;
  T5.vector_element_[1] = &KPtrueVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:30
  CONGRUENT_CALL_PROLOG(&Kenvironment_object_unique_nameVenvironment_protocols, 4);
  T4_0 = CONGRUENT_CALL4(project_, object_, module_, &T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:26
  MV_SET_COUNT(1);
  return(T4_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM1I (D project_, D object_, D module_) {
  D home_name_;
  D name_;
  D home_module_;
  D home_library_;
  D module_name_;
  D library_name_;
  D location_;
  D type_name_;
  D T12_0;
  D T13_0;
  D T14;
  D T15;
  _KLsimple_object_vectorGVKd_9 T16 = {&KLsimple_object_vectorGVKdW, (D) 37};
  D T17_0;
  _KLsimple_object_vectorGVKd_2 T18 = {&KLsimple_object_vectorGVKdW, (D) 9};

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:33
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:38
  CONGRUENT_CALL_PROLOG(&Kenvironment_object_home_nameVenvironment_protocols, 2);
  home_name_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:39
  T15 = primitive_instanceQ(home_name_,&KLbinding_name_objectGVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:39
  if (T15 != &KPfalseVKi) {
    T14 = home_name_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:40
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_primitive_nameVenvironment_protocols, 2);
    name_ = CONGRUENT_CALL2(project_, T14);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:41
    CONGRUENT_CALL_PROLOG(&Kname_namespaceVenvironment_protocols, 2);
    home_module_ = CONGRUENT_CALL2(project_, T14);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:42
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_libraryVenvironment_protocols, 2);
    home_library_ = CONGRUENT_CALL2(project_, home_module_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:43
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_primitive_nameVenvironment_protocols, 2);
    module_name_ = CONGRUENT_CALL2(project_, home_module_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:44
    library_name_ = CALL2(&Kenvironment_object_primitive_nameVenvironment_protocols, project_, home_library_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:45
    CONGRUENT_CALL_PROLOG(&Kprint_environment_object_locationVenvironment_protocols, 3);
    location_ = CONGRUENT_CALL3(project_, object_, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:46
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_type_nameVenvironment_protocols, 1);
    type_name_ = CONGRUENT_CALL1(object_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:47
    T16.vector_element_[0] = module_name_;
    T16.vector_element_[1] = &K299;
    T16.vector_element_[2] = library_name_;
    T16.vector_element_[3] = &K300;
    T16.vector_element_[4] = location_;
    T16.vector_element_[5] = &K301;
    T16.vector_element_[6] = type_name_;
    T16.vector_element_[7] = &K302;
    T16.vector_element_[8] = name_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:47
    MIEP_CALL_PROLOG(&K260);
    T17_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K303, &T16);
    T13_0 = T17_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:54
    T18.vector_element_[0] = IKJqualify_namesQ_;
    T18.vector_element_[1] = &KPtrueVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:54
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_unique_nameVenvironment_protocols, 4);
    T12_0 = CONGRUENT_CALL4(project_, object_, module_, &T18);
    T13_0 = T12_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:39
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:33
  MV_SET_COUNT(1);
  return(T13_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM2I (D project_, D object_, D module_) {
  D class_;
  D T5;
  D T6;
  D T7_0;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17_0;
  _KLsimple_object_vectorGVKd_2 T18 = {&KLsimple_object_vectorGVKdW, (D) 9};
  _KLsimple_object_vectorGVKd_1 T19 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T20;
  D T21;
  _KLsimple_object_vectorGVKd_1 T22 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T23_0;
  D T24_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:59
  T8 = primitive_next_methods_parameter();
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:63
  T10 = primitive_instanceQ(object_,&KLdefinition_objectGVenvironment_protocols);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:63
  if (T10 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
    T13 = primitive_idQ(T8,&KPempty_listVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
    if (T13 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
      T16 = KerrorVKdMM1I(&K273, &KPempty_vectorVKi);
      T12 = T16;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
      T14 = SLOT_VALUE_INITD(T8, 0);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
      T15 = SLOT_VALUE_INITD(T8, 1);
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
      MEP_CALL_PROLOG(T14, T15, 3);
      T11 = MEP_CALL3(T14, project_, object_, module_);
      T12 = T11;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
    T17_0 = T12;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:64
    T24_0 = T17_0;
    {
      MV_CHECK_TYPE_PROLOGUE(T17_0);
      primitive_type_check(T24_0, &KLstringGVKd);
      MV_CHECK_TYPE_EPILOGUE();
    }
    T7_0 = T24_0;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:66
    CONGRUENT_CALL_PROLOG(&Kapplication_object_classVenvironment_protocols, 2);
    class_ = CONGRUENT_CALL2(project_, object_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:70
    T18.vector_element_[0] = IKJqualify_namesQ_;
    T18.vector_element_[1] = &KPtrueVKi;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:70
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_unique_nameVenvironment_protocols, 4);
    T5 = CONGRUENT_CALL4(project_, object_, module_, &T18);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:68
    T19.vector_element_[0] = T5;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:68
    T20 = Kformat_to_stringYformatVioMM0I(&K295, &T19);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:72
    if (class_ != &KPfalseVKi) {
      T9 = class_;
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:73
      ENGINE_NODE_CALL_PROLOG(&Kenvironment_object_descriptionVenvironment_protocols, &K296, 3);
      T21 = ENGINE_NODE_CALL3(&K296, project_, T9, module_);
      T6 = T21;
    } else {
      T6 = &KPempty_vectorVKi;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:72
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:67
    T22.vector_element_[0] = T6;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:67
    MIEP_CALL_PROLOG(&K260);
    T23_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, T20, &T22);
    T7_0 = T23_0;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:63
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:59
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM3I (D project_, D object_, D module_) {
  D size_;
  D T5;
  D T6;
  _KLsimple_object_vectorGVKd_2 T7 = {&KLsimple_object_vectorGVKdW, (D) 9};
  _KLsimple_object_vectorGVKd_1 T8 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T9;
  _KLsimple_object_vectorGVKd_1 T10 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T11;
  _KLsimple_object_vectorGVKd_1 T12 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T13_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:80
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:84
  CONGRUENT_CALL_PROLOG(&Kcollection_sizeVenvironment_protocols, 2);
  size_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:88
  T7.vector_element_[0] = IKJqualify_namesQ_;
  T7.vector_element_[1] = &KPtrueVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:88
  CONGRUENT_CALL_PROLOG(&Kenvironment_object_unique_nameVenvironment_protocols, 4);
  T5 = CONGRUENT_CALL4(project_, object_, module_, &T7);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:86
  T8.vector_element_[0] = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:86
  T9 = Kformat_to_stringYformatVioMM0I(&K290, &T8);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:90
  if (size_ != &KPfalseVKi) {
    T6 = size_;
  } else {
    T6 = &KPempty_stringVKi;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:90
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:90
  T10.vector_element_[0] = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:90
  T11 = Kformat_to_stringYformatVioMM0I(&K291, &T10);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:85
  T12.vector_element_[0] = T11;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:85
  MIEP_CALL_PROLOG(&K260);
  T13_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, T9, &T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:80
  MV_SET_COUNT(1);
  return(T13_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM4I (D project_, D object_, D module_) {
  D T4;
  D T5;
  D superclass_names_;
  D Utmp_;
  D T8_0;
  D T9_0;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D T17;
  D T18;
  D T19;
  D T20;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  T10 = primitive_next_methods_parameter();
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  T12 = primitive_idQ(T10,&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  if (T12 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    T15 = KerrorVKdMM1I(&K273, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    T16 = T15;
    T18 = T16;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    T13 = SLOT_VALUE_INITD(T10, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    T14 = SLOT_VALUE_INITD(T10, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    MEP_CALL_PROLOG(T13, T14, 3);
    T11 = MEP_CALL3(T13, project_, object_, module_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
    T17 = T11;
    T18 = T17;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:128
  T4 = MAKE_CLOSURE_INITD(&Kanonymous_of_environment_object_descriptionF286, 2, module_, project_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:131
  T5 = Kclass_direct_superclassesVenvironment_protocolsI(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:128
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T19 = CONGRUENT_CALL1(T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:128
  T20 = CALL3(&Kmap_as_oneVKi, T19, T4, T5);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:127
  primitive_type_check(T20, &KLsequenceGVKd);
  superclass_names_ = T20;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:132
  Utmp_ = Knames_Gname_listVenvironment_protocolsI(superclass_names_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  T8_0 = CALL2(&KconcatenateVKd, T18, Utmp_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  T9_0 = T8_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T8_0);
    primitive_type_check(T9_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:124
  MV_SET_COUNT(1);
  return(T9_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM5I (D project_, D object_, D module_) {
  D specializers_;
  D Utmp_;
  D T6_0;
  D T7;
  D T8;
  _KLsimple_object_vectorGVKd_1 T9 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T10;
  D T11_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  T7 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  T8 = T7;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:136
  CONGRUENT_CALL_PROLOG(&Kdomain_specializersVenvironment_protocols, 2);
  specializers_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:137
  Utmp_ = Knames_Gname_listVenvironment_protocolsI(specializers_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  T9.vector_element_[0] = Utmp_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T10 = CONGRUENT_CALL1(T8);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  T11_0 = APPLY3(&Kconcatenate_asVKd, T10, T8, &T9);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  T6_0 = T11_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T11_0);
    primitive_type_check(T6_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:135
  MV_SET_COUNT(1);
  return(T6_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM6I (D project_, D object_, D module_) {
  D T4;
  D T5;
  D T6_0;
  D T7_0;
  D T8;
  D T9;
  D T10;
  D T11;
  D T12;
  D T13;
  D T14;
  D T15;
  D T16;
  D Utmp_;
  _KLsimple_object_vectorGVKd_3 T18 = {&KLsimple_object_vectorGVKdW, (D) 13};
  D T19_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  T8 = primitive_next_methods_parameter();
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  T10 = primitive_idQ(T8,&KPempty_listVKi);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  if (T10 != &KPfalseVKi) {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    T13 = KerrorVKdMM1I(&K273, &KPempty_vectorVKi);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    T14 = T13;
    T16 = T14;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    T11 = SLOT_VALUE_INITD(T8, 0);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    T12 = SLOT_VALUE_INITD(T8, 1);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    MEP_CALL_PROLOG(T11, T12, 3);
    T9 = MEP_CALL3(T11, project_, object_, module_);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
    T15 = T9;
    T16 = T15;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:148
  T4 = Kprint_function_parametersVenvironment_protocolsI(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:150
  T5 = Kprint_function_valuesVenvironment_protocolsI(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:146
  T18.vector_element_[0] = T4;
  T18.vector_element_[1] = &K274;
  T18.vector_element_[2] = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:146
  MIEP_CALL_PROLOG(&K260);
  T19_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K275, &T18);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:146
  Utmp_ = T19_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  T6_0 = CALL2(&KconcatenateVKd, T16, Utmp_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  T7_0 = T6_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T6_0);
    primitive_type_check(T7_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:141
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM7I (D project_, D object_, D module_) {
  D T4_0;
  D T5;
  D T6;
  D T7;
  D Utmp_;
  _KLsimple_object_vectorGVKd_1 T9 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T10_0;
  _KLsimple_object_vectorGVKd_1 T11 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T12;
  D T13_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  T5 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  T6 = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:156
  T7 = Kenvironment_object_contentsVenvironment_protocolsMM0I(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:154
  T9.vector_element_[0] = T7;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:154
  MIEP_CALL_PROLOG(&K260);
  T10_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K266, &T9);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:154
  Utmp_ = T10_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  T11.vector_element_[0] = Utmp_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T12 = CONGRUENT_CALL1(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  T13_0 = APPLY3(&Kconcatenate_asVKd, T12, T6, &T11);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  T4_0 = T13_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T13_0);
    primitive_type_check(T4_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:153
  MV_SET_COUNT(1);
  return(T4_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM8I (D project_, D object_, D module_) {
  D T4_0;
  D T5;
  D T6;
  _KLsimple_object_vectorGVKd_1 T7 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T8;
  D T9_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  T5 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  T6 = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  T7.vector_element_[0] = &KPempty_stringVKi;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T8 = CONGRUENT_CALL1(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  T9_0 = APPLY3(&Kconcatenate_asVKd, T8, T6, &T7);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  T4_0 = T9_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T9_0);
    primitive_type_check(T4_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:159
  MV_SET_COUNT(1);
  return(T4_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM9I (D project_, D object_, D module_) {
  D T4_0;
  D T5;
  D T6;
  D T7;
  D Utmp_;
  _KLsimple_object_vectorGVKd_1 T9 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T10_0;
  _KLsimple_object_vectorGVKd_1 T11 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T12;
  D T13_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  T5 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  T6 = T5;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:166
  T7 = Kenvironment_object_contentsVenvironment_protocolsMM0I(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:164
  T9.vector_element_[0] = T7;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:164
  MIEP_CALL_PROLOG(&K260);
  T10_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K266, &T9);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:164
  Utmp_ = T10_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  T11.vector_element_[0] = Utmp_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T12 = CONGRUENT_CALL1(T6);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  T13_0 = APPLY3(&Kconcatenate_asVKd, T12, T6, &T11);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  T4_0 = T13_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T13_0);
    primitive_type_check(T4_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:163
  MV_SET_COUNT(1);
  return(T4_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM10I (D project_, D object_, D module_) {
  D type_;
  D T5;
  D T6;
  D T7_0;
  D T8;
  D T9;
  D T10;
  D Utmp_;
  _KLsimple_object_vectorGVKd_1 T12 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T13_0;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;
  D T16_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  T9 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  T10 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:170
  CONGRUENT_CALL_PROLOG(&Kvariable_typeVenvironment_protocols, 2);
  type_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:173
  if (type_ != &KPfalseVKi) {
    T8 = type_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:174
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_display_nameVenvironment_protocols, 4);
    T5 = CONGRUENT_CALL4(project_, T8, module_, &KPempty_vectorVKi);
    T6 = T5;
  } else {
    T6 = DunknownVenvironment_protocols;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:173
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:171
  T12.vector_element_[0] = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:171
  MIEP_CALL_PROLOG(&K260);
  T13_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K259, &T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:171
  Utmp_ = T13_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  T14.vector_element_[0] = Utmp_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T15 = CONGRUENT_CALL1(T10);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  T16_0 = APPLY3(&Kconcatenate_asVKd, T15, T10, &T14);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  T7_0 = T16_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T16_0);
    primitive_type_check(T7_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:169
  MV_SET_COUNT(1);
  return(T7_0);
}

D Kenvironment_object_descriptionVenvironment_protocolsMM11I (D project_, D object_, D module_) {
  D type_;
  D T5;
  D T6;
  D T7_0;
  D T8;
  D T9;
  D T10;
  D Utmp_;
  _KLsimple_object_vectorGVKd_1 T12 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T13_0;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (D) 5};
  D T15;
  D T16_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  T9 = Kenvironment_object_descriptionVenvironment_protocolsMM1I(project_, object_, module_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  T10 = T9;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:181
  CONGRUENT_CALL_PROLOG(&Kvariable_typeVenvironment_protocols, 2);
  type_ = CONGRUENT_CALL2(project_, object_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:184
  if (type_ != &KPfalseVKi) {
    T8 = type_;
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:185
    CONGRUENT_CALL_PROLOG(&Kenvironment_object_display_nameVenvironment_protocols, 4);
    T5 = CONGRUENT_CALL4(project_, T8, module_, &KPempty_vectorVKi);
    T6 = T5;
  } else {
    T6 = DunknownVenvironment_protocols;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:184
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:182
  T12.vector_element_[0] = T6;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:182
  MIEP_CALL_PROLOG(&K260);
  T13_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K259, &T12);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:182
  Utmp_ = T13_0;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  T14.vector_element_[0] = Utmp_;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  CONGRUENT_CALL_PROLOG(&Ktype_for_copyVKd, 1);
  T15 = CONGRUENT_CALL1(T10);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  T16_0 = APPLY3(&Kconcatenate_asVKd, T15, T10, &T14);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  T7_0 = T16_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T16_0);
    primitive_type_check(T7_0, &KLstringGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:180
  MV_SET_COUNT(1);
  return(T7_0);
}

D Knames_Gname_listVenvironment_protocolsI (D names_) {
  D Uobject_;
  D T3;
  D T4;
  D T5;
  D T6;
  D T7;
  D T8;
  _KLsimple_object_vectorGVKd_2 T9 = {&KLsimple_object_vectorGVKdW, (D) 9};
  D T10_0;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:106
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
  CONGRUENT_CALL_PROLOG(&KsizeVKd, 1);
  Uobject_ = CONGRUENT_CALL1(names_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
  T7 = primitive_idQ(Uobject_,(D) 1);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
  if (T7 != &KPfalseVKi) {
    T6 = &KPempty_stringVKi;
  } else {
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
    T8 = primitive_idQ(Uobject_,(D) 5);
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
    if (T8 != &KPfalseVKi) {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:113
      CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
      T3 = CONGRUENT_CALL3(names_, (D) 1, &KPempty_vectorVKi);
      T5 = T3;
    } else {
      // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:115
      CONGRUENT_CALL_PROLOG(&Kreduce1VKd, 2);
      T4 = CONGRUENT_CALL2(&Kanonymous_of_names_Gname_listF281, names_);
      T5 = T4;
    }
    // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
    T6 = T5;
  }
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:111
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:109
  T9.vector_element_[0] = T6;
  T9.vector_element_[1] = &K32;
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:109
  MIEP_CALL_PROLOG(&K260);
  T10_0 = Kconcatenate_asVKdMM3I(&KLbyte_stringGVKd, &K27, &T9);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:106
  MV_SET_COUNT(1);
  return(T10_0);
}

static D Kanonymous_of_names_Gname_listF281I (D names_so_far_, D new_name_) {
  D T2;

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:116
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:117
  T2 = CALL3(&KconcatenateVKd, names_so_far_, &K30, new_name_);
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:116
  return(T2);
}

static D Kanonymous_of_environment_object_descriptionF286I (D class_object_) {
  D T1;
  CAPTURE_ENVIRONMENT

  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:128
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:129
  T1 = CALL3(&Kenvironment_object_display_nameVenvironment_protocols, CREF(1), class_object_, CREF(0));
  // /Users/bruce/Development/dylan/opendylan/sources/environment/protocols/utils.dylan:128
  return(T1);
}


/* SYSTEM INIT CODE */

void _Init_environment_protocols__X_utils_for_system () {
  extern D KPresolve_symbolVKiI(D);
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJabsolute_pathQ_);
    if (T0 != &KJabsolute_pathQ_) {
      primitive_repeated_slot_value_setter(T0, &K21, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K10, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJclear_contentsQ_);
    if (T0 != &KJclear_contentsQ_) {
      IKJclear_contentsQ_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJslot_);
    if (T0 != &KJslot_) {
      IKJslot_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJlibrary_);
    if (T0 != &KJlibrary_) {
      IKJlibrary_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJmodule_);
    if (T0 != &KJmodule_) {
      IKJmodule_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJdefinition_);
    if (T0 != &KJdefinition_) {
      IKJdefinition_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJunbound_);
    if (T0 != &KJunbound_) {
      IKJunbound_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJelement_);
    if (T0 != &KJelement_) {
      IKJelement_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJmacro_);
    if (T0 != &KJmacro_) {
      IKJmacro_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJvariable_);
    if (T0 != &KJvariable_) {
      IKJvariable_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJmethod_);
    if (T0 != &KJmethod_) {
      IKJmethod_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJdomain_);
    if (T0 != &KJdomain_) {
      IKJdomain_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJenvironment_protocols_);
    if (T0 != &KJenvironment_protocols_) {
      IKJenvironment_protocols_ = T0;
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJprefix_);
    if (T0 != &KJprefix_) {
      primitive_repeated_slot_value_setter(T0, &K210, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K204, 1, 0);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJsuffix_);
    if (T0 != &KJsuffix_) {
      primitive_repeated_slot_value_setter(T0, &K210, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K204, 1, 2);
    }
  }
  {
    D T0;

    T0 = KPresolve_symbolVKiI(&KJqualify_namesQ_);
    if (T0 != &KJqualify_namesQ_) {
      IKJqualify_namesQ_ = T0;
    }
  }
  return;
}

/* USER INIT CODE */

void _Init_environment_protocols__X_utils_for_user () {
  return;
}


/* eof */
