#include "opendylan/run-time.h"

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

/* Typedefs for referenced classes */

typedef struct {
  dylan_value wrapper;
  dylan_value 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_;
} _KLsealed_generic_functionGVKe;

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

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

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(21);
define__KLbyte_stringGVKd(12);
define__KLbyte_stringGVKd(13);

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

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

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

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

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

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

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

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 xep_;
  dylan_value function_signature_;
  dylan_value mep_;
  dylan_value iep_;
  dylan_value keyword_specifiers_;
} _KLkeyword_methodGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
} _KLemitted_objectGVdfmc_common;

typedef struct {
  dylan_value wrapper;
} _KLdood_mapped_objectGVdood;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
} _KLmodel_propertiesGVdfmc_common;

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

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
} _KLBtopGVdfmc_modeling;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
} _KLBobjectGVdfmc_modeling;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
  dylan_value PinstanceQ_iep_;
  dylan_value CinstanceQ_function_;
} _KLBtypeGVdfmc_modeling;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
  dylan_value PinstanceQ_iep_;
  dylan_value CinstanceQ_function_;
  dylan_value private_Cdebug_name_;
  dylan_value Cclass_implementation_class_;
  dylan_value Cclass_subtype_bit_;
  dylan_value Pclass_module_;
} _KLBclassGVdfmc_modeling;

typedef struct {
  dylan_value wrapper;
} _KLBvirtual_objectGVdfmc_modeling;


/* Typedefs for defined classes */

typedef struct {
  dylan_value wrapper;
} _KLvirtual_objectGVdfmc_modeling;

typedef struct {
  dylan_value wrapper;
  dylan_value emitted_name_;
  dylan_value private_model_definition_;
  dylan_value private_model_creator_;
} _KLheap_deferred_modelGVdfmc_modeling;


/* Referenced object declarations */

dylan_value KPadd_classVKeI (dylan_value);
extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
dylan_value KBobject_classVdfmc_modelingMM0I (dylan_value);
extern _KLfunction_classGVKi KLsimple_methodGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLsimple_methodGVKeW;
extern _KLgetter_methodGVKi Kbinding_nameVdfmc_modelingMM1;
extern _KLclassGVKd KLgetter_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLgetter_methodGVKiW;
extern _KLgetter_methodGVKi Kbinding_nameVdfmc_modelingMM2;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
dylan_value Kmodel_variable_nameVdfmc_commonI (dylan_value);
extern _KLsealed_generic_functionGVKe Kfragment_nameVdfmc_reader;
extern _KLsimple_methodGVKe KBobject_classVdfmc_modelingMM0;
extern _KLclassGVKd KLimplementation_classGVKe;
extern _KLmm_wrapperGVKi_0 KLimplementation_classGVKeW;
extern _KLkeyword_methodGVKe Kdefault_class_constructorVKi;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLclassGVKd KLemitted_objectGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLemitted_objectGVdfmc_commonW;
extern _KLclassGVKd KLdood_mapped_objectGVdood;
extern _KLmm_wrapperGVKi_0 KLdood_mapped_objectGVdoodW;
extern _KLclassGVKd KLmodel_propertiesGVdfmc_common;
extern _KLmm_wrapperGVKi_0 KLmodel_propertiesGVdfmc_commonW;
extern _KLinstance_slot_descriptorGVKe Kemitted_nameVdfmc_commonHLemitted_objectG;
extern _KLclassGVKd KLinstance_slot_descriptorGVKe;
extern _KLmm_wrapperGVKi_0 KLinstance_slot_descriptorGVKeW;
extern _KLinstance_slot_descriptorGVKe Kprivate_model_definitionVdfmc_commonHLmodel_propertiesG;
extern _KLinstance_slot_descriptorGVKe Kprivate_model_creatorVdfmc_commonHLmodel_propertiesG;
dylan_value Kclass_instanceQ_rcpl_single_smallVKiI (dylan_value, dylan_value);
extern _KLmoduleGVKe Kdfmc_modeling_moduleYdylan_userVdfmc_modeling;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
extern _KLclassGVKd KLBcallable_objectGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLBcallable_objectGVdfmc_modelingW;
extern _KLclassGVKd KLBtopGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLBtopGVdfmc_modelingW;
extern _KLclassGVKd KLBobjectGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLBobjectGVdfmc_modelingW;
extern _KLclassGVKd KLBtypeGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLBtypeGVdfmc_modelingW;
extern _KLclassGVKd KLBclassGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLBclassGVdfmc_modelingW;
dylan_value Kgeneral_rcpl_class_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLBvirtual_objectGVdfmc_modeling;

/* Defined object declarations */

extern _KLclassGVKd KLvirtual_objectGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLvirtual_objectGVdfmc_modelingW;
extern _KLclassGVKd KLheap_deferred_modelGVdfmc_modeling;
extern _KLmm_wrapperGVKi_0 KLheap_deferred_modelGVdfmc_modelingW;
extern _KLsealed_generic_functionGVKe Kbinding_nameVdfmc_modeling;
extern _KLsealed_generic_functionGVKe KCobject_classVdfmc_modeling;
extern _KLsimple_methodGVKe KCobject_classVdfmc_modelingMM0;
dylan_value KCobject_classVdfmc_modelingMM0I (dylan_value object_);
static _KLpairGVKd K10;
static _KLsignatureGVKe K11;
static _KLbyte_stringGVKd_13 K12;
extern _KLsimple_methodGVKe Kbinding_nameVdfmc_modelingMM0;
dylan_value Kbinding_nameVdfmc_modelingMM0I (dylan_value);
static _KLpairGVKd K15;
static _KLpairGVKd K16;
static _KLpairGVKd K17;
static _KLbyte_stringGVKd_12 K18;
extern _KLsealed_generic_functionGVKe KBobject_classVdfmc_modeling;
static _KLpairGVKd K20;
static _KLbyte_stringGVKd_13 K21;
static _KLimplementation_classGVKe K22;
static _KLsimple_object_vectorGVKd_3 K23;
static _KLsimple_object_vectorGVKd_1 K24;
static _KLsimple_object_vectorGVKd_6 K25;
static _KLbyte_stringGVKd_21 K26;
static _KLimplementation_classGVKe K27;
static _KLsimple_object_vectorGVKd_1 K28;
static _KLsimple_object_vectorGVKd_6 K29;
static _KLsimple_object_vectorGVKd_2 K30;
static _KLsimple_object_vectorGVKd_8 K31;
static _KLbyte_stringGVKd_16 K32;
static _KLpairGVKd K33;

/* Indirection variables */


/* Variables */

dylan_value binding_nameVdfmc_modeling = &Kbinding_nameVdfmc_modeling;
dylan_value Lvirtual_objectGVdfmc_modeling = &KLvirtual_objectGVdfmc_modeling;
dylan_value Lheap_deferred_modelGVdfmc_modeling = &KLheap_deferred_modelGVdfmc_modeling;
dylan_value Bobject_classVdfmc_modeling = &KBobject_classVdfmc_modeling;
dylan_value Cobject_classVdfmc_modeling = &KCobject_classVdfmc_modeling;

/* Objects */

_KLclassGVKd KLvirtual_objectGVdfmc_modeling = {
  &KLclassGVKdW /* wrapper */,
  &Kgeneral_rcpl_class_instanceQVKiI,
  &K32,
  &K27,
  (dylan_value) 1,
  &Kdfmc_modeling_moduleYdylan_userVdfmc_modeling
};

_KLmm_wrapperGVKi_0 KLvirtual_objectGVdfmc_modelingW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K27,
  (dylan_value) 1,
  1,
  33554439,
  (dylan_value) 1
};

_KLclassGVKd KLheap_deferred_modelGVdfmc_modeling = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_rcpl_single_smallVKiI,
  &K26,
  &K22,
  (dylan_value) 1,
  &Kdfmc_modeling_moduleYdylan_userVdfmc_modeling
};

_KLmm_wrapperGVKi_0 KLheap_deferred_modelGVdfmc_modelingW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K22,
  (dylan_value) 1,
  13,
  33554439,
  (dylan_value) 1
};

_KLsealed_generic_functionGVKe Kbinding_nameVdfmc_modeling = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K18,
  &K15,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe KCobject_classVdfmc_modeling = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &K11,
  &KPfalseVKi,
  &K12,
  &K10,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsimple_methodGVKe KCobject_classVdfmc_modelingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &K11,
  &KCobject_classVdfmc_modelingMM0I
};

static _KLpairGVKd K10 = {
  &KLpairGVKdW /* wrapper */,
  &KCobject_classVdfmc_modelingMM0,
  &KPempty_listVKi
};

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

static _KLbyte_stringGVKd_13 K12 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "^object-class"
};

_KLsimple_methodGVKe Kbinding_nameVdfmc_modelingMM0 = {
  &KLsimple_methodGVKeW /* wrapper */,
  &xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &Kbinding_nameVdfmc_modelingMM0I
};

static _KLpairGVKd K15 = {
  &KLpairGVKdW /* wrapper */,
  &Kbinding_nameVdfmc_modelingMM0,
  &K16
};

static _KLpairGVKd K16 = {
  &KLpairGVKdW /* wrapper */,
  &Kbinding_nameVdfmc_modelingMM1,
  &K17
};

static _KLpairGVKd K17 = {
  &KLpairGVKdW /* wrapper */,
  &Kbinding_nameVdfmc_modelingMM2,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_12 K18 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 49,
  "binding-name"
};

_KLsealed_generic_functionGVKe KBobject_classVdfmc_modeling = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &K11,
  &KPfalseVKi,
  &K21,
  &K20,
  &RSINGULAR_Labsent_engine_nodeG
};

static _KLpairGVKd K20 = {
  &KLpairGVKdW /* wrapper */,
  &KBobject_classVdfmc_modelingMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_13 K21 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 53,
  "&object-class"
};

static _KLimplementation_classGVKe K22 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 274989069,
  &KLheap_deferred_modelGVdfmc_modeling,
  &KLheap_deferred_modelGVdfmc_modelingW,
  &KPfalseVKi,
  &K23,
  (dylan_value) -3,
  &Kdefault_class_constructorVKi,
  &K24,
  &K25,
  (dylan_value) 17,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &K23,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_3 K23 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 13,
  &Kemitted_nameVdfmc_commonHLemitted_objectG,
  &Kprivate_model_definitionVdfmc_commonHLmodel_propertiesG,
  &Kprivate_model_creatorVdfmc_commonHLmodel_propertiesG
};

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

static _KLsimple_object_vectorGVKd_6 K25 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &KLobjectGVKd,
  &KLemitted_objectGVdfmc_common,
  &KLdood_mapped_objectGVdood,
  &KLmodel_propertiesGVdfmc_common,
  &KLheap_deferred_modelGVdfmc_modeling,
  &KPfalseVKi
};

static _KLbyte_stringGVKd_21 K26 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 85,
  "<heap-deferred-model>"
};

static _KLimplementation_classGVKe K27 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 410255361,
  &KLvirtual_objectGVdfmc_modeling,
  &KLvirtual_objectGVdfmc_modelingW,
  &KPfalseVKi,
  &KPempty_vectorVKi,
  (dylan_value) -3,
  &Kdefault_class_constructorVKi,
  &K28,
  &K29,
  (dylan_value) 5,
  &K30,
  &K31,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &K33,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

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

static _KLsimple_object_vectorGVKd_6 K29 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &KLobjectGVKd,
  &KLvirtual_objectGVdfmc_modeling,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_2 K30 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 9,
  (dylan_value) 29,
  (dylan_value) 33
};

static _KLsimple_object_vectorGVKd_8 K31 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 33,
  &KLBcallable_objectGVdfmc_modeling,
  &KLemitted_objectGVdfmc_common,
  &KLdood_mapped_objectGVdood,
  &KLmodel_propertiesGVdfmc_common,
  &KLBtopGVdfmc_modeling,
  &KLBobjectGVdfmc_modeling,
  &KLBtypeGVdfmc_modeling,
  &KLBclassGVdfmc_modeling
};

static _KLbyte_stringGVKd_16 K32 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 65,
  "<virtual-object>"
};

static _KLpairGVKd K33 = {
  &KLpairGVKdW /* wrapper */,
  &KLBvirtual_objectGVdfmc_modeling,
  &KPempty_listVKi
};

/* Code */

dylan_value KCobject_classVdfmc_modelingMM0I (dylan_value object_) {
  dylan_value T2_0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:18
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:19
  T2_0 = KBobject_classVdfmc_modelingMM0I(object_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:18
  MV_SET_COUNT(1);
  return(T2_0);
}

dylan_value Kbinding_nameVdfmc_modelingMM0I (dylan_value object_) {
  dylan_value var_;
  dylan_value T3;
  dylan_value T4;
  dylan_value T5;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:23
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:24
  var_ = Kmodel_variable_nameVdfmc_commonI(object_);
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:25
  if (var_ != &KPfalseVKi) {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:27
    CONGRUENT_CALL_PROLOG(&Kfragment_nameVdfmc_reader, 1);
    T3 = CONGRUENT_CALL1(var_);
    T5 = T3;
  } else {
    // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:25
    T4 = &KPfalseVKi;
    MV_SET_ELT(0, &KPfalseVKi);
    MV_SET_COUNT(1);
    T5 = T4;
  }
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:25
  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:23
  return(T5);
}


/* SYSTEM INIT CODE */

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

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:8
  T0 = KPadd_classVKeI(&KLvirtual_objectGVdfmc_modeling);
  goto I0;
}
I0:

{
  dylan_value T0;

  // /home/bruce/Development/dylan/opendylan/sources/dfmc/modeling/model-object.dylan:10
  T0 = KPadd_classVKeI(&KLheap_deferred_modelGVdfmc_modeling);
  goto I3;
}
I3:

  return;
}

/* USER INIT CODE */

void _Init_dfmc_modeling__X_model_object_for_user () {
  return;
}


/* eof */
