+static const char * const LOCATE_program___Program___generate_allocation_iroutines = "program::Program::generate_allocation_iroutines";
+void program___Program___generate_allocation_iroutines(val_t p0);
+typedef void (*program___Program___generate_allocation_iroutines_t)(val_t p0);
+ typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_1_0)(struct stack_frame_t *);
+ void OC_program___Program___generate_allocation_iroutines_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___generate_allocation_iroutines_1_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_3_0)(struct stack_frame_t *);
+ void OC_program___Program___generate_allocation_iroutines_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___generate_allocation_iroutines_3_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_5_0)(struct stack_frame_t *);
+ void OC_program___Program___generate_allocation_iroutines_5(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___generate_allocation_iroutines_5_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_7_0)(struct stack_frame_t *);
+ void OC_program___Program___generate_allocation_iroutines_7(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___generate_allocation_iroutines_7_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*CLOS_program___Program___with_each_iroutines_0)(struct stack_frame_t *, val_t, val_t);
+static const char * const LOCATE_program___Program___with_each_iroutines = "program::Program::with_each_iroutines";
+void program___Program___with_each_iroutines(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*program___Program___with_each_iroutines_t)(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_iroutines_1_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_iroutines_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_iroutines_1_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_iroutines_2_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_iroutines_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_iroutines_2_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_iroutines_3_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_iroutines_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_iroutines_3_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_iroutines_6_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_iroutines_6(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_iroutines_6_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*CLOS_program___Program___with_each_methods_0)(struct stack_frame_t *, val_t);
+static const char * const LOCATE_program___Program___with_each_methods = "program::Program::with_each_methods";
+void program___Program___with_each_methods(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*program___Program___with_each_methods_t)(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_methods_1_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_methods_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_methods_1_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_methods_2_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_methods_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_methods_2_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_methods_3_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_methods_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_methods_3_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*CLOS_program___Program___with_each_live_local_classes_0)(struct stack_frame_t *, val_t);
+static const char * const LOCATE_program___Program___with_each_live_local_classes = "program::Program::with_each_live_local_classes";
+void program___Program___with_each_live_local_classes(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+typedef void (*program___Program___with_each_live_local_classes_t)(val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*CLOS_OC_program___Program___with_each_live_local_classes_1_0)(struct stack_frame_t *);
+ void OC_program___Program___with_each_live_local_classes_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+ typedef void (*OC_program___Program___with_each_live_local_classes_1_t)(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0);
+static const char * const LOCATE_program___Program___init = "program::Program::init";
+void program___Program___init(val_t p0, val_t p1, val_t p2, int* init_table);
+typedef void (*program___Program___init_t)(val_t p0, val_t p1, val_t p2, int* init_table);
+val_t NEW_Program_program___Program___init(val_t p0, val_t p1);
+static const char * const LOCATE_program___MMLocalClass___init_var_iroutine = "program::MMLocalClass::init_var_iroutine";
+val_t program___MMLocalClass___init_var_iroutine(val_t p0);
+typedef val_t (*program___MMLocalClass___init_var_iroutine_t)(val_t p0);
+static const char * const LOCATE_program___MMLocalClass___init_var_iroutine__eq = "program::MMLocalClass::init_var_iroutine=";
+void program___MMLocalClass___init_var_iroutine__eq(val_t p0, val_t p1);
+typedef void (*program___MMLocalClass___init_var_iroutine__eq_t)(val_t p0, val_t p1);
+static const char * const LOCATE_program___MMLocalClass___checknew_iroutine = "program::MMLocalClass::checknew_iroutine";
+val_t program___MMLocalClass___checknew_iroutine(val_t p0);
+typedef val_t (*program___MMLocalClass___checknew_iroutine_t)(val_t p0);
+static const char * const LOCATE_program___MMLocalClass___checknew_iroutine__eq = "program::MMLocalClass::checknew_iroutine=";
+void program___MMLocalClass___checknew_iroutine__eq(val_t p0, val_t p1);
+typedef void (*program___MMLocalClass___checknew_iroutine__eq_t)(val_t p0, val_t p1);
+static const char * const LOCATE_program___MMLocalClass___new_instance_iroutine = "program::MMLocalClass::new_instance_iroutine";
+val_t program___MMLocalClass___new_instance_iroutine(val_t p0);
+typedef val_t (*program___MMLocalClass___new_instance_iroutine_t)(val_t p0);
+val_t NEW_MMLocalClass_abstractmetamodel___MMLocalClass___init(val_t p0, val_t p1, val_t p2);