#include "opendylan/run-time.h"

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

/* Typedefs for referenced classes */

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

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

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

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

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

typedef struct {
  dylan_value wrapper;
} _KLbooleanGVKd;

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    dylan_value vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(4);
define__KLsimple_object_vectorGVKd(11);
define__KLsimple_object_vectorGVKd(5);
define__KLsimple_object_vectorGVKd(10);
define__KLsimple_object_vectorGVKd(14);
define__KLsimple_object_vectorGVKd(12);
define__KLsimple_object_vectorGVKd(13);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(16);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(8);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(0);
define__KLsimple_object_vectorGVKd(6);

typedef struct {
  dylan_value wrapper;
  dylan_value macro_word_class_;
  dylan_value macro_expander_function_;
  dylan_value macro_referenced_names_;
  dylan_value macro_suffix_;
} _KLsuffixed_macro_descriptorGVdfmc_macro_expander;

typedef struct {
  dylan_value wrapper;
} _KLobjectGVKd;

typedef struct {
  dylan_value wrapper;
} _KLunboundGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value object_dood_state_;
  dylan_value proxy_address_;
} _KLdood_address_proxyGVdood;

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

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

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(24);
define__KLbyte_stringGVKd(21);
define__KLbyte_stringGVKd(11);
define__KLbyte_stringGVKd(15);
define__KLbyte_stringGVKd(13);
define__KLbyte_stringGVKd(23);
define__KLbyte_stringGVKd(10);
define__KLbyte_stringGVKd(17);
define__KLbyte_stringGVKd(6);
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(22);
define__KLbyte_stringGVKd(14);
define__KLbyte_stringGVKd(8);

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

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

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value method_slot_descriptor_;
} _KLgetter_methodGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value slot_descriptor_properties_;
  dylan_value init_data_slot_;
  dylan_value slot_owner_;
  dylan_value init_keyword_;
  dylan_value slot_getter_;
  dylan_value slot_setter_;
  dylan_value slot_type_;
} _KLinstance_slot_descriptorGVKe;

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

typedef struct {
  dylan_value wrapper;
  dylan_value element_type_;
  dylan_value table_vector_;
  dylan_value initial_entries_;
  dylan_value grow_size_function_;
  dylan_value weakQ_;
} _KLobject_tableGVKd;

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value class_properties_;
  dylan_value iclass_class_;
  dylan_value class_mm_wrapper_;
  dylan_value repeated_slot_descriptor_;
  dylan_value instance_slot_descriptors_;
  dylan_value iclass_dispatch_key_;
  dylan_value class_constructor_;
  dylan_value direct_superclasses_;
  dylan_value class_rcpl_vector_;
  dylan_value class_rcpl_position_;
  dylan_value class_rcpl_other_positions_;
  dylan_value class_known_joint_;
  dylan_value iclass_dependent_generics_;
  dylan_value iclass_subclass_dependent_generics_;
  dylan_value direct_subclasses_;
  dylan_value direct_methods_;
  dylan_value direct_slot_descriptors_;
  dylan_value slot_descriptors_;
  dylan_value direct_inherited_slot_descriptors_;
  dylan_value direct_initialization_argument_descriptors_;
  dylan_value class_slot_descriptors_;
  dylan_value defaulted_initialization_arguments_slot_;
  dylan_value class_slot_storage_;
} _KLimplementation_classGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value slot_descriptor_properties_;
  dylan_value init_data_slot_;
  dylan_value slot_owner_;
  dylan_value init_keyword_;
  dylan_value slot_getter_;
  dylan_value slot_setter_;
  dylan_value slot_type_;
} _KLvirtual_slot_descriptorGVKi;

typedef struct {
  dylan_value wrapper;
} _KLdood_mapped_objectGVdood;

typedef struct {
  dylan_value wrapper;
} _KLform_propertiesGVdfmc_common;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
} _KLtop_level_form_propertiesGVdfmc_common;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
} _KLinstallable_form_propertiesGVdfmc_common;

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
} _KLvariable_defining_form_propertiesGVdfmc_common;

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

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

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value compilation_record_original_library_;
  dylan_value private_compilation_record_module_;
  dylan_value private_compilation_record_top_level_forms_;
  dylan_value compilation_record_definitions_installedQ_;
  dylan_value compilation_record_model_heap_;
  dylan_value private_compilation_record_heap_referenced_objects_;
  dylan_value compilation_record_needs_linkingQ_;
  dylan_value compilation_record_sequence_number_;
  dylan_value compilation_record_source_record_;
  dylan_value compilation_record_source_line_count_;
  dylan_value compilation_record_model_properties_;
  dylan_value private_compilation_record_dependency_table_;
  dylan_value private_compilation_record_dispatch_decisions_;
  dylan_value compilation_record_inline_only_table_;
  dylan_value private_compilation_record_back_end_data_;
  dylan_value compilation_record_approximate_model_heap_size_;
  dylan_value compilation_record_data_size_;
  dylan_value compilation_record_code_size_;
  dylan_value compilation_record_preceding_line_count_;
} _KLcompilation_recordGVdfmc_common;

typedef struct {
  dylan_value wrapper;
} _KLintegerGVKd;

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value object_dood_state_;
  dylan_value proxy_address_;
} _KLdood_slot_value_proxyGVdood;

typedef struct {
  dylan_value wrapper;
} _KLsequenceGVKd;

typedef struct {
  dylan_value wrapper;
} _KLvariable_nameGVdfmc_common;

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

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

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

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

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value subclass_class_;
} _KLsubclassGVKe;

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

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

typedef struct {
  dylan_value wrapper;
  dylan_value private_shadowable_form_init_method_;
  dylan_value private_shadowable_form_system_init_method_;
  dylan_value shadowable_form_properties_flags_;
  dylan_value private_shadowable_form_model_;
} _KLmodifying_form_propertiesGVdfmc_common;

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

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

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

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


/* Typedefs for defined classes */

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

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


/* Referenced object declarations */

dylan_value KPadd_classVKeI (dylan_value);
dylan_value KPadd_a_methodVKnI (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe Kdood_lazy_gettersVdood;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLlibraryGVKe Kdfmc_definitions_libraryYdylan_userVdfmc_definitions;
extern _KLclassGVKd KLlibraryGVKe;
extern _KLmm_wrapperGVKi_0 KLlibraryGVKeW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLincremental_generic_functionGVKe Kinitialize_packed_slotsVKe;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLclassGVKd KLsuffixed_macro_descriptorGVdfmc_macro_expander;
extern _KLmm_wrapperGVKi_0 KLsuffixed_macro_descriptorGVdfmc_macro_expanderW;
dylan_value Kdo_define_core_macroVdfmc_definitionsMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLdood_address_proxyGVdood;
extern _KLmm_wrapperGVKi_0 KLdood_address_proxyGVdoodW;
dylan_value Kobject_classVKdI (dylan_value);
extern _KLsealed_generic_functionGVKe Kproxy_slot_descriptorVdood;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLincremental_generic_functionGVKe KelementVKd;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLsealed_generic_functionGVKe Kslot_getterVKe;
dylan_value Kdepth_format_outVdoodI (dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe KAVKd;
extern _KLsimple_methodGVKe Kdood_force_slot_value_proxyVdood;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLsimple_methodGVKe Kwalker_slot_value_setterVwalker;
extern _KLincremental_generic_functionGVKe K_VKd;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
extern _KLclassGVKd KLgetter_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLgetter_methodGVKiW;
extern _KLclassGVKd KLinstance_slot_descriptorGVKe;
extern _KLmm_wrapperGVKi_0 KLinstance_slot_descriptorGVKeW;
extern _KLsymbolGVKd KJsignature_;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
extern _KLsealed_generic_functionGVKe Kcall_as_fragment_tokensVdfmc_macro_expander;
dylan_value Kdylan_variable_nameVdfmc_readerI (dylan_value);
dylan_value Kmacro_main_rule_match_errorVdfmc_macro_expanderI (dylan_value, dylan_value);
extern _KLsealed_generic_functionGVKe Kexport_fragment_tokensVdfmc_macro_expander;
extern _KLsealed_generic_functionGVKe Kfragment_recordVdfmc_reader;
extern _KLsealed_generic_functionGVKe Kfragment_source_positionVdfmc_reader;
dylan_value KLobject_tableGZ32ZconstructorVKiMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLclassGVKd KLobject_tableGVKd;
extern _KLmm_wrapperGVKi_0 KLobject_tableGVKdW;
extern _KLsimple_methodGVKe Kdefault_grow_sizeVKe;
extern _KLincremental_generic_functionGVKe Kremove_all_keysXVKe;
dylan_value Kmake_name_fragmentVdfmc_macro_expanderI (dylan_value);
extern _KLsealed_generic_functionGVKe Kimport_to_templateVdfmc_macro_expander;
extern _KLsymbolGVKd KJconstant_;
dylan_value Kmake_equal_fragmentVdfmc_macro_expanderI ();
extern _KLsymbolGVKd KJend_;
dylan_value Kmake_templateVdfmc_macro_expanderI (dylan_value);
dylan_value Kmatch_end_of_modifiersVdfmc_macro_expanderI (dylan_value);
dylan_value Kmatch_name_constraintVdfmc_macro_expanderI (dylan_value);
dylan_value KlistVKdI (dylan_value);
extern _KLincremental_generic_functionGVKe KconcatenateXYcommon_extensionsVcommon_dylan;
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LlistG_typesVKi;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_2VKi;
extern _KLclassGVKd KLimplementation_classGVKe;
extern _KLmm_wrapperGVKi_0 KLimplementation_classGVKeW;
extern _KLinstance_slot_descriptorGVKe Kprivate_shadowable_form_init_methodVdfmc_commonHLtop_level_form_propertiesG;
extern _KLinstance_slot_descriptorGVKe Kprivate_shadowable_form_system_init_methodVdfmc_commonHLtop_level_form_propertiesG;
extern _KLinstance_slot_descriptorGVKe Kshadowable_form_properties_flagsVdfmc_commonHLtop_level_form_propertiesG;
extern _KLinstance_slot_descriptorGVKe Kform_compilation_recordVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_source_locationVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_parent_formVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kform_sequence_numberVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_dependenciesVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_referenced_variablesVdfmc_commonHLtop_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_adjectivesVdfmc_commonHLmodified_top_level_formG;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_variable_name_or_namesVdfmc_commonHLvariable_defining_formG;
extern _KLvirtual_slot_descriptorGVKi Kform_models_installedQVdfmc_commonHLvariable_defining_formG;
extern _KLclassGVKd KLvirtual_slot_descriptorGVKi;
extern _KLmm_wrapperGVKi_0 KLvirtual_slot_descriptorGVKiW;
extern _KLinstance_slot_descriptorGVKe Kform_propertiesVdfmc_commonHLvariable_defining_formG;
extern _KLclassGVKd KLdood_mapped_objectGVdood;
extern _KLmm_wrapperGVKi_0 KLdood_mapped_objectGVdoodW;
extern _KLclassGVKd KLform_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLform_propertiesGVdfmc_commonW;
extern _KLclassGVKd KLtop_level_form_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLtop_level_form_propertiesGVdfmc_commonW;
extern _KLclassGVKd KLinstallable_form_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLinstallable_form_propertiesGVdfmc_commonW;
extern _KLclassGVKd KLvariable_defining_form_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLvariable_defining_form_propertiesGVdfmc_commonW;
extern _KLclassGVKd KLtop_level_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLtop_level_formGVdfmc_commonW;
extern _KLclassGVKd KLmodified_top_level_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLmodified_top_level_formGVdfmc_commonW;
extern _KLclassGVKd KLdefining_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLdefining_formGVdfmc_commonW;
extern _KLclassGVKd KLvariable_defining_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLvariable_defining_formGVdfmc_commonW;
dylan_value KerrorVKdMM1I (dylan_value, dylan_value);
dylan_value Kcurrent_compilation_recordVdfmc_commonI ();
extern _KLclassGVKd KLcompilation_recordGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLcompilation_recordGVdfmc_commonW;
dylan_value Knext_form_sequence_numberVdfmc_commonI ();
extern _KLclassGVKd KLintegerGVKd;
extern _KLmm_wrapperGVKi_0 KLintegerGVKdW;
dylan_value KinitializeVKdMdfmc_commonM0I (dylan_value, dylan_value);
extern _KLkeyword_methodGVKe KinitializeVKdMM1;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
dylan_value Kunion_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLdood_slot_value_proxyGVdood;
extern _KLmm_wrapperGVKi_0 KLdood_slot_value_proxyGVdoodW;
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
extern _KLclassGVKd KLvariable_nameGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLvariable_nameGVdfmc_commonW;
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
dylan_value Ksingleton_pointer_idQ_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LclassG_typesVKi;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
dylan_value Kclass_instanceQ_initialVKiI (dylan_value, dylan_value);
extern _KLmoduleGVKe Kdfmc_definitions_moduleYdylan_userVdfmc_definitions;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
extern _KLclassGVKd KLkeyword_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureGVKeW;
extern _KLsealed_generic_functionGVKe KconcatenateVKd;
extern _KLclassGVKd KLlistGVKd;
extern _KLmm_wrapperGVKi_0 KLlistGVKdW;
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLclassGVKd KLsubclassGVKe;
extern _KLmm_wrapperGVKi_0 KLsubclassGVKeW;
dylan_value Ksubclass_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLexplicitly_typed_variable_defining_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLexplicitly_typed_variable_defining_formGVdfmc_commonW;
extern _KLclassGVKd KLcompiler_booted_formGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLcompiler_booted_formGVdfmc_definitionsW;
extern _KLclassGVKd KLmodifying_form_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLmodifying_form_propertiesGVdfmc_commonW;
extern _KLclassGVKd KLmodifying_formGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLmodifying_formGVdfmc_commonW;
dylan_value Kgeneral_rcpl_class_instanceQVKiI (dylan_value, dylan_value);
extern _KLsealed_generic_functionGVKe Kform_define_wordVdfmc_common;
extern _KLsymbolGVKd KJfunction_;
extern _KLclassGVKd KLprimitive_definitionGVdfmc_definitions;
extern _KLclassGVKd KLmethod_defining_formGVdfmc_definitions;
extern _KLclassGVKd KLgeneric_definitionGVdfmc_definitions;
extern dylan_value Ttrace_allocationQTVdood;
extern dylan_value Tprint_depthTVdood;
extern dylan_value Texpansion_source_locationTVdfmc_macro_expander;
extern dylan_value Texpansion_fragment_cacheTVdfmc_macro_expander;
extern dylan_value Dshared_expansion_fragment_cacheVdfmc_macro_expander;

/* Defined object declarations */

extern _KLclassGVKd KLfunction_defining_formGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLfunction_defining_formGVdfmc_definitionsW;
extern _KLsimple_methodGVKe Kdood_lazy_gettersVdoodMdfmc_definitionsM25;
dylan_value Kdood_lazy_gettersVdoodMdfmc_definitionsM25I (dylan_value);
extern _KLkeyword_methodGVKe Kinitialize_packed_slotsVKeMdfmc_definitionsM5;
dylan_value Kinitialize_packed_slotsVKeMdfmc_definitionsM5I (dylan_value, dylan_value);
static _KLsymbolGVKd KJword_class_;
static _KLsymbolGVKd KJsuffix_;
static _KLbyte_stringGVKd_8 K12;
static _KLsymbolGVKd KJexpander_function_;
extern _KLsimple_methodGVKe Kfunction_definer_expanderVdfmc_definitionsMM0;
dylan_value Kfunction_definer_expanderVdfmc_definitionsMM0I (dylan_value, dylan_value);
static _KLsymbolGVKd KJfunction_definer_;
extern _KLinstance_slot_descriptorGVKe Kprivate_form_signatureVdfmc_definitionsHLfunction_defining_formG;
dylan_value Kform_signatureVdfmc_definitionsMM0I (dylan_value);
extern _KLsealed_generic_functionGVKe Kprivate_form_signatureVdfmc_definitions;
static _KLbyte_stringGVKd_14 K20;
extern _KLgetter_methodGVKi Kprivate_form_signatureVdfmc_definitionsMM0;
static _KLpairGVKd K22;
static _KLbyte_stringGVKd_22 K23;
static _KLbyte_stringGVKd_16 K24;
static dylan_value KUwildcard_loopUF33I (dylan_value, dylan_value);
static dylan_value Kanonymous_of_function_definer_expanderF27I (dylan_value, dylan_value, dylan_value);
static _KLsymbolGVKd KJdefine_;
static _KLsymbolGVKd KJmethod_;
static _KLbyte_stringGVKd_6 K30;
static _KLbyte_stringGVKd_6 K31;
static _KLsimple_closure_methodGVKi_0 KUwildcard_loopUF33;
static _KLsignatureGVKe K34;
static _KLbyte_stringGVKd_17 K35;
static _KLbyte_stringGVKd_6 K36;
static _KLbyte_stringGVKd_10 K37;
extern _KLclassGVKd KLfunction_definitionGVdfmc_definitions;
extern _KLmm_wrapperGVKi_0 KLfunction_definitionGVdfmc_definitionsW;
static _KLimplementation_classGVKe K40;
static _KLsimple_object_vectorGVKd_13 K41;
extern _KLkeyword_methodGVKe KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0;
dylan_value KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLsimple_object_vectorGVKd_1 K44;
static _KLsimple_object_vectorGVKd_12 K45;
static _KLsimple_object_vectorGVKd_14 K46;
static _KLsymbolGVKd KJsource_location_;
static _KLbyte_stringGVKd_23 K48;
static _KLsymbolGVKd KJadjectives_;
static _KLsymbolGVKd KJvariable_name_;
static _KLunionGVKe K51;
static _KLunionGVKe K52;
static _KLunionGVKe K53;
static _KLpairGVKd K54;
static _KLunionGVKe K55;
static _KLunionGVKe K56;
static _KLsingletonGVKd K57;
static _KLunionGVKe K58;
static _KLbyte_stringGVKd_13 K59;
static _KLbyte_stringGVKd_10 K60;
static _KLbyte_stringGVKd_15 K61;
static _KLkeyword_signatureAvaluesGVKi K62;
static _KLsimple_object_vectorGVKd_10 K63;
static _KLsymbolGVKd KJparent_form_;
static _KLbyte_stringGVKd_11 K65;
static _KLsimple_object_vectorGVKd_5 K66;
static _KLsimple_object_vectorGVKd_1 K67;
static _KLbyte_stringGVKd_21 K68;
extern _KLsealed_generic_functionGVKe Kform_signatureVdfmc_definitions;
extern _KLsimple_methodGVKe Kform_signatureVdfmc_definitionsMM0;
static _KLpairGVKd K71;
static _KLsignatureGVKe K72;
static _KLbyte_stringGVKd_14 K73;
static _KLbyte_stringGVKd_15 K74;
static _KLkeyword_signatureGVKe K75;
static _KLsignatureAvaluesGVKi K76;
static _KLsimple_object_vectorGVKd_1 K77;
static _KLsubclassGVKe K78;
static _KLimplementation_classGVKe K79;
extern _KLkeyword_methodGVKe KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0;
dylan_value KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLsimple_object_vectorGVKd_1 K82;
static _KLsimple_object_vectorGVKd_11 K83;
static _KLsimple_object_vectorGVKd_2 K84;
static _KLsimple_object_vectorGVKd_4 K85;
static _KLsimple_object_vectorGVKd_1 K86;
static _KLkeyword_signatureAvaluesGVKi K87;
static _KLbyte_stringGVKd_24 K88;
extern _KLsimple_methodGVKe Kform_define_wordVdfmc_commonMdfmc_definitionsM4;
dylan_value Kform_define_wordVdfmc_commonMdfmc_definitionsM4I (dylan_value);
static _KLsignatureAvaluesGVKi K92;
static _KLsimple_object_vectorGVKd_1 K93;
static _KLpairGVKd K94;
static _KLpairGVKd K95;
static _KLpairGVKd K96;
static _KLpairGVKd K97;

/* Indirection variables */

static dylan_value IKJword_class_ = &KJword_class_;
static dylan_value IKJsuffix_ = &KJsuffix_;
static dylan_value IKJexpander_function_ = &KJexpander_function_;
static dylan_value IKJfunction_definer_ = &KJfunction_definer_;
static dylan_value IKJdefine_ = &KJdefine_;
static dylan_value IKJmethod_ = &KJmethod_;
static dylan_value IKJsource_location_ = &KJsource_location_;
static dylan_value IKJadjectives_ = &KJadjectives_;
static dylan_value IKJvariable_name_ = &KJvariable_name_;
static dylan_value IKJparent_form_ = &KJparent_form_;

/* Variables */

dylan_value Lfunction_defining_formGVdfmc_definitions = &KLfunction_defining_formGVdfmc_definitions;
dylan_value form_signatureVdfmc_definitions = &Kform_signatureVdfmc_definitions;
dylan_value Lfunction_definitionGVdfmc_definitions = &KLfunction_definitionGVdfmc_definitions;

/* Objects */

_KLclassGVKd KLfunction_defining_formGVdfmc_definitions = {
  &KLclassGVKdW /* wrapper */,
  &Kgeneral_rcpl_class_instanceQVKiI,
  &K88,
  &K79,
  (dylan_value) 1,
  &Kdfmc_definitions_moduleYdylan_userVdfmc_definitions
};

_KLmm_wrapperGVKi_0 KLfunction_defining_formGVdfmc_definitionsW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K79,
  (dylan_value) 1,
  53,
  33554439,
  (dylan_value) 1
};

_KLsimple_methodGVKe Kdood_lazy_gettersVdoodMdfmc_definitionsM25 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K76,
  &Kdood_lazy_gettersVdoodMdfmc_definitionsM25I
};

_KLkeyword_methodGVKe Kinitialize_packed_slotsVKeMdfmc_definitionsM5 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_2,
  &K75,
  &key_mep_2,
  &Kinitialize_packed_slotsVKeMdfmc_definitionsM5I,
  &KPempty_vectorVKi
};

static _KLsymbolGVKd KJword_class_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K37
};

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

static _KLbyte_stringGVKd_8 K12 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 33,
  "-definer"
};

static _KLsymbolGVKd KJexpander_function_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K35
};

_KLsimple_methodGVKe Kfunction_definer_expanderVdfmc_definitionsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &KDsignature_LobjectG_object_rest_value_2VKi,
  &Kfunction_definer_expanderVdfmc_definitionsMM0I
};

static _KLsymbolGVKd KJfunction_definer_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K24
};

_KLinstance_slot_descriptorGVKe Kprivate_form_signatureVdfmc_definitionsHLfunction_defining_formG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 193,
  &KPfalseVKi,
  &KLfunction_defining_formGVdfmc_definitions,
  &KJsignature_,
  &Kprivate_form_signatureVdfmc_definitions,
  &KPfalseVKi,
  &KLobjectGVKd
};

_KLsealed_generic_functionGVKe Kprivate_form_signatureVdfmc_definitions = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  (dylan_value) 1,
  &K23,
  &K22,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLbyte_stringGVKd_14 K20 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 57,
  "FORCING %= %=\n"
};

_KLgetter_methodGVKi Kprivate_form_signatureVdfmc_definitionsMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kprivate_form_signatureVdfmc_definitionsHLfunction_defining_formG
};

static _KLpairGVKd K22 = {
  &KLpairGVKdW /* wrapper */,
  &Kprivate_form_signatureVdfmc_definitionsMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_22 K23 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 89,
  "private-form-signature"
};

static _KLbyte_stringGVKd_16 K24 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 65,
  "function-definer"
};

static _KLsymbolGVKd KJdefine_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K31
};

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

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

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

static _KLsimple_closure_methodGVKi_0 KUwildcard_loopUF33 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_2,
  &K34,
  &KUwildcard_loopUF33I,
  (dylan_value) 1
};

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

static _KLbyte_stringGVKd_17 K35 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 69,
  "expander-function"
};

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

static _KLbyte_stringGVKd_10 K37 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 41,
  "word-class"
};

_KLclassGVKd KLfunction_definitionGVdfmc_definitions = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K68,
  &K40,
  (dylan_value) 1,
  &Kdfmc_definitions_moduleYdylan_userVdfmc_definitions
};

_KLmm_wrapperGVKi_0 KLfunction_definitionGVdfmc_definitionsW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K40,
  (dylan_value) 1,
  53,
  33554439,
  (dylan_value) 1
};

static _KLimplementation_classGVKe K40 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 477102133,
  &KLfunction_definitionGVdfmc_definitions,
  &KLfunction_definitionGVdfmc_definitionsW,
  &KPfalseVKi,
  &K41,
  (dylan_value) -3,
  &KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0,
  &K44,
  &K45,
  (dylan_value) 45,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K46,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_13 K41 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 53,
  &Kprivate_shadowable_form_init_methodVdfmc_commonHLtop_level_form_propertiesG,
  &Kprivate_shadowable_form_system_init_methodVdfmc_commonHLtop_level_form_propertiesG,
  &Kshadowable_form_properties_flagsVdfmc_commonHLtop_level_form_propertiesG,
  &Kform_compilation_recordVdfmc_commonHLtop_level_formG,
  &Kprivate_form_source_locationVdfmc_commonHLtop_level_formG,
  &Kprivate_form_parent_formVdfmc_commonHLtop_level_formG,
  &Kform_sequence_numberVdfmc_commonHLtop_level_formG,
  &Kprivate_form_dependenciesVdfmc_commonHLtop_level_formG,
  &Kprivate_form_referenced_variablesVdfmc_commonHLtop_level_formG,
  &Kprivate_form_adjectivesVdfmc_commonHLmodified_top_level_formG,
  &Kprivate_form_variable_name_or_namesVdfmc_commonHLvariable_defining_formG,
  &Kform_propertiesVdfmc_commonHLvariable_defining_formG,
  &Kprivate_form_signatureVdfmc_definitionsHLfunction_defining_formG
};

_KLkeyword_methodGVKe KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_7,
  &K62,
  &key_mep_2,
  &KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0I,
  &K63
};

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

static _KLsimple_object_vectorGVKd_12 K45 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 49,
  &KLobjectGVKd,
  &KLdood_mapped_objectGVdood,
  &KLform_propertiesGVdfmc_common,
  &KLtop_level_form_propertiesGVdfmc_common,
  &KLinstallable_form_propertiesGVdfmc_common,
  &KLvariable_defining_form_propertiesGVdfmc_common,
  &KLtop_level_formGVdfmc_common,
  &KLmodified_top_level_formGVdfmc_common,
  &KLdefining_formGVdfmc_common,
  &KLvariable_defining_formGVdfmc_common,
  &KLfunction_defining_formGVdfmc_definitions,
  &KLfunction_definitionGVdfmc_definitions
};

static _KLsimple_object_vectorGVKd_14 K46 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 57,
  &Kprivate_shadowable_form_init_methodVdfmc_commonHLtop_level_form_propertiesG,
  &Kprivate_shadowable_form_system_init_methodVdfmc_commonHLtop_level_form_propertiesG,
  &Kshadowable_form_properties_flagsVdfmc_commonHLtop_level_form_propertiesG,
  &Kform_compilation_recordVdfmc_commonHLtop_level_formG,
  &Kprivate_form_source_locationVdfmc_commonHLtop_level_formG,
  &Kprivate_form_parent_formVdfmc_commonHLtop_level_formG,
  &Kform_sequence_numberVdfmc_commonHLtop_level_formG,
  &Kprivate_form_dependenciesVdfmc_commonHLtop_level_formG,
  &Kprivate_form_referenced_variablesVdfmc_commonHLtop_level_formG,
  &Kprivate_form_adjectivesVdfmc_commonHLmodified_top_level_formG,
  &Kprivate_form_variable_name_or_namesVdfmc_commonHLvariable_defining_formG,
  &Kform_models_installedQVdfmc_commonHLvariable_defining_formG,
  &Kform_propertiesVdfmc_commonHLvariable_defining_formG,
  &Kprivate_form_signatureVdfmc_definitionsHLfunction_defining_formG
};

static _KLsymbolGVKd KJsource_location_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K61
};

static _KLbyte_stringGVKd_23 K48 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 93,
  "Missing init keyword %="
};

static _KLsymbolGVKd KJadjectives_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K60
};

static _KLsymbolGVKd KJvariable_name_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K59
};

static _KLunionGVKe K51 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &KLdood_slot_value_proxyGVdood,
  &K58
};

static _KLunionGVKe K52 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &KLdood_slot_value_proxyGVdood,
  &K56
};

static _KLunionGVKe K53 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &KLdood_slot_value_proxyGVdood,
  &K55
};

static _KLpairGVKd K54 = {
  &KLpairGVKdW /* wrapper */,
  &KinitializeVKdMM1,
  &KPempty_listVKi
};

static _KLunionGVKe K55 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &KLsequenceGVKd,
  &KLvariable_nameGVdfmc_common
};

static _KLunionGVKe K56 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K57,
  &KLsequenceGVKd
};

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

static _KLunionGVKe K58 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K57,
  &KLtop_level_formGVdfmc_common
};

static _KLbyte_stringGVKd_13 K59 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "variable-name"
};

static _KLbyte_stringGVKd_10 K60 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 41,
  "adjectives"
};

static _KLbyte_stringGVKd_15 K61 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 61,
  "source-location"
};

static _KLkeyword_signatureAvaluesGVKi K62 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K66,
  &KDsignature_LobjectG_typesVKi,
  &K67
};

static _KLsimple_object_vectorGVKd_10 K63 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 41,
  &KJsource_location_,
  &KPunboundVKi,
  &KJparent_form_,
  &KPfalseVKi,
  &KJadjectives_,
  &KPunboundVKi,
  &KJvariable_name_,
  &KPunboundVKi,
  &KJsignature_,
  &KPunboundVKi
};

static _KLsymbolGVKd KJparent_form_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K65
};

static _KLbyte_stringGVKd_11 K65 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 45,
  "parent-form"
};

static _KLsimple_object_vectorGVKd_5 K66 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 21,
  &KJsource_location_,
  &KJparent_form_,
  &KJadjectives_,
  &KJvariable_name_,
  &KJsignature_
};

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

static _KLbyte_stringGVKd_21 K68 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 85,
  "<function-definition>"
};

_KLsealed_generic_functionGVKe Kform_signatureVdfmc_definitions = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &K72,
  &KPfalseVKi,
  &K73,
  &K71,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe Kform_signatureVdfmc_definitionsMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K72,
  &Kform_signatureVdfmc_definitionsMM0I
};

static _KLpairGVKd K71 = {
  &KLpairGVKdW /* wrapper */,
  &Kform_signatureVdfmc_definitionsMM0,
  &KPempty_listVKi
};

static _KLsignatureGVKe K72 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 41944069,
  &K44
};

static _KLbyte_stringGVKd_14 K73 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 57,
  "form-signature"
};

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

static _KLkeyword_signatureGVKe K75 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (dylan_value) 49545221,
  &K44,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsignatureAvaluesGVKi K76 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 37749765,
  &K77,
  &KDsignature_LlistG_typesVKi
};

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

static _KLsubclassGVKe K78 = {
  &KLsubclassGVKeW /* wrapper */,
  &Ksubclass_instanceQVKiI,
  &KLfunction_defining_formGVdfmc_definitions
};

static _KLimplementation_classGVKe K79 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 510656565,
  &KLfunction_defining_formGVdfmc_definitions,
  &KLfunction_defining_formGVdfmc_definitionsW,
  &KPfalseVKi,
  &K41,
  (dylan_value) -3,
  &KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0,
  &K82,
  &K83,
  (dylan_value) 41,
  &K84,
  &K85,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &K94,
  &KPempty_vectorVKi,
  &K86,
  &K46,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

_KLkeyword_methodGVKe KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_7,
  &K87,
  &key_mep_2,
  &KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0I,
  &K63
};

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

static _KLsimple_object_vectorGVKd_11 K83 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 45,
  &KLobjectGVKd,
  &KLdood_mapped_objectGVdood,
  &KLform_propertiesGVdfmc_common,
  &KLtop_level_form_propertiesGVdfmc_common,
  &KLinstallable_form_propertiesGVdfmc_common,
  &KLvariable_defining_form_propertiesGVdfmc_common,
  &KLtop_level_formGVdfmc_common,
  &KLmodified_top_level_formGVdfmc_common,
  &KLdefining_formGVdfmc_common,
  &KLvariable_defining_formGVdfmc_common,
  &KLfunction_defining_formGVdfmc_definitions
};

static _KLsimple_object_vectorGVKd_2 K84 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  (dylan_value) 45,
  (dylan_value) 49
};

static _KLsimple_object_vectorGVKd_4 K85 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 17,
  &KLexplicitly_typed_variable_defining_formGVdfmc_common,
  &KLcompiler_booted_formGVdfmc_definitions,
  &KLmodifying_form_propertiesGVdfmc_common,
  &KLmodifying_formGVdfmc_common
};

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

static _KLkeyword_signatureAvaluesGVKi K87 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K66,
  &KDsignature_LobjectG_typesVKi,
  &K44
};

static _KLbyte_stringGVKd_24 K88 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 97,
  "<function-defining-form>"
};

_KLsimple_methodGVKe Kform_define_wordVdfmc_commonMdfmc_definitionsM4 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K92,
  &Kform_define_wordVdfmc_commonMdfmc_definitionsM4I
};

static _KLsignatureAvaluesGVKi K92 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555461,
  &K67,
  &K93
};

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

static _KLpairGVKd K94 = {
  &KLpairGVKdW /* wrapper */,
  &KLprimitive_definitionGVdfmc_definitions,
  &K95
};

static _KLpairGVKd K95 = {
  &KLpairGVKdW /* wrapper */,
  &KLmethod_defining_formGVdfmc_definitions,
  &K96
};

static _KLpairGVKd K96 = {
  &KLpairGVKdW /* wrapper */,
  &KLgeneric_definitionGVdfmc_definitions,
  &K97
};

static _KLpairGVKd K97 = {
  &KLpairGVKdW /* wrapper */,
  &KLfunction_definitionGVdfmc_definitions,
  &KPempty_listVKi
};

/* Code */

dylan_value Kdood_lazy_gettersVdoodMdfmc_definitionsM25I (dylan_value classU_) {
  dylan_value T2;
  dylan_value T3_0;
  dylan_value T4_0;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13;
  _KLsimple_object_vectorGVKd_1 T14 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T5 = primitive_next_methods_parameter();
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T7 = primitive_idQ(T5,&KPempty_listVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T7 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T10 = KerrorVKdMM1I(&K74, &KPempty_vectorVKi);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T11 = T10;
    T13 = T11;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T8 = SLOT_VALUE_INITD(T5, 0);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T9 = SLOT_VALUE_INITD(T5, 1);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    MEP_CALL_PROLOG(T8, T9, 1);
    T6 = MEP_CALL1(T8, classU_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T12 = T6;
    T13 = T12;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T14.vector_element_[0] = &Kprivate_form_signatureVdfmc_definitions;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T2 = KlistVKdI(&T14);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T3_0 = CALL2(&KconcatenateVKd, T13, T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T4_0 = T3_0;
  {
    MV_CHECK_TYPE_PROLOGUE(T3_0);
    primitive_type_check(T4_0, &KLlistGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  MV_SET_COUNT(1);
  return(T4_0);
}

dylan_value Kinitialize_packed_slotsVKeMdfmc_definitionsM5I (dylan_value x_, dylan_value all_keys_) {
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  T4 = primitive_copy_vector(all_keys_);
  T3 = primitive_next_methods_parameter();
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  T7 = primitive_idQ(T3,&KPempty_listVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  if (T7 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
    T10 = KerrorVKdMM1I(&K74, &KPempty_vectorVKi);
    T6 = T10;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
    T8 = SLOT_VALUE_INITD(T3, 0);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
    T9 = SLOT_VALUE_INITD(T3, 1);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
    MEP_CALL_PROLOG(T8, T9, 2);
    T5 = MEP_CALL2(T8, x_, T4);
    T6 = T5;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  return(T6);
}

dylan_value Kfunction_definer_expanderVdfmc_definitionsMM0I (dylan_value env_, dylan_value form_) {
  volatile dylan_value T3;
  volatile dylan_value T4_0;
  volatile dylan_value T4_1;
  volatile dylan_value T4_2;
  volatile dylan_value T4_3;
  volatile dylan_value failure_;
  volatile dylan_value modsF6;
  volatile dylan_value nameF7;
  volatile dylan_value signature_and_bodyF8;
  volatile dylan_value modsF9;
  volatile dylan_value nameF10;
  volatile dylan_value signature_and_bodyF11;
  volatile dylan_value T12;
  volatile dylan_value T13;
  volatile dylan_value T14;
  volatile dylan_value T15;
  volatile dylan_value T16;
  volatile dylan_value Pold_valuePF17;
  volatile dylan_value T18;
  volatile dylan_value T19;
  volatile dylan_value T20;
  volatile dylan_value Pold_valuePF21;
  volatile dylan_value T22;
  volatile dylan_value T23_0;
  volatile dylan_value T24;
  volatile dylan_value T25;
  volatile dylan_value Pold_valuePF26;
  volatile dylan_value T27;
  volatile dylan_value T28;
  volatile dylan_value T29;
  volatile dylan_value T30;
  volatile dylan_value T31;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  CONGRUENT_CALL_PROLOG(&Kcall_as_fragment_tokensVdfmc_macro_expander, 1);
  T3 = CONGRUENT_CALL1(form_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  T4_0 = KUwildcard_loopUF33I(&KPempty_listVKi, T3);
  T4_1 = MV_GET_ELT(1);
  T4_2 = MV_GET_ELT(2);
  T4_3 = MV_GET_ELT(3);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  failure_ = T4_0;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  modsF6 = T4_1;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  nameF7 = T4_2;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  signature_and_bodyF8 = T4_3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  if (failure_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T14 = Kdylan_variable_nameVdfmc_readerI(IKJfunction_definer_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T15 = Kmacro_main_rule_match_errorVdfmc_macro_expanderI(T3, T14);
    T16 = T15;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    CONGRUENT_CALL_PROLOG(&Kexport_fragment_tokensVdfmc_macro_expander, 1);
    modsF9 = CONGRUENT_CALL1(modsF6);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    CONGRUENT_CALL_PROLOG(&Kexport_fragment_tokensVdfmc_macro_expander, 1);
    nameF10 = CONGRUENT_CALL1(nameF7);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    CONGRUENT_CALL_PROLOG(&Kexport_fragment_tokensVdfmc_macro_expander, 1);
    signature_and_bodyF11 = CONGRUENT_CALL1(signature_and_bodyF8);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
    T12 = CALL1(&Kfragment_recordVdfmc_reader, form_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:33
    T13 = CALL1(&Kfragment_source_positionVdfmc_reader, form_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
    Pold_valuePF17 = primitive_read_thread_variable(Texpansion_source_locationTVdfmc_macro_expander);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
    ENTER_UNWIND_FRAME(T18);
    if (!nlx_setjmp(FRAME_DEST(T18))) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      T19 = primitive_object_allocate_filled(3,&KLpairGVKdW,2,&KPunboundVKi,0,0,&KPunboundVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      SLOT_VALUE_SETTER(T12, T19, 0);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      SLOT_VALUE_SETTER(T13, T19, 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      primitive_write_thread_variable(Texpansion_source_locationTVdfmc_macro_expander, T19);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      T20 = primitive_read_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      if (T20 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        Pold_valuePF21 = primitive_read_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        ENTER_UNWIND_FRAME(T22);
        if (!nlx_setjmp(FRAME_DEST(T22))) {
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          T23_0 = KLobject_tableGZ32ZconstructorVKiMM0I(&KLobject_tableGVKd, &KPempty_vectorVKi, &KLobjectGVKd, (dylan_value) 41, &Kdefault_grow_sizeVKe, &KPfalseVKi);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          T24 = T23_0;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          primitive_write_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander, T24);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          T25 = Kanonymous_of_function_definer_expanderF27I(signature_and_bodyF11, nameF10, modsF9);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          FALL_THROUGH_UNWIND(T25);
        }
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        primitive_write_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander, Pold_valuePF21);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        CONTINUE_UNWIND();
        T31 = T25;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        Pold_valuePF26 = primitive_read_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        ENTER_UNWIND_FRAME(T27);
        if (!nlx_setjmp(FRAME_DEST(T27))) {
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          primitive_write_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander, Dshared_expansion_fragment_cacheVdfmc_macro_expander);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          ENTER_UNWIND_FRAME(T28);
          if (!nlx_setjmp(FRAME_DEST(T28))) {
            // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
            T29 = Kanonymous_of_function_definer_expanderF27I(signature_and_bodyF11, nameF10, modsF9);
            // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
            FALL_THROUGH_UNWIND(T29);
          }
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          T30 = primitive_read_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          CALL1(&Kremove_all_keysXVKe, T30);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          CONTINUE_UNWIND();
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
          FALL_THROUGH_UNWIND(T29);
        }
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        primitive_write_thread_variable(Texpansion_fragment_cacheTVdfmc_macro_expander, Pold_valuePF26);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
        CONTINUE_UNWIND();
        T31 = T29;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
      FALL_THROUGH_UNWIND(T31);
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
    primitive_write_thread_variable(Texpansion_source_locationTVdfmc_macro_expander, Pold_valuePF17);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
    CONTINUE_UNWIND();
    T16 = T31;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  return(T16);
}

dylan_value Kform_signatureVdfmc_definitionsMM0I (dylan_value x_) {
  dylan_value T2;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;
  dylan_value T11;
  _KLsimple_object_vectorGVKd_2 T12 = {&KLsimple_object_vectorGVKdW, (dylan_value) 9};
  dylan_value T13;
  dylan_value T14;
  dylan_value value_;
  dylan_value T16;
  dylan_value T17;
  dylan_value T18;
  dylan_value T19;
  dylan_value T20_0;
  dylan_value T21_0;
  dylan_value T22_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  CONGRUENT_CALL_PROLOG(&Kprivate_form_signatureVdfmc_definitions, 1);
  T2 = CONGRUENT_CALL1(x_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T3 = primitive_instanceQ(T2,&KLdood_address_proxyGVdood);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T3 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T4 = Ttrace_allocationQTVdood;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    if (T4 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T5 = Kobject_classVKdI(x_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T6 = SLOT_VALUE(T5, 2);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T7 = SLOT_VALUE_INITD(T6, 17);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T8 = Kobject_classVKdI(x_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T9 = CALL1(&Kproxy_slot_descriptorVdood, T2);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
      T10 = CONGRUENT_CALL3(T7, T9, &KPempty_vectorVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T11 = CALL1(&Kslot_getterVKe, T10);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T12.vector_element_[0] = T8;
      T12.vector_element_[1] = T11;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      Kdepth_format_outVdoodI(&K20, &T12);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T13 = primitive_read_thread_variable(Tprint_depthTVdood);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T14 = CONGRUENT_CALL2(T13, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      primitive_write_thread_variable(Tprint_depthTVdood, T14);
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    value_ = CALL1(&Kdood_force_slot_value_proxyVdood, T2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T16 = CALL1(&Kproxy_slot_descriptorVdood, T2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    CALL3(&Kwalker_slot_value_setterVwalker, value_, x_, T16);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T17 = Ttrace_allocationQTVdood;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    if (T17 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      T18 = primitive_read_thread_variable(Tprint_depthTVdood);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      CONGRUENT_CALL_PROLOG(&K_VKd, 2);
      T19 = CONGRUENT_CALL2(T18, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
      primitive_write_thread_variable(Tprint_depthTVdood, T19);
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T20_0 = value_;
    T22_0 = T20_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T21_0 = T2;
    T22_0 = T21_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  MV_SET_COUNT(1);
  return(T22_0);
}

static dylan_value KUwildcard_loopUF33I (dylan_value UcollectorU_, dylan_value UfTU_) {
  dylan_value T2_0;
  dylan_value T2_1;
  dylan_value failureF3;
  dylan_value UfTUF4;
  dylan_value T5_0;
  dylan_value T5_1;
  dylan_value T5_2;
  dylan_value T5_3;
  dylan_value T6_0;
  dylan_value T6_1;
  dylan_value T6_2;
  dylan_value failureF7;
  dylan_value UfTUF8;
  dylan_value nameF9;
  dylan_value T10_0;
  dylan_value T10_1;
  dylan_value T10_2;
  dylan_value T10_3;
  dylan_value T11_0;
  dylan_value T11_1;
  dylan_value T11_2;
  dylan_value T11_3;
  dylan_value T12_0;
  dylan_value T12_1;
  dylan_value T12_2;
  dylan_value T12_3;
  dylan_value failureF13;
  dylan_value mods_;
  dylan_value nameF15;
  dylan_value signature_and_body_;
  dylan_value T17;
  dylan_value T18;
  dylan_value T19;
  dylan_value T20;
  dylan_value T21;
  dylan_value T22;
  dylan_value T23_0;
  dylan_value T23_1;
  dylan_value T23_2;
  dylan_value T23_3;
  dylan_value T24;
  dylan_value T25;
  _KLsimple_object_vectorGVKd_1 T26 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  _KLsimple_object_vectorGVKd_1 T27 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T28;
  dylan_value T29;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  T2_0 = Kmatch_end_of_modifiersVdfmc_macro_expanderI(UfTU_);
  T2_1 = MV_GET_ELT(1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  failureF3 = T2_0;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  UfTUF4 = T2_1;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  if (failureF3 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T5_0 = failureF3;
    T5_1 = &KPfalseVKi;
    T5_2 = &KPfalseVKi;
    T5_3 = &KPfalseVKi;
    T12_0 = T5_0;
    T12_1 = T5_1;
    T12_2 = T5_2;
    T12_3 = T5_3;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T6_0 = Kmatch_name_constraintVdfmc_macro_expanderI(UfTUF4);
    T6_1 = MV_GET_ELT(1);
    T6_2 = MV_GET_ELT(2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    failureF7 = T6_0;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    UfTUF8 = T6_1;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    nameF9 = T6_2;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    if (failureF7 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T10_0 = failureF7;
      T10_1 = &KPfalseVKi;
      T10_2 = &KPfalseVKi;
      T10_3 = &KPfalseVKi;
      T11_0 = T10_0;
      T11_1 = T10_1;
      T11_2 = T10_2;
      T11_3 = T10_3;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T23_0 = &KPfalseVKi;
      T23_1 = UcollectorU_;
      T23_2 = nameF9;
      T23_3 = UfTUF8;
      T11_0 = T23_0;
      T11_1 = T23_1;
      T11_2 = T23_2;
      T11_3 = T23_3;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T12_0 = T11_0;
    T12_1 = T11_1;
    T12_2 = T11_2;
    T12_3 = T11_3;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  failureF13 = T12_0;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  mods_ = T12_1;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  nameF15 = T12_2;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  signature_and_body_ = T12_3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  if (failureF13 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T24 = primitive_idQ(UfTU_,&KPempty_listVKi);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    if (T24 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T17 = &KPtrueVKi;
      MV_SET_ELT(0, &KPtrueVKi);
      MV_SET_COUNT(1);
      T21 = T17;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T25 = SLOT_VALUE_INITD(UfTU_, 0);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T26.vector_element_[0] = T25;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T18 = KlistVKdI(&T26);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T27.vector_element_[0] = T18;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      CONGRUENT_CALL_PROLOG(&KconcatenateXYcommon_extensionsVcommon_dylan, 2);
      T19 = CONGRUENT_CALL2(UcollectorU_, &T27);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T28 = SLOT_VALUE_INITD(UfTU_, 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
      T20 = CALL2(&KUwildcard_loopUF33, T19, T28);
      T21 = T20;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T22 = T21;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
    T29 = failureF13;
    MV_SET_ELT(0, failureF13);
    MV_SET_ELT(1, mods_);
    MV_SET_ELT(2, nameF15);
    MV_SET_ELT(3, signature_and_body_);
    MV_SET_COUNT(4);
    T22 = T29;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  return(T22);
}

static dylan_value Kanonymous_of_function_definer_expanderF27I (dylan_value signature_and_body_, dylan_value name_, dylan_value mods_) {
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10;
  dylan_value T11;
  _KLsimple_object_vectorGVKd_8 T12 = {&KLsimple_object_vectorGVKdW, (dylan_value) 33};

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T3 = Kmake_name_fragmentVdfmc_macro_expanderI(IKJdefine_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  CONGRUENT_CALL_PROLOG(&Kimport_to_templateVdfmc_macro_expander, 1);
  T4 = CONGRUENT_CALL1(mods_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T5 = Kmake_name_fragmentVdfmc_macro_expanderI(&KJconstant_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  CONGRUENT_CALL_PROLOG(&Kimport_to_templateVdfmc_macro_expander, 1);
  T6 = CONGRUENT_CALL1(name_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T7 = Kmake_equal_fragmentVdfmc_macro_expanderI();
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T8 = Kmake_name_fragmentVdfmc_macro_expanderI(IKJmethod_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  CONGRUENT_CALL_PROLOG(&Kimport_to_templateVdfmc_macro_expander, 1);
  T9 = CONGRUENT_CALL1(signature_and_body_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T10 = Kmake_name_fragmentVdfmc_macro_expanderI(&KJend_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T12.vector_element_[0] = T3;
  T12.vector_element_[1] = T4;
  T12.vector_element_[2] = T5;
  T12.vector_element_[3] = T6;
  T12.vector_element_[4] = T7;
  T12.vector_element_[5] = T8;
  T12.vector_element_[6] = T9;
  T12.vector_element_[7] = T10;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:34
  T11 = Kmake_templateVdfmc_macro_expanderI(&T12);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:32
  return(T11);
}

dylan_value KLfunction_definitionGZ32ZconstructorVdfmc_definitionsMM0I (dylan_value class_, dylan_value init_args_, dylan_value Uunique_private_form_source_location_, dylan_value Uunique_private_form_parent_form_, dylan_value Uunique_private_form_adjectives_, dylan_value Uunique_private_form_variable_name_or_names_, dylan_value Uunique_private_form_signature_) {
  dylan_value T8;
  dylan_value Uunique_private_form_source_locationF9;
  dylan_value T10;
  dylan_value Uunique_private_form_adjectivesF11;
  dylan_value T12;
  dylan_value Uunique_private_form_variable_name_or_namesF13;
  dylan_value T14;
  dylan_value Uunique_private_form_signatureF15;
  dylan_value T16;
  dylan_value Uunique_private_form_parent_formF17;
  dylan_value Uunique_private_form_adjectivesF18;
  dylan_value Uunique_private_form_variable_name_or_namesF19;
  dylan_value T20_0;
  dylan_value T21;
  dylan_value T22;
  _KLsimple_object_vectorGVKd_1 T23 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T24;
  dylan_value T25;
  _KLsimple_object_vectorGVKd_1 T26 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T27;
  dylan_value T28;
  _KLsimple_object_vectorGVKd_1 T29 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T30;
  dylan_value T31;
  _KLsimple_object_vectorGVKd_1 T32 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T33;
  dylan_value T34;
  dylan_value init_valueF35;
  dylan_value T36;
  dylan_value init_valueF37;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T21 = primitive_copy_vector(init_args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T22 = primitive_idQ(Uunique_private_form_source_location_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  if (T22 != &KPfalseVKi) {
    T23.vector_element_[0] = IKJsource_location_;
    T24 = KerrorVKdMM1I(&K48, &T23);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
    T8 = T24;
    Uunique_private_form_source_locationF9 = T8;
  } else {
    Uunique_private_form_source_locationF9 = Uunique_private_form_source_location_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T25 = primitive_idQ(Uunique_private_form_adjectives_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  if (T25 != &KPfalseVKi) {
    T26.vector_element_[0] = IKJadjectives_;
    T27 = KerrorVKdMM1I(&K48, &T26);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
    T10 = T27;
    Uunique_private_form_adjectivesF11 = T10;
  } else {
    Uunique_private_form_adjectivesF11 = Uunique_private_form_adjectives_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T28 = primitive_idQ(Uunique_private_form_variable_name_or_names_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  if (T28 != &KPfalseVKi) {
    T29.vector_element_[0] = IKJvariable_name_;
    T30 = KerrorVKdMM1I(&K48, &T29);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
    T12 = T30;
    Uunique_private_form_variable_name_or_namesF13 = T12;
  } else {
    Uunique_private_form_variable_name_or_namesF13 = Uunique_private_form_variable_name_or_names_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T31 = primitive_idQ(Uunique_private_form_signature_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  if (T31 != &KPfalseVKi) {
    T32.vector_element_[0] = &KJsignature_;
    T33 = KerrorVKdMM1I(&K48, &T32);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
    T14 = T33;
    Uunique_private_form_signatureF15 = T14;
  } else {
    Uunique_private_form_signatureF15 = Uunique_private_form_signature_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  T16 = primitive_object_allocate_filled(14,&KLfunction_definitionGVdfmc_definitionsW,13,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 0);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 1);
  SLOT_VALUE_SETTER((dylan_value) 1, T16, 2);
  T34 = Kcurrent_compilation_recordVdfmc_commonI();
  primitive_type_check(T34, &KLcompilation_recordGVdfmc_common);
  init_valueF35 = T34;
  SLOT_VALUE_SETTER(init_valueF35, T16, 3);
  SLOT_VALUE_SETTER(Uunique_private_form_source_locationF9, T16, 4);
  primitive_type_check(Uunique_private_form_parent_form_, &K51);
  Uunique_private_form_parent_formF17 = Uunique_private_form_parent_form_;
  SLOT_VALUE_SETTER(Uunique_private_form_parent_formF17, T16, 5);
  T36 = Knext_form_sequence_numberVdfmc_commonI();
  primitive_type_check(T36, &KLintegerGVKd);
  init_valueF37 = T36;
  SLOT_VALUE_SETTER(init_valueF37, T16, 6);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 7);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 8);
  primitive_type_check(Uunique_private_form_adjectivesF11, &K52);
  Uunique_private_form_adjectivesF18 = Uunique_private_form_adjectivesF11;
  SLOT_VALUE_SETTER(Uunique_private_form_adjectivesF18, T16, 9);
  primitive_type_check(Uunique_private_form_variable_name_or_namesF13, &K53);
  Uunique_private_form_variable_name_or_namesF19 = Uunique_private_form_variable_name_or_namesF13;
  SLOT_VALUE_SETTER(Uunique_private_form_variable_name_or_namesF19, T16, 10);
  SLOT_VALUE_SETTER((dylan_value) 1, T16, 11);
  SLOT_VALUE_SETTER(Uunique_private_form_signatureF15, T16, 12);
  MIEP_CALL_PROLOG(&K54);
  KinitializeVKdMdfmc_commonM0I(T16, T21);
  T20_0 = T16;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:22
  MV_SET_COUNT(1);
  return(T20_0);
}

dylan_value KLfunction_defining_formGZ32ZconstructorVdfmc_definitionsMM0I (dylan_value class_, dylan_value init_args_, dylan_value Uunique_private_form_source_location_, dylan_value Uunique_private_form_parent_form_, dylan_value Uunique_private_form_adjectives_, dylan_value Uunique_private_form_variable_name_or_names_, dylan_value Uunique_private_form_signature_) {
  dylan_value T8;
  dylan_value Uunique_private_form_source_locationF9;
  dylan_value T10;
  dylan_value Uunique_private_form_adjectivesF11;
  dylan_value T12;
  dylan_value Uunique_private_form_variable_name_or_namesF13;
  dylan_value T14;
  dylan_value Uunique_private_form_signatureF15;
  dylan_value T16;
  dylan_value Uunique_private_form_parent_formF17;
  dylan_value Uunique_private_form_adjectivesF18;
  dylan_value Uunique_private_form_variable_name_or_namesF19;
  dylan_value T20_0;
  dylan_value T21;
  dylan_value T22;
  _KLsimple_object_vectorGVKd_1 T23 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T24;
  dylan_value T25;
  _KLsimple_object_vectorGVKd_1 T26 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T27;
  dylan_value T28;
  _KLsimple_object_vectorGVKd_1 T29 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T30;
  dylan_value T31;
  _KLsimple_object_vectorGVKd_1 T32 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T33;
  dylan_value T34;
  dylan_value init_valueF35;
  dylan_value T36;
  dylan_value init_valueF37;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T21 = primitive_copy_vector(init_args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T22 = primitive_idQ(Uunique_private_form_source_location_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T22 != &KPfalseVKi) {
    T23.vector_element_[0] = IKJsource_location_;
    T24 = KerrorVKdMM1I(&K48, &T23);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T8 = T24;
    Uunique_private_form_source_locationF9 = T8;
  } else {
    Uunique_private_form_source_locationF9 = Uunique_private_form_source_location_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T25 = primitive_idQ(Uunique_private_form_adjectives_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T25 != &KPfalseVKi) {
    T26.vector_element_[0] = IKJadjectives_;
    T27 = KerrorVKdMM1I(&K48, &T26);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T10 = T27;
    Uunique_private_form_adjectivesF11 = T10;
  } else {
    Uunique_private_form_adjectivesF11 = Uunique_private_form_adjectives_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T28 = primitive_idQ(Uunique_private_form_variable_name_or_names_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T28 != &KPfalseVKi) {
    T29.vector_element_[0] = IKJvariable_name_;
    T30 = KerrorVKdMM1I(&K48, &T29);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T12 = T30;
    Uunique_private_form_variable_name_or_namesF13 = T12;
  } else {
    Uunique_private_form_variable_name_or_namesF13 = Uunique_private_form_variable_name_or_names_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T31 = primitive_idQ(Uunique_private_form_signature_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  if (T31 != &KPfalseVKi) {
    T32.vector_element_[0] = &KJsignature_;
    T33 = KerrorVKdMM1I(&K48, &T32);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
    T14 = T33;
    Uunique_private_form_signatureF15 = T14;
  } else {
    Uunique_private_form_signatureF15 = Uunique_private_form_signature_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T16 = primitive_object_allocate_filled(14,&KLfunction_defining_formGVdfmc_definitionsW,13,&KPunboundVKi,0,0,&KPunboundVKi);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 0);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 1);
  SLOT_VALUE_SETTER((dylan_value) 1, T16, 2);
  T34 = Kcurrent_compilation_recordVdfmc_commonI();
  primitive_type_check(T34, &KLcompilation_recordGVdfmc_common);
  init_valueF35 = T34;
  SLOT_VALUE_SETTER(init_valueF35, T16, 3);
  SLOT_VALUE_SETTER(Uunique_private_form_source_locationF9, T16, 4);
  primitive_type_check(Uunique_private_form_parent_form_, &K51);
  Uunique_private_form_parent_formF17 = Uunique_private_form_parent_form_;
  SLOT_VALUE_SETTER(Uunique_private_form_parent_formF17, T16, 5);
  T36 = Knext_form_sequence_numberVdfmc_commonI();
  primitive_type_check(T36, &KLintegerGVKd);
  init_valueF37 = T36;
  SLOT_VALUE_SETTER(init_valueF37, T16, 6);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 7);
  SLOT_VALUE_SETTER(&KPfalseVKi, T16, 8);
  primitive_type_check(Uunique_private_form_adjectivesF11, &K52);
  Uunique_private_form_adjectivesF18 = Uunique_private_form_adjectivesF11;
  SLOT_VALUE_SETTER(Uunique_private_form_adjectivesF18, T16, 9);
  primitive_type_check(Uunique_private_form_variable_name_or_namesF13, &K53);
  Uunique_private_form_variable_name_or_namesF19 = Uunique_private_form_variable_name_or_namesF13;
  SLOT_VALUE_SETTER(Uunique_private_form_variable_name_or_namesF19, T16, 10);
  SLOT_VALUE_SETTER((dylan_value) 1, T16, 11);
  SLOT_VALUE_SETTER(Uunique_private_form_signatureF15, T16, 12);
  MIEP_CALL_PROLOG(&K54);
  KinitializeVKdMdfmc_commonM0I(T16, T21);
  T20_0 = T16;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  MV_SET_COUNT(1);
  return(T20_0);
}

dylan_value Kform_define_wordVdfmc_commonMdfmc_definitionsM4I (dylan_value form_) {
  dylan_value T2_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:25
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:26
  T2_0 = &KJfunction_;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:25
  MV_SET_COUNT(1);
  return(T2_0);
}


/* SYSTEM INIT CODE */

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

    T0 = KPresolve_symbolVKiI(&KJword_class_);
    if (T0 != &KJword_class_) {
      IKJword_class_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJsuffix_);
    if (T0 != &KJsuffix_) {
      IKJsuffix_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJexpander_function_);
    if (T0 != &KJexpander_function_) {
      IKJexpander_function_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJfunction_definer_);
    if (T0 != &KJfunction_definer_) {
      IKJfunction_definer_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJdefine_);
    if (T0 != &KJdefine_) {
      IKJdefine_ = T0;
    }
  }
  {
    dylan_value T0;

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

    T0 = KPresolve_symbolVKiI(&KJsource_location_);
    if (T0 != &KJsource_location_) {
      IKJsource_location_ = T0;
      primitive_repeated_slot_value_setter(T0, &K66, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K63, 1, 0);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJadjectives_);
    if (T0 != &KJadjectives_) {
      IKJadjectives_ = T0;
      primitive_repeated_slot_value_setter(T0, &K66, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K63, 1, 4);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJvariable_name_);
    if (T0 != &KJvariable_name_) {
      IKJvariable_name_ = T0;
      primitive_repeated_slot_value_setter(T0, &K66, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K63, 1, 6);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJparent_form_);
    if (T0 != &KJparent_form_) {
      primitive_repeated_slot_value_setter(T0, &K66, 1, 1);
      primitive_repeated_slot_value_setter(T0, &K63, 1, 2);
    }
  }
{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T0 = KPadd_classVKeI(&KLfunction_defining_formGVdfmc_definitions);
  goto I0;
}
I0:

  return;
}

/* USER INIT CODE */

void _Init_dfmc_definitions__X_define_function_for_user () {
{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:9
  T0 = KPadd_a_methodVKnI(&Kdood_lazy_gettersVdood, &Kdood_lazy_gettersVdoodMdfmc_definitionsM25, &Kdfmc_definitions_libraryYdylan_userVdfmc_definitions, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi);
  goto I5;
}
I5:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:14
  T0 = KPadd_a_methodVKnI(&Kinitialize_packed_slotsVKe, &Kinitialize_packed_slotsVKeMdfmc_definitionsM5, &Kdfmc_definitions_libraryYdylan_userVdfmc_definitions, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi);
  goto I8;
}
I8:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:25
  T0 = KPadd_a_methodVKnI(&Kform_define_wordVdfmc_common, &Kform_define_wordVdfmc_commonMdfmc_definitionsM4, &Kdfmc_definitions_libraryYdylan_userVdfmc_definitions, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi);
  goto I91;
}
I91:

{
  dylan_value T0;
  dylan_value T1;
  _KLsimple_object_vectorGVKd_6 T2 = {&KLsimple_object_vectorGVKdW, (dylan_value) 25};

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  T2.vector_element_[0] = IKJword_class_;
  T2.vector_element_[1] = (dylan_value) 81;
  T2.vector_element_[2] = IKJsuffix_;
  T2.vector_element_[3] = &K12;
  T2.vector_element_[4] = IKJexpander_function_;
  T2.vector_element_[5] = &Kfunction_definer_expanderVdfmc_definitionsMM0;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T0 = CONGRUENT_CALL2(&KLsuffixed_macro_descriptorGVdfmc_macro_expander, &T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/definitions/define-function.dylan:30
  T1 = Kdo_define_core_macroVdfmc_definitionsMM0I(IKJfunction_definer_, &KPfalseVKi, &KPfalseVKi, T0, &Kfunction_definer_expanderVdfmc_definitionsMM0);
  goto I9;
}
I9:

  return;
}


/* eof */
