#include "opendylan/run-time.h"

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

/* Typedefs for referenced classes */

#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(6);
define__KLsimple_object_vectorGVKd(3);
define__KLsimple_object_vectorGVKd(16);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(0);
define__KLsimple_object_vectorGVKd(1);

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;
} _KLobjectGVKd;

typedef struct {
  dylan_value wrapper;
} _KLunboundGVKe;

typedef struct {
  dylan_value wrapper;
} _KLbooleanGVKd;

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;

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(15);
define__KLbyte_stringGVKd(1);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(11);
define__KLbyte_stringGVKd(0);

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

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

typedef struct {
  dylan_value wrapper;
} _KLintegerGVKd;

typedef struct {
  dylan_value wrapper;
} _KLcharacterGVKd;

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

#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 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 mangler_buffer_;
  dylan_value mangler_table_;
} _KLabstract_manglerGVdfmc_mangling;

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

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 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 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 namespace_name_;
  dylan_value home_library_;
} _KLmoduleGVKe;

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_;
} _KLfunctionGVKd;

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

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

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

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

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

typedef struct {
  dylan_value wrapper;
} _KLstringGVKd;

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

typedef struct {
  dylan_value wrapper;
} _KLsequenceGVKd;

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;
  dylan_value signature_properties_;
  dylan_value signature_required_;
  dylan_value signature_keys_;
  dylan_value signature_key_types_;
} _KLkeyword_signatureGVKe;


/* Typedefs for defined classes */

typedef struct {
  dylan_value wrapper;
  dylan_value mangler_buffer_;
  dylan_value mangler_table_;
} _KLdemanglerGVdfmc_mangling;


/* Referenced object declarations */

extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLincremental_generic_functionGVKe KmemberQVKd;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLbyte_stringGVKd_0 KPempty_stringVKi;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLclassGVKd KLintegerGVKd;
extern _KLmm_wrapperGVKi_0 KLintegerGVKdW;
extern _KLclassGVKd KLcharacterGVKd;
extern _KLmm_wrapperGVKi_0 KLcharacterGVKdW;
dylan_value Kconcatenate_2VKeMM1I (dylan_value, dylan_value);
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLsimple_methodGVKe KEEVKd;
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLclassGVKd KLimplementation_classGVKe;
extern _KLmm_wrapperGVKi_0 KLimplementation_classGVKeW;
extern _KLclassGVKd KLabstract_manglerGVdfmc_mangling;
extern _KLmm_wrapperGVKi_0 KLabstract_manglerGVdfmc_manglingW;
extern _KLincremental_generic_functionGVKe KinitializeVKd;
dylan_value KmakeVKdMM13I (dylan_value, dylan_value, dylan_value, dylan_value);
dylan_value KLstretchy_object_vectorGZ32ZconstructorVKiMM0I (dylan_value, dylan_value);
extern _KLclassGVKd KLstretchy_object_vectorGVKe;
extern _KLmm_wrapperGVKi_0 KLstretchy_object_vectorGVKeW;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LclassG_typesVKi;
extern _KLinstance_slot_descriptorGVKe Kmangler_bufferVdfmc_manglingHLabstract_manglerG;
extern _KLclassGVKd KLinstance_slot_descriptorGVKe;
extern _KLmm_wrapperGVKi_0 KLinstance_slot_descriptorGVKeW;
extern _KLinstance_slot_descriptorGVKe Kmangler_tableVdfmc_manglingHLabstract_manglerG;
dylan_value Kclass_instanceQ_initialVKiI (dylan_value, dylan_value);
extern _KLmoduleGVKe Kdfmc_mangling_moduleYdylan_userVdfmc_mangling;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
dylan_value Kmangler_resetVdfmc_manglingMM0I (dylan_value);
dylan_value Kmangler_as_stringVdfmc_manglingMM0I (dylan_value, dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe KLVKd;
extern _KLincremental_generic_functionGVKe KelementVKd;
extern _KLincremental_generic_functionGVKe KasVKd;
extern _KLincremental_generic_functionGVKe KAVKd;
extern _KLsealed_generic_functionGVKe Kmangle_raw_intoVdfmc_mangling;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLclassGVKd KLfunctionGVKd;
extern _KLmm_wrapperGVKi_0 KLfunctionGVKdW;
extern _KLclassGVKd KLsimple_typechecked_cache_header_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLsimple_typechecked_cache_header_engine_nodeGVKgW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
extern _KLsimple_object_vectorGVKd_16 KDsignature_Lbyte_stringG_typesVKi;
dylan_value Kcopy_sequenceVKdMM3I (dylan_value, dylan_value, dylan_value, dylan_value);
dylan_value KEVKdMM27I (dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe Kfind_keyVKd;
dylan_value Kstring_to_integerYcommon_extensionsVcommon_dylanI (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
dylan_value Kunion_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
dylan_value Ksingleton_pointer_idQ_instanceQVKiI (dylan_value, dylan_value);
dylan_value KEEVKdI (dylan_value, dylan_value);
extern _KLclassGVKd KLstringGVKd;
extern _KLmm_wrapperGVKi_0 KLstringGVKdW;
extern _KLincremental_generic_functionGVKe Kas_lowercaseVKd;
dylan_value Kelement_range_errorVKeI (dylan_value, dylan_value);
extern _KLclassGVKd KLsignatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLsignatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_16 KDsignature_LbooleanG_typesVKi;
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
dylan_value KPadd_a_methodVKnI (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLlibraryGVKe Kdfmc_mangling_libraryYdylan_userVdfmc_mangling;
extern _KLclassGVKd KLlibraryGVKe;
extern _KLmm_wrapperGVKi_0 KLlibraryGVKeW;
dylan_value KerrorVKdMM1I (dylan_value, dylan_value);
extern _KLincremental_generic_functionGVKe Kelement_setterVKd;
extern _KLincremental_generic_functionGVKe Kforward_iteration_protocolVKd;
extern _KLincremental_generic_functionGVKe KTVKd;
extern _KLincremental_generic_functionGVKe KEVKd;
extern _KLclassGVKd KLkeyword_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureGVKeW;
extern dylan_value Dhygiene_charVdfmc_mangling;
extern dylan_value Dlibrary_markerVdfmc_mangling;
extern dylan_value Dmodule_markerVdfmc_mangling;
extern dylan_value Dmethod_mangled_markerVdfmc_mangling;
extern dylan_value Dall_decoration_markersVdfmc_mangling;
extern dylan_value Dlocal_suffixVdfmc_mangling;
extern dylan_value Ddylan_module_markerVdfmc_mangling;
extern dylan_value Ddemangle_dylan_moduleVdfmc_mangling;
extern dylan_value Dconstant_markerVdfmc_mangling;
extern dylan_value Dwrapper_markerVdfmc_mangling;
extern dylan_value Diep_markerVdfmc_mangling;
extern dylan_value Descape_markerVdfmc_mangling;
extern dylan_value Dmangles_dataVdfmc_mangling;

/* Defined object declarations */

static _KLsimple_closure_methodGVKi_0 K20;
static dylan_value K20I (dylan_value);
static _KLsimple_closure_methodGVKi_0 K19;
static dylan_value K19I (dylan_value);
static _KLsimple_closure_methodGVKi_0 K18;
static dylan_value K18I (dylan_value);
static _KLsimple_closure_methodGVKi_0 K16;
static dylan_value K16I (dylan_value);
extern _KLsimple_methodGVKe Kdefault_demangler_handler_functionVdfmc_mangling;
dylan_value Kdefault_demangler_handler_functionVdfmc_manglingI (dylan_value, dylan_value, dylan_value);
static _KLsignatureGVKe K14;
static _KLsimple_object_vectorGVKd_3 K15;
static _KLsignatureGVKe K17;
extern _KLclassGVKd KLdemanglerGVdfmc_mangling;
extern _KLmm_wrapperGVKi_0 KLdemanglerGVdfmc_manglingW;
static _KLimplementation_classGVKe K23;
static _KLsimple_object_vectorGVKd_2 K24;
extern _KLkeyword_methodGVKe KLdemanglerGZ32ZconstructorVdfmc_manglingMM0;
dylan_value KLdemanglerGZ32ZconstructorVdfmc_manglingMM0I (dylan_value, dylan_value);
static _KLsimple_object_vectorGVKd_1 K27;
static _KLsimple_object_vectorGVKd_6 K28;
static dylan_value K32I ();
static dylan_value K31I ();
static _KLkeyword_signatureAvaluesGVKi K33;
static _KLsimple_object_vectorGVKd_1 K34;
static _KLbyte_stringGVKd_11 K35;
extern _KLkeyword_methodGVKe Kdemangle_name_rawVdfmc_manglingMM0;
dylan_value Kdemangle_name_rawVdfmc_manglingMM0I (dylan_value, dylan_value, dylan_value, dylan_value);
extern _KLsimple_methodGVKe Kdemangle_name_intoVdfmc_manglingMM0;
dylan_value Kdemangle_name_intoVdfmc_manglingMM0I (dylan_value, dylan_value, dylan_value);
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K40;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K41;
static _KLsimple_typechecked_cache_header_engine_nodeGVKg K42;
static _KLsignatureGVKe K43;
static _KLsimple_object_vectorGVKd_3 K44;
static _KLkeyword_signatureAvaluesGVKi K45;
static _KLsimple_object_vectorGVKd_2 K46;
static _KLsymbolGVKd KJhandler_function_;
static _KLbyte_stringGVKd_16 K48;
static _KLsimple_object_vectorGVKd_2 K49;
static _KLsimple_object_vectorGVKd_1 K50;
extern _KLkeyword_methodGVKe Kdemangle_name_locallyVdfmc_manglingMM0;
dylan_value Kdemangle_name_locallyVdfmc_manglingMM0I (dylan_value, dylan_value, dylan_value, dylan_value);
static _KLkeyword_signatureAvaluesGVKi K53;
static _KLsimple_object_vectorGVKd_2 K54;
static _KLunionGVKe K55;
static _KLsingletonGVKd K56;
extern _KLkeyword_methodGVKe Kdemangle_binding_spreadVdfmc_manglingMM0;
dylan_value Kdemangle_binding_spreadVdfmc_manglingMM0I (dylan_value, dylan_value, dylan_value, dylan_value);
static _KLbyte_stringGVKd_5 K59;
static _KLunionGVKe K60;
static _KLkeyword_signatureAvaluesGVKi K61;
static _KLsimple_object_vectorGVKd_3 K62;
extern _KLsimple_methodGVKe Kdemangler_extract_characteristicsVdfmc_manglingMM0;
dylan_value Kdemangler_extract_characteristicsVdfmc_manglingMM0I (dylan_value, dylan_value);
static _KLsignatureAvaluesGVKi K65;
extern _KLsimple_methodGVKe Kdemangler_extract_library_nameVdfmc_manglingMM0;
dylan_value Kdemangler_extract_library_nameVdfmc_manglingMM0I (dylan_value, dylan_value);
dylan_value Kdemangler_extract_method_detailsVdfmc_manglingMM0I (dylan_value, dylan_value);
dylan_value Kdemangler_extract_callable_object_nameVdfmc_manglingMM0I (dylan_value, dylan_value);
static _KLbyte_stringGVKd_1 K70;
static _KLsignatureAvaluesGVKi K71;
static _KLsimple_object_vectorGVKd_1 K72;
extern _KLsimple_methodGVKe Kdemangler_extract_method_detailsVdfmc_manglingMM0;
static _KLsignatureAvaluesGVKi K74;
static _KLsimple_object_vectorGVKd_2 K75;
extern _KLsimple_methodGVKe Kdemangler_extract_generic_function_nameVdfmc_manglingMM0;
dylan_value Kdemangler_extract_generic_function_nameVdfmc_manglingMM0I (dylan_value, dylan_value);
static _KLsignatureAvaluesGVKi K78;
extern _KLsimple_methodGVKe Kdemangler_extract_callable_object_nameVdfmc_manglingMM0;
extern _KLkeyword_methodGVKe KinitializeVKdMdfmc_manglingM2;
dylan_value KinitializeVKdMdfmc_manglingM2I (dylan_value, dylan_value);
static _KLbyte_stringGVKd_15 K83;
dylan_value Kinitialize_demangler_tableVdfmc_manglingMM0I (dylan_value);
extern _KLsimple_methodGVKe Kdemangle_escapeVdfmc_mangling;
dylan_value Kdemangle_escapeVdfmc_manglingI (dylan_value, dylan_value, dylan_value);
static _KLsignatureAvaluesGVKi K87;
static _KLsimple_object_vectorGVKd_2 K88;
static _KLkeyword_signatureGVKe K89;

/* Indirection variables */

static dylan_value IKJhandler_function_ = &KJhandler_function_;

/* Variables */

dylan_value demangler_extract_callable_object_nameVdfmc_mangling = &Kdemangler_extract_callable_object_nameVdfmc_manglingMM0;
dylan_value demangler_extract_generic_function_nameVdfmc_mangling = &Kdemangler_extract_generic_function_nameVdfmc_manglingMM0;
dylan_value demangler_extract_method_detailsVdfmc_mangling = &Kdemangler_extract_method_detailsVdfmc_manglingMM0;
dylan_value demangler_extract_library_nameVdfmc_mangling = &Kdemangler_extract_library_nameVdfmc_manglingMM0;
dylan_value demangler_extract_characteristicsVdfmc_mangling = &Kdemangler_extract_characteristicsVdfmc_manglingMM0;
dylan_value demangle_binding_spreadVdfmc_mangling = &Kdemangle_binding_spreadVdfmc_manglingMM0;
dylan_value demangle_name_locallyVdfmc_mangling = &Kdemangle_name_locallyVdfmc_manglingMM0;
dylan_value demangle_name_rawVdfmc_mangling = &Kdemangle_name_rawVdfmc_manglingMM0;
dylan_value LdemanglerGVdfmc_mangling = &KLdemanglerGVdfmc_mangling;
dylan_value Dhygiene_marker_idQVdfmc_mangling = &KPunboundVKi;
dylan_value Dlibrary_separator_idQVdfmc_mangling = &KPunboundVKi;
dylan_value Dmodule_separator_idQVdfmc_mangling = &KPunboundVKi;
dylan_value Dmethod_mangled_marker_idQVdfmc_mangling = &KPunboundVKi;
dylan_value default_demangler_handler_functionVdfmc_mangling = &Kdefault_demangler_handler_functionVdfmc_mangling;

/* Objects */

static _KLsimple_closure_methodGVKi_0 K20 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &rest_xep_0,
  &K17,
  &K20I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 K19 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &rest_xep_0,
  &K17,
  &K19I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 K18 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &rest_xep_0,
  &K17,
  &K18I,
  (dylan_value) 1
};

static _KLsimple_closure_methodGVKi_0 K16 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &rest_xep_0,
  &K17,
  &K16I,
  (dylan_value) 1
};

_KLsimple_methodGVKe Kdefault_demangler_handler_functionVdfmc_mangling = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K14,
  &Kdefault_demangler_handler_functionVdfmc_manglingI
};

static _KLsignatureGVKe K14 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 41945101,
  &K15
};

static _KLsimple_object_vectorGVKd_3 K15 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLbyte_stringGVKd,
  &KLintegerGVKd,
  &KLcharacterGVKd
};

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

_KLclassGVKd KLdemanglerGVdfmc_mangling = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K35,
  &K23,
  (dylan_value) 1,
  &Kdfmc_mangling_moduleYdylan_userVdfmc_mangling
};

_KLmm_wrapperGVKi_0 KLdemanglerGVdfmc_manglingW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K23,
  (dylan_value) 1,
  9,
  33554439,
  (dylan_value) 1
};

static _KLimplementation_classGVKe K23 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 527433737,
  &KLdemanglerGVdfmc_mangling,
  &KLdemanglerGVdfmc_manglingW,
  &KPfalseVKi,
  &K24,
  (dylan_value) -3,
  &KLdemanglerGZ32ZconstructorVdfmc_manglingMM0,
  &K27,
  &K28,
  (dylan_value) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K24,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_2 K24 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &Kmangler_bufferVdfmc_manglingHLabstract_manglerG,
  &Kmangler_tableVdfmc_manglingHLabstract_manglerG
};

_KLkeyword_methodGVKe KLdemanglerGZ32ZconstructorVdfmc_manglingMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_2,
  &K33,
  &key_mep_2,
  &KLdemanglerGZ32ZconstructorVdfmc_manglingMM0I,
  &KPempty_vectorVKi
};

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

static _KLsimple_object_vectorGVKd_6 K28 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &KLobjectGVKd,
  &KLabstract_manglerGVdfmc_mangling,
  &KLdemanglerGVdfmc_mangling,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLkeyword_signatureAvaluesGVKi K33 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 35390469,
  &KDsignature_LclassG_typesVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K34
};

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

static _KLbyte_stringGVKd_11 K35 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 45,
  "<demangler>"
};

_KLkeyword_methodGVKe Kdemangle_name_rawVdfmc_manglingMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K45,
  &key_mep_4,
  &Kdemangle_name_rawVdfmc_manglingMM0I,
  &K46
};

_KLsimple_methodGVKe Kdemangle_name_intoVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K43,
  &Kdemangle_name_intoVdfmc_manglingMM0I
};

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

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

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

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

static _KLsimple_object_vectorGVKd_3 K44 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLdemanglerGVdfmc_mangling,
  &KLbyte_stringGVKd,
  &KLfunctionGVKd
};

static _KLkeyword_signatureAvaluesGVKi K45 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33817609,
  &K49,
  &K50,
  &KDsignature_LobjectG_typesVKi,
  &KDsignature_Lbyte_stringG_typesVKi
};

static _KLsimple_object_vectorGVKd_2 K46 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KJhandler_function_,
  &Kdefault_demangler_handler_functionVdfmc_mangling
};

static _KLsymbolGVKd KJhandler_function_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K48
};

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

static _KLsimple_object_vectorGVKd_2 K49 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLdemanglerGVdfmc_mangling,
  &KLbyte_stringGVKd
};

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

_KLkeyword_methodGVKe Kdemangle_name_locallyVdfmc_manglingMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K53,
  &key_mep_4,
  &Kdemangle_name_locallyVdfmc_manglingMM0I,
  &K46
};

static _KLkeyword_signatureAvaluesGVKi K53 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33818633,
  &K49,
  &K50,
  &KDsignature_LobjectG_typesVKi,
  &K54
};

static _KLsimple_object_vectorGVKd_2 K54 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLbyte_stringGVKd,
  &K55
};

static _KLunionGVKe K55 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K56,
  &KLintegerGVKd
};

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

_KLkeyword_methodGVKe Kdemangle_binding_spreadVdfmc_manglingMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_4,
  &K61,
  &key_mep_4,
  &Kdemangle_binding_spreadVdfmc_manglingMM0I,
  &K46
};

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

static _KLunionGVKe K60 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K56,
  &KLbyte_stringGVKd
};

static _KLkeyword_signatureAvaluesGVKi K61 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33819657,
  &K49,
  &K50,
  &KDsignature_LobjectG_typesVKi,
  &K62
};

static _KLsimple_object_vectorGVKd_3 K62 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &KLbyte_stringGVKd,
  &K60,
  &K60
};

_KLsimple_methodGVKe Kdemangler_extract_characteristicsVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K65,
  &Kdemangler_extract_characteristicsVdfmc_manglingMM0I
};

static _KLsignatureAvaluesGVKi K65 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33558537,
  &K49,
  &KDsignature_LbooleanG_typesVKi
};

_KLsimple_methodGVKe Kdemangler_extract_library_nameVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K71,
  &Kdemangler_extract_library_nameVdfmc_manglingMM0I
};

static _KLbyte_stringGVKd_1 K70 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 5,
  "0"
};

static _KLsignatureAvaluesGVKi K71 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33555465,
  &K49,
  &K72
};

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

_KLsimple_methodGVKe Kdemangler_extract_method_detailsVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K74,
  &Kdemangler_extract_method_detailsVdfmc_manglingMM0I
};

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

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

_KLsimple_methodGVKe Kdemangler_extract_generic_function_nameVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K78,
  &Kdemangler_extract_generic_function_nameVdfmc_manglingMM0I
};

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

_KLsimple_methodGVKe Kdemangler_extract_callable_object_nameVdfmc_manglingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_2,
  &K78,
  &Kdemangler_extract_callable_object_nameVdfmc_manglingMM0I
};

_KLkeyword_methodGVKe KinitializeVKdMdfmc_manglingM2 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_2,
  &K89,
  &key_mep_2,
  &KinitializeVKdMdfmc_manglingM2I,
  &KPempty_vectorVKi
};

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

_KLsimple_methodGVKe Kdemangle_escapeVdfmc_mangling = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_3,
  &K87,
  &Kdemangle_escapeVdfmc_manglingI
};

static _KLsignatureAvaluesGVKi K87 = {
  &KLsignatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 33556493,
  &K15,
  &K88
};

static _KLsimple_object_vectorGVKd_2 K88 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  &KLcharacterGVKd,
  &KLintegerGVKd
};

static _KLkeyword_signatureGVKe K89 = {
  &KLkeyword_signatureGVKeW /* wrapper */,
  (dylan_value) 46923781,
  &K34,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

/* Code */

static dylan_value K20I (dylan_value args_) {
  dylan_value T1;
  dylan_value T2;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T1 = Kconcatenate_2VKeMM1I(CREF(0), args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T2 = APPLY1(&KEEVKd, T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  return(T2);
}

static dylan_value K19I (dylan_value args_) {
  dylan_value T1;
  dylan_value T2;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T1 = Kconcatenate_2VKeMM1I(CREF(0), args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T2 = APPLY1(&KEEVKd, T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  return(T2);
}

static dylan_value K18I (dylan_value args_) {
  dylan_value T1;
  dylan_value T2;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T1 = Kconcatenate_2VKeMM1I(CREF(0), args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T2 = APPLY1(&KEEVKd, T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  return(T2);
}

static dylan_value K16I (dylan_value args_) {
  dylan_value T1;
  dylan_value T2;
  CAPTURE_ENVIRONMENT

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T1 = Kconcatenate_2VKeMM1I(CREF(0), args_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T2 = APPLY1(&KEEVKd, T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  return(T2);
}

dylan_value Kdefault_demangler_handler_functionVdfmc_manglingI (dylan_value name_, dylan_value pos_, dylan_value ch_) {
  dylan_value T3;
  dylan_value T4_0;
  dylan_value T4_1;
  DWORD T5;
  DWORD T6;
  dylan_value T7;
  dylan_value T8_0;
  dylan_value T8_1;
  DWORD T9;
  DWORD T10;
  dylan_value T11;
  dylan_value T12_0;
  dylan_value T12_1;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:84
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:87
  T3 = CALL2(&KmemberQVKd, ch_, Dall_decoration_markersVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:87
  if (T3 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:88
    T5 = primitive_cast_integer_as_raw(pos_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:88
    T6 = primitive_machine_word_add_signal_overflow(T5,4);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:88
    T7 = primitive_cast_raw_as_integer(T6);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:88
    T8_0 = &KPempty_stringVKi;
    T8_1 = T7;
    T4_0 = T8_0;
    T4_1 = T8_1;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:90
    T9 = primitive_cast_integer_as_raw(pos_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:90
    T10 = primitive_machine_word_add_signal_overflow(T9,4);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:90
    T11 = primitive_cast_raw_as_integer(T10);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:90
    T12_0 = ch_;
    T12_1 = T11;
    T4_0 = T12_0;
    T4_1 = T12_1;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:87
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:84
  MV_SET_ELT(1, T4_1);
  MV_SET_COUNT(2);
  return(T4_0);
}

dylan_value KLdemanglerGZ32ZconstructorVdfmc_manglingMM0I (dylan_value class_, dylan_value init_args_) {
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:14
  T3 = primitive_object_allocate_filled(3,&KLdemanglerGVdfmc_manglingW,2,&KPunboundVKi,0,0,&KPunboundVKi);
  T4 = K32I();
  SLOT_VALUE_SETTER(T4, T3, 0);
  T5 = K31I();
  SLOT_VALUE_SETTER(T5, T3, 1);
  APPLY2(&KinitializeVKd, T3, init_args_);
  T6_0 = T3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:14
  MV_SET_COUNT(1);
  return(T6_0);
}

static dylan_value K32I () {
  dylan_value T1_0;
  dylan_value T2_0;
  dylan_value init_value_;

  T2_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  init_value_ = T2_0;
  T1_0 = init_value_;
  MV_SET_COUNT(1);
  return(T1_0);
}

static dylan_value K31I () {
  dylan_value T1_0;
  dylan_value T2_0;
  dylan_value init_value_;

  T2_0 = KmakeVKdMM13I(&KLsimple_object_vectorGVKd, &KPempty_vectorVKi, &KPfalseVKi, (dylan_value) 1025);
  init_value_ = T2_0;
  T1_0 = init_value_;
  MV_SET_COUNT(1);
  return(T1_0);
}

dylan_value Kdemangle_name_rawVdfmc_manglingMM0I (dylan_value mangler_, dylan_value name_, dylan_value Urest_, dylan_value handler_function_) {
  dylan_value T5_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:118
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:122
  Kmangler_resetVdfmc_manglingMM0I(mangler_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:123
  CALL3(&Kdemangle_name_intoVdfmc_manglingMM0, mangler_, name_, handler_function_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:124
  T5_0 = Kmangler_as_stringVdfmc_manglingMM0I(mangler_, &KPempty_vectorVKi, (dylan_value) 1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:118
  MV_SET_COUNT(1);
  return(T5_0);
}

dylan_value Kdemangle_name_intoVdfmc_manglingMM0I (dylan_value mangler_, dylan_value name_, dylan_value handler_function_) {
  dylan_value T4;
  dylan_value T5;
  dylan_value this_;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10_0;
  dylan_value T10_1;
  dylan_value dataF11;
  dylan_value new_posF12;
  dylan_value T13;
  dylan_value T14_0;
  dylan_value T14_1;
  dylan_value dataF15;
  dylan_value new_posF16;
  dylan_value T17;
  dylan_value T18;
  dylan_value pos_;
  dylan_value T20;
  dylan_value T21;
  dylan_value T22;
  dylan_value T23;
  dylan_value T24;
  dylan_value T25;
  dylan_value T26;
  dylan_value T27;
  dylan_value T28;
  dylan_value T29;
  dylan_value T30;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:95
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:97
  pos_ = (dylan_value) 1;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:98
  T27 = SLOT_VALUE_INITD(name_, 0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
L0: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
    T20 = pos_;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
    CONGRUENT_CALL_PROLOG(&KLVKd, 2);
    T17 = CONGRUENT_CALL2(T20, T27);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
    if (T17 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:100
      T28 = SLOT_VALUE_INITD(mangler_, 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:100
      T26 = pos_;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:100
      CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
      T4 = CONGRUENT_CALL3(name_, T26, &KPempty_vectorVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:100
      CONGRUENT_CALL_PROLOG(&KasVKd, 2);
      T5 = CONGRUENT_CALL2(&KLintegerGVKd, T4);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:100
      this_ = CALL2(&KelementVKd, T28, T5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
      T29 = primitive_instanceQ(this_,&KLcharacterGVKd);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
      if (T29 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:103
        T25 = pos_;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:103
        CONGRUENT_CALL_PROLOG(&KAVKd, 2);
        T7 = CONGRUENT_CALL2(T25, (dylan_value) 5);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:103
        pos_ = T7;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:104
        ENGINE_NODE_CALL_PROLOG(&Kmangle_raw_intoVdfmc_mangling, &K40, 2);
        ENGINE_NODE_CALL2(&K40, mangler_, this_);
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
        T30 = primitive_instanceQ(this_,&KLfunctionGVKd);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
        if (T30 != &KPfalseVKi) {
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          primitive_type_check(this_, &KLfunctionGVKd);
          T8 = this_;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          T24 = pos_;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
          T9 = CONGRUENT_CALL3(name_, T24, &KPempty_vectorVKi);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          T23 = pos_;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          T10_0 = CALL3(T8, name_, T23, T9);
          T10_1 = MV_GET_ELT(1);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          dataF11 = T10_0;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:106
          new_posF12 = T10_1;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:107
          pos_ = new_posF12;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:108
          ENGINE_NODE_CALL_PROLOG(&Kmangle_raw_intoVdfmc_mangling, &K41, 2);
          ENGINE_NODE_CALL2(&K41, mangler_, dataF11);
        } else {
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          T22 = pos_;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
          T13 = CONGRUENT_CALL3(name_, T22, &KPempty_vectorVKi);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          T21 = pos_;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          T14_0 = CALL3(handler_function_, name_, T21, T13);
          T14_1 = MV_GET_ELT(1);
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          dataF15 = T14_0;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:110
          new_posF16 = T14_1;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:111
          pos_ = new_posF16;
          // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:112
          ENGINE_NODE_CALL_PROLOG(&Kmangle_raw_intoVdfmc_mangling, &K42, 2);
          ENGINE_NODE_CALL2(&K42, mangler_, dataF15);
        }
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:101
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
      goto L0;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:99
  T18 = &KPfalseVKi;
  MV_SET_COUNT(0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:95
  return(T18);
}

dylan_value Kdemangle_name_locallyVdfmc_manglingMM0I (dylan_value mangler_, dylan_value name_, dylan_value Urest_, dylan_value handler_function_) {
  dylan_value hm_;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value stripped_name_;
  dylan_value T10;
  dylan_value marker_;
  dylan_value T12;
  dylan_value T13;
  dylan_value T14;
  DWORD T15;
  DWORD T16;
  DWORD T17;
  DWORD T18;
  dylan_value T19;
  dylan_value T20;
  dylan_value T21;
  dylan_value T22;
  dylan_value T23;
  dylan_value T24;
  dylan_value T25_0;
  dylan_value T25_1;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:128
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T13 = SLOT_VALUE_INITD(name_, 0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T14 = SLOT_VALUE_INITD(Dlocal_suffixVdfmc_mangling, 0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T15 = primitive_cast_integer_as_raw(T13);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T16 = primitive_cast_integer_as_raw(T14);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T17 = primitive_machine_word_logxor(T16,1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T18 = primitive_machine_word_subtract_signal_overflow(T15,T17);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:132
  T19 = primitive_cast_raw_as_integer(T18);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:133
  marker_ = &KPfalseVKi;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:135
  T20 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, T19, &KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:135
  T21 = KEVKdMM27I(T20, Dlocal_suffixVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:135
  if (T21 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:136
    T22 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, T19);
    stripped_name_ = T22;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:138
    hm_ = CALL2(&Kfind_keyVKd, name_, Dhygiene_marker_idQVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:139
    if (hm_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:140
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T6 = CONGRUENT_CALL2(hm_, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:140
      T23 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, T6, &KPunboundVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:140
      T7 = Kstring_to_integerYcommon_extensionsVcommon_dylanI(T23, &KPempty_vectorVKi, (dylan_value) 41, (dylan_value) 1, &KPfalseVKi, &KPunboundVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:140
      marker_ = T7;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:141
      T24 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, hm_);
      T8 = T24;
    } else {
      T8 = name_;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:139
    stripped_name_ = T8;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:135
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:145
  T10 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, stripped_name_, &KPempty_vectorVKi, handler_function_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:145
  T12 = marker_;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:145
  T25_0 = T10;
  T25_1 = T12;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:128
  MV_SET_ELT(1, T25_1);
  MV_SET_COUNT(2);
  return(T25_0);
}

dylan_value Kdemangle_binding_spreadVdfmc_manglingMM0I (dylan_value mangler_, dylan_value name_, dylan_value Urest_, dylan_value handler_function_) {
  dylan_value lsep_;
  dylan_value Utmp_;
  dylan_value binding_end_;
  dylan_value T8;
  dylan_value T9;
  dylan_value msep_;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13;
  dylan_value T14;
  dylan_value T15;
  dylan_value T16;
  dylan_value T17;
  dylan_value T18;
  dylan_value dylanQ_;
  dylan_value T20;
  dylan_value lnameF21;
  dylan_value dlname_;
  dylan_value T23;
  dylan_value T24;
  dylan_value T25;
  dylan_value T26;
  dylan_value T27;
  dylan_value dmname_;
  dylan_value T29;
  dylan_value T30_0;
  dylan_value T30_1;
  dylan_value T30_2;
  dylan_value T31;
  dylan_value T32_0;
  dylan_value T32_1;
  dylan_value T32_2;
  dylan_value T33;
  dylan_value T34_0;
  dylan_value T35;
  dylan_value T36_0;
  dylan_value T37;
  dylan_value vnameF38;
  dylan_value mname_;
  dylan_value lnameF40;
  dylan_value T41_0;
  dylan_value T41_1;
  dylan_value T41_2;
  dylan_value vnameF42;
  dylan_value T43;
  dylan_value T44_0;
  dylan_value T44_1;
  dylan_value T44_2;
  dylan_value T45_0;
  dylan_value T45_1;
  dylan_value T45_2;
  dylan_value T46_0;
  dylan_value T46_1;
  dylan_value T46_2;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:151
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:157
  lsep_ = CALL2(&Kfind_keyVKd, name_, Dlibrary_separator_idQVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:158
  Utmp_ = CALL2(&Kfind_keyVKd, name_, Dmethod_mangled_marker_idQVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:158
  if (Utmp_ != &KPfalseVKi) {
    binding_end_ = Utmp_;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:158
    T33 = SLOT_VALUE_INITD(name_, 0);
    binding_end_ = T33;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:158
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
  if (lsep_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
    CONGRUENT_CALL_PROLOG(&KAVKd, 2);
    T8 = CONGRUENT_CALL2(lsep_, (dylan_value) 5);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
    CONGRUENT_CALL_PROLOG(&KLVKd, 2);
    T34_0 = CONGRUENT_CALL2(T8, binding_end_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
    T35 = T34_0;
    T9 = T35;
  } else {
    T9 = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
  if (T9 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:160
    msep_ = CALL2(&Kfind_keyVKd, name_, Dmodule_separator_idQVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
    if (msep_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
      CONGRUENT_CALL_PROLOG(&KLVKd, 2);
      T36_0 = CONGRUENT_CALL2(msep_, lsep_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
      T37 = T36_0;
      T11 = T37;
    } else {
      T11 = &KPfalseVKi;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
    if (T11 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:162
      vnameF38 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, msep_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:163
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T12 = CONGRUENT_CALL2(msep_, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:163
      mname_ = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, T12, lsep_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:164
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T13 = CONGRUENT_CALL2(lsep_, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:164
      lnameF40 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, T13, binding_end_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:165
      T14 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, vnameF38, &KPempty_vectorVKi, handler_function_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:166
      T15 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, mname_, &KPempty_vectorVKi, handler_function_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:167
      T16 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, lnameF40, &KPempty_vectorVKi, handler_function_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:165
      T41_0 = T14;
      T41_1 = T15;
      T41_2 = T16;
      T30_0 = T41_0;
      T30_1 = T41_1;
      T30_2 = T41_2;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:169
      vnameF42 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, lsep_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:170
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T17 = CONGRUENT_CALL2(lsep_, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:170
      CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
      T18 = CONGRUENT_CALL3(name_, T17, &KPempty_vectorVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:170
      dylanQ_ = KEEVKdI(T18, Ddylan_module_markerVdfmc_mangling);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:172
      if (dylanQ_ != &KPfalseVKi) {
        lnameF21 = &K59;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:173
        CONGRUENT_CALL_PROLOG(&KAVKd, 2);
        T20 = CONGRUENT_CALL2(lsep_, (dylan_value) 5);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:173
        T43 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, T20, binding_end_);
        lnameF21 = T43;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:172
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:175
      dlname_ = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, lnameF21, &KPempty_vectorVKi, handler_function_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
      if (dylanQ_ != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
        CONGRUENT_CALL_PROLOG(&KAVKd, 2);
        T23 = CONGRUENT_CALL2(lsep_, (dylan_value) 9);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
        CONGRUENT_CALL_PROLOG(&KelementVKd, 3);
        T24 = CONGRUENT_CALL3(name_, T23, &KPempty_vectorVKi);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
        T25 = CALL2(&KelementVKd, Ddemangle_dylan_moduleVdfmc_mangling, T24);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
        CONGRUENT_CALL_PROLOG(&KasVKd, 2);
        T26 = CONGRUENT_CALL2(&KLstringGVKd, T25);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
        CONGRUENT_CALL_PROLOG(&Kas_lowercaseVKd, 1);
        T27 = CONGRUENT_CALL1(T26);
        dmname_ = T27;
      } else {
        dmname_ = dlname_;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:177
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:180
      T29 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, vnameF42, &KPempty_vectorVKi, handler_function_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:180
      T44_0 = T29;
      T44_1 = dmname_;
      T44_2 = dlname_;
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:180
      T46_0 = T44_0;
      T46_1 = T44_1;
      T46_2 = T44_2;
      {
        MV_CHECK_TYPE_PROLOGUE(T44_0);
        primitive_type_check(T46_0, &KLobjectGVKd);
        primitive_type_check(T46_1, &K60);
        primitive_type_check(T46_2, &K60);
        MV_CHECK_TYPE_EPILOGUE();
      }
      T30_0 = T46_0;
      T30_1 = T46_1;
      T30_2 = T46_2;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:161
    T32_0 = T30_0;
    T32_1 = T30_1;
    T32_2 = T30_2;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:185
    T31 = Kdemangle_name_rawVdfmc_manglingMM0I(mangler_, name_, &KPempty_vectorVKi, handler_function_);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:185
    T45_0 = T31;
    T45_1 = &KPfalseVKi;
    T45_2 = &KPfalseVKi;
    T32_0 = T45_0;
    T32_1 = T45_1;
    T32_2 = T45_2;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:159
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:151
  MV_SET_ELT(1, T32_1);
  MV_SET_ELT(2, T32_2);
  MV_SET_COUNT(3);
  return(T32_0);
}

dylan_value Kdemangler_extract_characteristicsVdfmc_manglingMM0I (dylan_value demangler_, dylan_value name_) {
  dylan_value T3;
  dylan_value T4_0;
  dylan_value T4_1;
  dylan_value T4_2;
  dylan_value T4_3;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7_0;
  dylan_value T7_1;
  dylan_value T7_2;
  dylan_value T7_3;
  DWORD T8;
  dylan_value T9;
  DBCHR T10;
  dylan_value T11;
  dylan_value T12_0;
  dylan_value T13;
  dylan_value T14;
  dylan_value T15;
  DWORD T16;
  dylan_value T17;
  dylan_value T18;
  DBCHR T19;
  dylan_value T20;
  dylan_value T21_0;
  dylan_value T22;
  dylan_value T23;
  dylan_value T24;
  DBCHR T25;
  dylan_value T26;
  dylan_value T27_0;
  dylan_value T28;
  dylan_value T29;
  dylan_value T30;
  dylan_value T31_0;
  dylan_value T31_1;
  dylan_value T31_2;
  dylan_value T31_3;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:200
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:206
  T5 = SLOT_VALUE_INITD(name_, 0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:206
  T6 = primitive_idQ(T5,(dylan_value) 1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:206
  if (T6 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:207
    T7_0 = &KPfalseVKi;
    T7_1 = &KPfalseVKi;
    T7_2 = &KPfalseVKi;
    T7_3 = &KPfalseVKi;
    T4_0 = T7_0;
    T4_1 = T7_1;
    T4_2 = T7_2;
    T4_3 = T7_3;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    T8 = primitive_cast_integer_as_raw(T5);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    T9 = primitive_machine_word_unsigned_less_thanQ(1,T8);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    if (T9 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
      T10 = REPEATED_DBCHR_SLOT_VALUE_TAGGED(name_, 1, 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
      T11 = primitive_raw_as_byte_character(T10);
      T14 = T11;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
      T12_0 = Kelement_range_errorVKeI(name_, (dylan_value) 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
      T13 = T12_0;
      T14 = T13;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    T15 = primitive_idQ(T14,Dconstant_markerVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    T16 = primitive_machine_word_subtract_signal_overflow(T8,4);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    T17 = primitive_cast_raw_as_integer(T16);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    T18 = primitive_machine_word_unsigned_less_thanQ(T16,T8);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    if (T18 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
      T19 = REPEATED_DBCHR_SLOT_VALUE_TAGGED(name_, 1, T16);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
      T20 = primitive_raw_as_byte_character(T19);
      T23 = T20;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
      T21_0 = Kelement_range_errorVKeI(name_, T17);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
      T22 = T21_0;
      T23 = T22;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:210
    T24 = primitive_idQ(T23,Dwrapper_markerVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
    if (T18 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
      T25 = REPEATED_DBCHR_SLOT_VALUE_TAGGED(name_, 1, T16);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
      T26 = primitive_raw_as_byte_character(T25);
      T29 = T26;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
      T27_0 = Kelement_range_errorVKeI(name_, T17);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
      T28 = T27_0;
      T29 = T28;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:211
    T30 = primitive_idQ(T29,Diep_markerVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:212
    CONGRUENT_CALL_PROLOG(&KmemberQVKd, 3);
    T3 = CONGRUENT_CALL3(Dmethod_mangled_markerVdfmc_mangling, name_, &KPempty_vectorVKi);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:209
    T31_0 = T15;
    T31_1 = T24;
    T31_2 = T30;
    T31_3 = T3;
    T4_0 = T31_0;
    T4_1 = T31_1;
    T4_2 = T31_2;
    T4_3 = T31_3;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:206
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:200
  MV_SET_ELT(1, T4_1);
  MV_SET_ELT(2, T4_2);
  MV_SET_ELT(3, T4_3);
  MV_SET_COUNT(4);
  return(T4_0);
}

dylan_value Kdemangler_extract_library_nameVdfmc_manglingMM0I (dylan_value demangler_, dylan_value name_) {
  dylan_value T3_0;
  dylan_value T3_1;
  dylan_value T3_2;
  dylan_value T3_3;
  dylan_value methodQ_;
  dylan_value T5_0;
  dylan_value T5_1;
  dylan_value method_library_;
  dylan_value T7_0;
  dylan_value T8_0;
  dylan_value T8_1;
  dylan_value T8_2;
  dylan_value library_name_;
  dylan_value T10_0;
  dylan_value T11_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:221
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:225
  T3_0 = Kdemangler_extract_characteristicsVdfmc_manglingMM0I(demangler_, name_);
  T3_1 = MV_GET_ELT(1);
  T3_2 = MV_GET_ELT(2);
  T3_3 = MV_GET_ELT(3);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:224
  methodQ_ = T3_3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:226
  if (methodQ_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:228
    T5_0 = Kdemangler_extract_method_detailsVdfmc_manglingMM0I(demangler_, name_);
    T5_1 = MV_GET_ELT(1);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:227
    method_library_ = T5_0;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:229
    T7_0 = method_library_;
    T11_0 = T7_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:232
    T8_0 = Kdemangle_binding_spreadVdfmc_manglingMM0I(demangler_, name_, &KPempty_vectorVKi, &Kdefault_demangler_handler_functionVdfmc_mangling);
    T8_1 = MV_GET_ELT(1);
    T8_2 = MV_GET_ELT(2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:231
    library_name_ = T8_2;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:233
    T10_0 = library_name_;
    T11_0 = T10_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:226
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:221
  MV_SET_COUNT(1);
  return(T11_0);
}

dylan_value Kdemangler_extract_method_detailsVdfmc_manglingMM0I (dylan_value demangler_, dylan_value name_) {
  dylan_value cname_;
  dylan_value mm_;
  dylan_value T5;
  dylan_value mm2_;
  dylan_value T7_0;
  dylan_value T7_1;
  dylan_value T7_2;
  dylan_value l_;
  dylan_value method_lib_part_;
  dylan_value T10;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13_0;
  dylan_value T13_1;
  dylan_value T14_0;
  dylan_value T14_1;
  dylan_value T15;
  dylan_value detail_part_;
  dylan_value lib_part_;
  dylan_value T18;
  dylan_value method_num_part_;
  dylan_value T20_0;
  dylan_value T20_1;
  dylan_value T21_0;
  dylan_value T21_1;
  dylan_value T22_0;
  dylan_value T22_1;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:242
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:246
  cname_ = Kdemangler_extract_callable_object_nameVdfmc_manglingMM0I(demangler_, name_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:247
  mm_ = CALL2(&Kfind_keyVKd, cname_, Dmethod_mangled_marker_idQVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:248
  if (mm_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:249
    CONGRUENT_CALL_PROLOG(&KAVKd, 2);
    T5 = CONGRUENT_CALL2(mm_, (dylan_value) 5);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:249
    detail_part_ = Kcopy_sequenceVKdMM3I(cname_, &KPempty_vectorVKi, T5, &KPunboundVKi);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:250
    mm2_ = CALL2(&Kfind_keyVKd, detail_part_, Dmethod_mangled_marker_idQVdfmc_mangling);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:251
    if (mm2_ != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:254
      lib_part_ = Kcopy_sequenceVKdMM3I(detail_part_, &KPempty_vectorVKi, (dylan_value) 1, mm2_);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:255
      T18 = KEVKdMM27I(lib_part_, &KPempty_stringVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:255
      if (T18 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:256
        T7_0 = Kdemangle_binding_spreadVdfmc_manglingMM0I(demangler_, cname_, &KPempty_vectorVKi, &Kdefault_demangler_handler_functionVdfmc_mangling);
        T7_1 = MV_GET_ELT(1);
        T7_2 = MV_GET_ELT(2);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:256
        l_ = T7_2;
        method_lib_part_ = l_;
      } else {
        method_lib_part_ = lib_part_;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:255
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:262
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T10 = CONGRUENT_CALL2(mm2_, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:262
      method_num_part_ = Kcopy_sequenceVKdMM3I(detail_part_, &KPempty_vectorVKi, T10, &KPunboundVKi);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:263
      if (method_lib_part_ != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:228
        T15 = method_lib_part_;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:263
        T11 = CALL2(&Kdemangle_name_rawVdfmc_manglingMM0, demangler_, T15);
        T12 = T11;
      } else {
        T12 = &KPfalseVKi;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:263
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:263
      T20_0 = T12;
      T20_1 = method_num_part_;
      T13_0 = T20_0;
      T13_1 = T20_1;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:266
      T21_0 = &KPfalseVKi;
      T21_1 = &K70;
      T13_0 = T21_0;
      T13_1 = T21_1;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:251
    T14_0 = T13_0;
    T14_1 = T13_1;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:269
    T22_0 = &KPfalseVKi;
    T22_1 = &K70;
    T14_0 = T22_0;
    T14_1 = T22_1;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:248
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:242
  MV_SET_ELT(1, T14_1);
  MV_SET_COUNT(2);
  return(T14_0);
}

dylan_value Kdemangler_extract_callable_object_nameVdfmc_manglingMM0I (dylan_value demangler_, dylan_value name_) {
  dylan_value T3_0;
  dylan_value T3_1;
  dylan_value T3_2;
  dylan_value T3_3;
  dylan_value iepQ_;
  dylan_value T5_0;
  dylan_value T6_0;
  dylan_value T7;
  DWORD T8;
  DWORD T9;
  dylan_value T10;
  dylan_value T11_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:298
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:302
  T3_0 = Kdemangler_extract_characteristicsVdfmc_manglingMM0I(demangler_, name_);
  T3_1 = MV_GET_ELT(1);
  T3_2 = MV_GET_ELT(2);
  T3_3 = MV_GET_ELT(3);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:301
  iepQ_ = T3_2;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:303
  if (iepQ_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:304
    T7 = SLOT_VALUE_INITD(name_, 0);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:304
    T8 = primitive_cast_integer_as_raw(T7);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:304
    T9 = primitive_machine_word_subtract_signal_overflow(T8,4);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:304
    T10 = primitive_cast_raw_as_integer(T9);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:304
    T11_0 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, T10);
    T6_0 = T11_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:306
    T5_0 = name_;
    T6_0 = T5_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:303
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:298
  MV_SET_COUNT(1);
  return(T6_0);
}

dylan_value Kdemangler_extract_generic_function_nameVdfmc_manglingMM0I (dylan_value demangler_, dylan_value name_) {
  dylan_value mm_;
  dylan_value T4_0;
  dylan_value T5_0;
  dylan_value T6_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:279
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:283
  mm_ = CALL2(&Kfind_keyVKd, name_, Dmethod_mangled_marker_idQVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:284
  if (mm_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:285
    T6_0 = Kcopy_sequenceVKdMM3I(name_, &KPempty_vectorVKi, (dylan_value) 1, mm_);
    T5_0 = T6_0;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:287
    T4_0 = name_;
    T5_0 = T4_0;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:284
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:279
  MV_SET_COUNT(1);
  return(T5_0);
}

dylan_value KinitializeVKdMdfmc_manglingM2I (dylan_value mangler_, dylan_value Urest_) {
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:22
  T5 = primitive_copy_vector(Urest_);
  T4 = primitive_next_methods_parameter();
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
  T6 = primitive_idQ(T4,&KPempty_listVKi);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
  if (T6 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
    KerrorVKdMM1I(&K83, &KPempty_vectorVKi);
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
    T7 = SLOT_VALUE_INITD(T4, 0);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
    T8 = SLOT_VALUE_INITD(T4, 1);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
    MEP_CALL_PROLOG(T7, T8, 2);
    MEP_CALL2(T7, mangler_, T5);
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:23
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:24
  T3 = Kinitialize_demangler_tableVdfmc_manglingMM0I(mangler_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:22
  MV_SET_COUNT(0);
  return(T3);
}

dylan_value Kinitialize_demangler_tableVdfmc_manglingMM0I (dylan_value mangler_) {
  DWORD iF2T, iF2;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8;
  dylan_value T9;
  dylan_value T10T, T10;
  dylan_value T11;
  dylan_value T12;
  dylan_value T13;
  dylan_value T14;
  dylan_value T15;
  dylan_value T16;
  dylan_value iF17T, iF17;
  dylan_value T18;
  dylan_value T19;
  dylan_value T20;
  dylan_value iF21T, iF21;
  dylan_value T22;
  dylan_value T23;
  dylan_value T24;
  dylan_value T25;
  dylan_value T26;
  dylan_value T27;
  dylan_value T28;
  DWORD T29;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:27
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:28
  T26 = SLOT_VALUE_INITD(mangler_, 1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
  iF2T = 1;
L0: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
    iF2 = iF2T;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
    T28 = primitive_cast_raw_as_integer(iF2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
    T27 = primitive_machine_word_less_thanQ(1021,iF2);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
    if (T27 == &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:31
      CALL3(&Kelement_setterVKd, &KPfalseVKi, T26, T28);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
      T29 = primitive_machine_word_add_signal_overflow(iF2,4);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
      iF2T = T29;
      goto L0;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:34
  CONGRUENT_CALL_PROLOG(&KasVKd, 2);
  T3 = CONGRUENT_CALL2(&KLintegerGVKd, Descape_markerVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:34
  CALL3(&Kelement_setterVKd, &Kdemangle_escapeVdfmc_mangling, T26, T3);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T4 = CALL1(&Kforward_iteration_protocolVKd, Dmangles_dataVdfmc_mangling);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T5 = T4;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T6 = MV_GET_ELT(1);
;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T7 = MV_GET_ELT(2);
;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T8 = MV_GET_ELT(3);
;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T9 = MV_GET_ELT(5);
;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  T10T = T5;
L1: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
    T10 = T10T;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
    T11 = CALL3(T8, Dmangles_dataVdfmc_mangling, T10, T6);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
    if (T11 == &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
      T12 = CALL2(T9, Dmangles_dataVdfmc_mangling, T10);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:37
      T13 = CALL2(&KelementVKd, T12, (dylan_value) 1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:37
      T14 = CALL2(&KelementVKd, T12, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:37
      CONGRUENT_CALL_PROLOG(&KasVKd, 2);
      T15 = CONGRUENT_CALL2(&KLintegerGVKd, T14);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:37
      CALL3(&Kelement_setterVKd, T13, T26, T15);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
      T16 = CALL2(T7, Dmangles_dataVdfmc_mangling, T10);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
      T10T = T16;
      goto L1;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:36
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
  iF17T = (dylan_value) 389;
L2: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
    iF17 = iF17T;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
    CONGRUENT_CALL_PROLOG(&KLVKd, 2);
    T18 = CONGRUENT_CALL2((dylan_value) 489, iF17);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
    if (T18 == &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:41
      CONGRUENT_CALL_PROLOG(&KasVKd, 2);
      T19 = CONGRUENT_CALL2(&KLcharacterGVKd, iF17);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:41
      CALL3(&Kelement_setterVKd, T19, T26, iF17);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T20 = CONGRUENT_CALL2(iF17, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
      iF17T = T20;
      goto L2;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:40
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
  iF21T = (dylan_value) 193;
L3: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
    iF21 = iF21T;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
    CONGRUENT_CALL_PROLOG(&KLVKd, 2);
    T22 = CONGRUENT_CALL2((dylan_value) 229, iF21);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
    if (T22 == &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:44
      CONGRUENT_CALL_PROLOG(&KasVKd, 2);
      T23 = CONGRUENT_CALL2(&KLcharacterGVKd, iF21);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:44
      CALL3(&Kelement_setterVKd, T23, T26, iF21);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
      CONGRUENT_CALL_PROLOG(&KAVKd, 2);
      T24 = CONGRUENT_CALL2(iF21, (dylan_value) 5);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
      iF21T = T24;
      goto L3;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
    T25 = &KPfalseVKi;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:43
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:27
  MV_SET_COUNT(0);
  return(T25);
}

dylan_value Kdemangle_escapeVdfmc_manglingI (dylan_value name_, dylan_value pos_, dylan_value char_) {
  dylan_value T4;
  dylan_value T5;
  dylan_value T6;
  dylan_value T7;
  dylan_value T8_0;
  dylan_value T8_1;
  dylan_value code_;
  dylan_value T10;
  dylan_value T11;
  DWORD T12;
  DWORD T13;
  dylan_value T14;
  dylan_value T15;
  dylan_value T16;
  dylan_value T17;
  dylan_value T18;
  DBCHR T19;
  dylan_value T20_0;
  dylan_value T21;
  DBCHR T22;
  DWORD T23;
  DWORD T24;
  DSINT T25;
  DWORD T26;
  dylan_value T27;
  dylan_value T28;
  dylan_value T29;
  dylan_value T30;
  DWORD T31;
  dylan_value T32_0;
  DWORD atF33T, atF33;
  dylan_value T34;
  DWORD T35;
  DWORD T36;
  DWORD T37;
  dylan_value T38;
  dylan_value T39;
  DWORD T40;
  dylan_value T41;
  dylan_value T42;
  DWORD T43;
  dylan_value T44;
  DBCHR T45;
  dylan_value T46;
  dylan_value T47_0;
  dylan_value T48;
  dylan_value T49;
  DWORD T50;
  dylan_value T51;
  dylan_value T52_0;
  dylan_value T52_1;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:60
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:63
  code_ = (dylan_value) 1;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:64
  T11 = SLOT_VALUE_INITD(name_, 0);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:76
  T12 = primitive_cast_integer_as_raw(pos_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:76
  T13 = primitive_machine_word_add_signal_overflow(T12,4);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:70
  atF33T = T13;
L0: ;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:70
    atF33 = atF33T;
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:66
    T39 = primitive_cast_raw_as_integer(atF33);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:66
    T37 = primitive_cast_integer_as_raw(T11);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:66
    T38 = primitive_machine_word_less_thanQ(atF33,T37);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:66
    if (T38 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      T18 = primitive_machine_word_unsigned_less_thanQ(atF33,T37);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      if (T18 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
        T19 = REPEATED_DBCHR_SLOT_VALUE_TAGGED(name_, 1, atF33);
        T22 = T19;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
        T20_0 = Kelement_range_errorVKeI(name_, T39);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
        T21 = T20_0;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
        T25 = primitive_byte_character_as_raw(T21);
        T22 = T25;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      T23 = primitive_machine_word_shift_left_signal_overflow(T22,2);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      T24 = primitive_machine_word_logior(T23,1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      T26 = primitive_machine_word_subtract_signal_overflow(T24,192);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:67
      T27 = primitive_cast_raw_as_integer(T26);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
      T28 = primitive_machine_word_less_thanQ(T26,1);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
      if (T28 != &KPfalseVKi) {
        T14 = &KPfalseVKi;
      } else {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
        T30 = primitive_machine_word_less_thanQ(37,T26);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
        T29 = primitive_not(T30);
        T14 = T29;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
      if (T14 != &KPfalseVKi) {
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:69
        T17 = code_;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:69
        CONGRUENT_CALL_PROLOG(&KTVKd, 2);
        T15 = CONGRUENT_CALL2(T17, (dylan_value) 41);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:69
        CONGRUENT_CALL_PROLOG(&KAVKd, 2);
        T16 = CONGRUENT_CALL2(T15, T27);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:69
        code_ = T16;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:70
        T31 = primitive_machine_word_add_signal_overflow(atF33,4);
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:70
        atF33T = T31;
        goto L0;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:76
        T34 = T32_0;
        // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
        T43 = primitive_cast_integer_as_raw(T34);
        T35 = T43;
      } else {
        T35 = atF33;
      }
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:68
      T36 = T35;
    } else {
      T36 = atF33;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:66
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
    T42 = primitive_cast_raw_as_integer(T36);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:70
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:77
  T10 = code_;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:77
  CONGRUENT_CALL_PROLOG(&KasVKd, 2);
  T4 = CONGRUENT_CALL2(&KLcharacterGVKd, T10);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  T40 = primitive_cast_integer_as_raw(T11);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  T41 = primitive_machine_word_less_thanQ(T36,T40);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  if (T41 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
    T44 = primitive_machine_word_unsigned_less_thanQ(T36,T40);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
    if (T44 != &KPfalseVKi) {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
      T45 = REPEATED_DBCHR_SLOT_VALUE_TAGGED(name_, 1, T36);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
      T46 = primitive_raw_as_byte_character(T45);
      T49 = T46;
    } else {
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
      T47_0 = Kelement_range_errorVKeI(name_, T42);
      // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
      T48 = T47_0;
      T49 = T48;
    }
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
    CONGRUENT_CALL_PROLOG(&KEVKd, 2);
    T5 = CONGRUENT_CALL2(T49, Descape_markerVdfmc_mangling);
    T6 = T5;
  } else {
    T6 = &KPfalseVKi;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  if (T6 != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:79
    T50 = primitive_machine_word_add_signal_overflow(T36,4);
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:79
    T51 = primitive_cast_raw_as_integer(T50);
    T7 = T51;
  } else {
    T7 = T42;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:78
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:77
  T52_0 = T4;
  T52_1 = T7;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:60
  T8_0 = T52_0;
  T8_1 = T52_1;
  {
    MV_CHECK_TYPE_PROLOGUE(T52_0);
    primitive_type_check(T8_0, &KLcharacterGVKd);
    primitive_type_check(T8_1, &KLintegerGVKd);
    MV_CHECK_TYPE_EPILOGUE();
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:60
  MV_SET_ELT(1, T8_1);
  MV_SET_COUNT(2);
  return(T8_0);
}


/* SYSTEM INIT CODE */

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

    T0 = KPresolve_symbolVKiI(&KJhandler_function_);
    if (T0 != &KJhandler_function_) {
      primitive_repeated_slot_value_setter(T0, &K50, 1, 0);
      primitive_repeated_slot_value_setter(T0, &K46, 1, 0);
    }
  }
  return;
}

/* USER INIT CODE */

void _Init_dfmc_mangling__X_demangling_for_user () {
{
  dylan_value T0;
  _KLsimple_object_vectorGVKd_1 T1 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T2;
  dylan_value T3;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T1.vector_element_[0] = Dhygiene_charVdfmc_mangling;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T2 = primitive_copy_vector(&T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T3 = MAKE_CLOSURE_INITD(&K20, 1, T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  Dhygiene_marker_idQVdfmc_mangling = T3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:17
  T0 = &KPfalseVKi;
  goto I0;
}
I0:

{
  dylan_value T0;
  _KLsimple_object_vectorGVKd_1 T1 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T2;
  dylan_value T3;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T1.vector_element_[0] = Dlibrary_markerVdfmc_mangling;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T2 = primitive_copy_vector(&T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T3 = MAKE_CLOSURE_INITD(&K19, 1, T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  Dlibrary_separator_idQVdfmc_mangling = T3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:18
  T0 = &KPfalseVKi;
  goto I3;
}
I3:

{
  dylan_value T0;
  _KLsimple_object_vectorGVKd_1 T1 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T2;
  dylan_value T3;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T1.vector_element_[0] = Dmodule_markerVdfmc_mangling;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T2 = primitive_copy_vector(&T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T3 = MAKE_CLOSURE_INITD(&K18, 1, T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  Dmodule_separator_idQVdfmc_mangling = T3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:19
  T0 = &KPfalseVKi;
  goto I6;
}
I6:

{
  dylan_value T0;
  _KLsimple_object_vectorGVKd_1 T1 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T2;
  dylan_value T3;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T1.vector_element_[0] = Dmethod_mangled_markerVdfmc_mangling;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T2 = primitive_copy_vector(&T1);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T3 = MAKE_CLOSURE_INITD(&K16, 1, T2);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  Dmethod_mangled_marker_idQVdfmc_mangling = T3;
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:20
  T0 = &KPfalseVKi;
  goto I9;
}
I9:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/mangling/demangling.dylan:22
  T0 = KPadd_a_methodVKnI(&KinitializeVKd, &KinitializeVKdMdfmc_manglingM2, &Kdfmc_mangling_libraryYdylan_userVdfmc_mangling, &KPfalseVKi, &KPfalseVKi, &KPfalseVKi);
  goto I82;
}
I82:

  return;
}


/* eof */
