text: /*
   * Code for class TYPE [NATURAL_16]
   */
  
  #include "eif_eiffel.h"
  #include "../E1/estructure.h"
  
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  extern EIF_TYPED_VALUE F330_5287(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5288(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5289(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5290(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5291(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5292(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5293(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5294(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5295(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5296(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5297(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5298(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5299(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5300(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5301(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5302(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5303(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5304(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5305(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5306(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5307(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5308(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5309(EIF_REFERENCE, EIF_TYPED_VALUE);
  extern EIF_TYPED_VALUE F330_5310(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5311(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5312(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5313(EIF_REFERENCE);
  static EIF_TYPED_VALUE F330_5314_body(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5314(EIF_REFERENCE);
  static EIF_TYPED_VALUE F330_5315_body(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5315(EIF_REFERENCE);
  extern EIF_TYPED_VALUE F330_5316(EIF_REFERENCE);
  extern void EIF_Minit330(void);
  
  #ifdef __cplusplus
  }
  #endif
  
  #include "eif_built_in.h"
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  
  #ifdef __cplusplus
  }
  #endif
  
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  /* {TYPE}.name_32 */
  EIF_TYPED_VALUE F330_5287 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "name_32";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,Current);
  	RTLR(1,tr1);
  	RTLR(2,Result);
  	RTLR(3,tr2);
  	RTLR(4,ur1);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10570);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10570);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000F1, 0,0); /* Result */
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3895, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	Result = (EIF_REFERENCE) tr1;
  	RTHOOK(2);
  	if ((EIF_BOOLEAN) !(EIF_BOOLEAN)(Result != NULL)) {
  		RTHOOK(3);
  		RTDBGAL(0, 0xF80000F1, 0,0); /* Result */
  		tr1 = RTLN(eif_new_type(241, 0x01).id);
  		tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3897, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		ur1 = RTCCL(tr2);
  		(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4885, Dtype(tr1)))(tr1, ur1x);
  		RTNHOOK(3,1);
  		Result = (EIF_REFERENCE) tr1;
  		RTHOOK(4);
  		RTDBGAA(Current, dtype, 3895, 0xF80000F1, 0); /* internal_name_32 */
  		RTAR(Current, Result);
  		*(EIF_REFERENCE *)(Current + RTWA(3895, dtype)) = (EIF_REFERENCE) Result;
  	}
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(5);
  		RTCT("name_32_attached", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(6);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef ur1
  }
  
  /* {TYPE}.name */
  EIF_TYPED_VALUE F330_5288 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "name";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,Current);
  	RTLR(1,tr1);
  	RTLR(2,Result);
  	RTLR(3,tr2);
  	RTLR(4,ur1);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10571);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10571);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000F0, 0,0); /* Result */
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3896, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	Result = (EIF_REFERENCE) tr1;
  	RTHOOK(2);
  	if ((EIF_BOOLEAN) !(EIF_BOOLEAN)(Result != NULL)) {
  		RTHOOK(3);
  		RTDBGAL(0, 0xF80000F0, 0,0); /* Result */
  		tr1 = RTLN(eif_new_type(240, 0x01).id);
  		tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3897, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		ur1 = RTCCL(tr2);
  		(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4738, Dtype(tr1)))(tr1, ur1x);
  		RTNHOOK(3,1);
  		Result = (EIF_REFERENCE) tr1;
  		RTHOOK(4);
  		RTDBGAA(Current, dtype, 3896, 0xF80000F0, 0); /* internal_name */
  		RTAR(Current, Result);
  		*(EIF_REFERENCE *)(Current + RTWA(3896, dtype)) = (EIF_REFERENCE) Result;
  	}
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(5);
  		RTCT("name_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(6);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef ur1
  }
  
  /* {TYPE}.generic_parameter_type */
  EIF_TYPED_VALUE F330_5289 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "generic_parameter_type";
  	RTEX;
  #define arg1 arg1x.it_i4
  	EIF_INTEGER_32 ti4_1;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	if ((arg1x.type & SK_HEAD) == SK_REF) arg1x.it_i4 = * (EIF_INTEGER_32 *) arg1x.it_r;
  	
  	RTLI(2);
  	RTLR(0,Current);
  	RTLR(1,Result);
  	RTLIU(2);
  	RTLU (SK_REF, &Result);
  	RTLU(SK_INT32,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10572);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10572);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("i_large_enough", EX_PRE);
  		RTTE((EIF_BOOLEAN) (arg1 >= ((EIF_INTEGER_32) 1L)), label_1);
  		RTCK;
  		RTHOOK(2);
  		RTCT("i_small_enough", EX_PRE);
  		ti4_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3878, dtype))(Current)).it_i4);
  		RTTE((EIF_BOOLEAN) (arg1 <= ti4_1), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	Result = (EIF_REFERENCE) eif_builtin_TYPE_generic_parameter_type (Current, arg1);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("generic_parameter_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	if (!Result) {RTEC(EN_FAIL);}
  	RTHOOK(4);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef arg1
  }
  
  /* {TYPE}.type_id */
  EIF_TYPED_VALUE F330_5290 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "type_id";
  	RTEX;
  	EIF_INTEGER_32 Result = ((EIF_INTEGER_32) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_INT32, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10573);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10573);
  	RTIV(Current, RTAL);
  	Result = (EIF_INTEGER_32) eif_builtin_TYPE_type_id (Current);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(1);
  		RTCT("type_id_not_negative", EX_POST);
  		if ((EIF_BOOLEAN) (Result >= ((EIF_INTEGER_32) 0L))) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(2);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_INT32; r.it_i4 = Result; return r; }
  }
  
  /* {TYPE}.hash_code */
  EIF_TYPED_VALUE F330_5291 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "hash_code";
  	RTEX;
  	EIF_INTEGER_32 ti4_1;
  	EIF_INTEGER_32 Result = ((EIF_INTEGER_32) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_INT32, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10574);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10574);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0x10000000, 1,0); /* Result */
  	ti4_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3877, dtype))(Current)).it_i4);
  	Result = (EIF_INTEGER_32) ti4_1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("good_hash_value", EX_POST);
  		if ((EIF_BOOLEAN) (Result >= ((EIF_INTEGER_32) 0L))) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_INT32; r.it_i4 = Result; return r; }
  }
  
  /* {TYPE}.generic_parameter_count */
  EIF_TYPED_VALUE F330_5292 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "generic_parameter_count";
  	RTEX;
  	EIF_INTEGER_32 Result = ((EIF_INTEGER_32) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_INT32, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10575);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10575);
  	RTIV(Current, RTAL);
  	Result = (EIF_INTEGER_32) eif_builtin_TYPE_generic_parameter_count (Current);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(1);
  		RTCT("generic_parameter_count_not_negative", EX_POST);
  		if ((EIF_BOOLEAN) (Result >= ((EIF_INTEGER_32) 0L))) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(2);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_INT32; r.it_i4 = Result; return r; }
  }
  
  /* {TYPE}.has_default */
  EIF_TYPED_VALUE F330_5293 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "has_default";
  	RTEX;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_BOOL, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10576);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10576);
  	RTIV(Current, RTAL);
  	Result = (EIF_BOOLEAN) eif_builtin_TYPE_has_default (Current);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  }
  
  /* {TYPE}.is_deferred */
  EIF_TYPED_VALUE F330_5294 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "is_deferred";
  	RTEX;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_BOOL, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10577);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10577);
  	RTIV(Current, RTAL);
  	Result = (EIF_BOOLEAN) eif_builtin_TYPE_is_deferred (Current);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  }
  
  /* {TYPE}.is_expanded */
  EIF_TYPED_VALUE F330_5295 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "is_expanded";
  	RTEX;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_BOOL, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10578);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10578);
  	RTIV(Current, RTAL);
  	Result = (EIF_BOOLEAN) eif_builtin_TYPE_is_expanded (Current);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  }
  
  /* {TYPE}.is_attached */
  EIF_TYPED_VALUE F330_5296 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "is_attached";
  	RTEX;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_BOOL, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10579);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10579);
  	RTIV(Current, RTAL);
  	Result = (EIF_BOOLEAN) eif_builtin_TYPE_is_attached (Current);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  }
  
  /* {TYPE}.is_equal */
  EIF_TYPED_VALUE F330_5297 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "is_equal";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_INTEGER_32 ti4_1;
  	EIF_INTEGER_32 ti4_2;
  	EIF_BOOLEAN tb1;
  	EIF_BOOLEAN tb2;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(3);
  	RTLR(0,arg1);
  	RTLR(1,Current);
  	RTLR(2,ur1);
  	RTLIU(3);
  	RTLU (SK_BOOL, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10580);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10580);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(Dftype(Current), 1), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("other_not_void", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0x04000000, 1,0); /* Result */
  	ti4_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3877, dtype))(Current)).it_i4);
  	ti4_2 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTVF(3877, "type_id", arg1))(arg1)).it_i4);
  	Result = (EIF_BOOLEAN) (EIF_BOOLEAN)(ti4_1 == ti4_2);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("symmetric", EX_POST);
  		if ((!(Result) || (RTEQ(arg1, Current)))) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  		RTHOOK(4);
  		RTCT("consistent", EX_POST);
  		tb1 = '\01';
  		ur1 = arg1;
  		tb2 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWF(12, dtype))(Current, ur1x)).it_b);
  		if (tb2) {
  			tb1 = Result;
  		}
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(5);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  #undef ur1
  #undef arg1
  }
  
  /* {TYPE}.is_strictly_conforming_to */
  EIF_TYPED_VALUE F330_5298 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "is_strictly_conforming_to";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_INTEGER_32 ti4_1;
  	EIF_INTEGER_32 ti4_2;
  	EIF_BOOLEAN tb1;
  	EIF_BOOLEAN tb2;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(3);
  	RTLR(0,arg1);
  	RTLR(1,Current);
  	RTLR(2,ur1);
  	RTLIU(3);
  	RTLU (SK_BOOL, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10581);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10581);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(Dftype(Current), 1), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("other_exists", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0x04000000, 1,0); /* Result */
  	tb1 = '\0';
  	ti4_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3877, dtype))(Current)).it_i4);
  	ti4_2 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTVF(3877, "type_id", arg1))(arg1)).it_i4);
  	if ((EIF_BOOLEAN)(ti4_1 != ti4_2)) {
  		ur1 = arg1;
  		tb2 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWF(1385, dtype))(Current, ur1x)).it_b);
  		tb1 = tb2;
  	}
  	Result = (EIF_BOOLEAN) tb1;
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  #undef ur1
  #undef arg1
  }
  
  /* {TYPE}.is_conforming_to */
  EIF_TYPED_VALUE F330_5299 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "is_conforming_to";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE ui4_1x = {{0}, SK_INT32};
  #define ui4_1 ui4_1x.it_i4
  	EIF_TYPED_VALUE ui4_2x = {{0}, SK_INT32};
  #define ui4_2 ui4_2x.it_i4
  	EIF_INTEGER_32 ti4_1;
  	EIF_INTEGER_32 ti4_2;
  	EIF_BOOLEAN tb1;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(2);
  	RTLR(0,arg1);
  	RTLR(1,Current);
  	RTLIU(2);
  	RTLU (SK_BOOL, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10582);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10582);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(Dftype(Current), 1), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("other_exists", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0x04000000, 1,0); /* Result */
  	ti4_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3877, dtype))(Current)).it_i4);
  	ui4_1 = ti4_1;
  	ti4_2 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTVF(3877, "type_id", arg1))(arg1)).it_i4);
  	ui4_2 = ti4_2;
  	tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE, EIF_TYPED_VALUE)) RTWF(533, 21))(Current, ui4_1x, ui4_2x)).it_b);
  	Result = (EIF_BOOLEAN) tb1;
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  #undef ui4_1
  #undef ui4_2
  #undef arg1
  }
  
  /* {TYPE}.adapt */
  EIF_TYPED_VALUE F330_5300 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "adapt";
  	RTEX;
  #define arg1 arg1x.it_n2
  	EIF_NATURAL_16 Result = ((EIF_NATURAL_16) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	if ((arg1x.type & SK_HEAD) == SK_REF) arg1x.it_n2 = * (EIF_NATURAL_16 *) arg1x.it_r;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_UINT16, &Result);
  	RTLU(SK_UINT16,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10583);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10583);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0x34000000, 0,0); /* Result */
  	Result = (EIF_NATURAL_16) arg1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("adapted", EX_POST);
  		if ((Result == arg1)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_UINT16; r.it_n2 = Result; return r; }
  #undef arg1
  }
  
  /* {TYPE}.attempted */
  EIF_TYPED_VALUE F330_5301 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "attempted";
  	RTEX;
  	EIF_NATURAL_16 loc1 = (EIF_NATURAL_16) 0;
  #define arg1 arg1x.it_r
  	EIF_BOOLEAN uarg1;
  	EIF_BOOLEAN uarg;
  	RTS_SD;
  	EIF_REFERENCE tr1 = NULL;
  	EIF_NATURAL_16 tu2_1;
  	EIF_BOOLEAN tb1;
  	EIF_NATURAL_16 Result = ((EIF_NATURAL_16) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(3);
  	RTLR(0,Current);
  	RTLR(1,arg1);
  	RTLR(2,tr1);
  	RTLIU(3);
  	RTLU (SK_UINT16, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	RTLU(SK_UINT16, &loc1);
  	
  	RTEAA(l_feature_name, 329, Current, 1, 1, 10584);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10584);
  	uarg1 = (EIF_BOOLEAN) RTS_OU (arg1);
  	uarg = uarg1;
  	if (uarg) {
  		RTS_RC;
  		RTS_RS (arg1);
  		RTS_RW;
  	}
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	tr1 = RTCCL(arg1);
  	RTOB(*(EIF_NATURAL_16 *), RTWCT(3898, dtype, Dftype(Current)), tr1, loc1, tb1);
  	if (tb1) {
  		RTHOOK(2);
  		RTDBGAL(0, 0x34000000, 0,0); /* Result */
  		Result = (EIF_NATURAL_16) loc1;
  	}
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("assigned_or_void", EX_POST);
  		tb1 = '\01';
  		tr1 = RTLN(eif_new_type(215, 0x00).id);
  		*(EIF_NATURAL_16 *)tr1 = Result;
  		if (!RTEQ(tr1, arg1)) {
  			tu2_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3886, dtype))(Current)).it_n2);
  			tb1 = (EIF_BOOLEAN)(Result == tu2_1);
  		}
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(4);
  	RTDBGLE;
  	RTMD(0);
  	if (uarg) {
  		RTS_RD;
  	}
  	RTLE;
  	RTLO(4);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_UINT16; r.it_n2 = Result; return r; }
  #undef arg1
  }
  
  /* {TYPE}.attempt */
  EIF_TYPED_VALUE F330_5302 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "attempt";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_BOOLEAN uarg1;
  	EIF_BOOLEAN uarg;
  	RTS_SD;
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_NATURAL_16 tu2_1;
  	EIF_BOOLEAN tb1;
  	EIF_NATURAL_16 Result = ((EIF_NATURAL_16) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(4);
  	RTLR(0,Current);
  	RTLR(1,arg1);
  	RTLR(2,ur1);
  	RTLR(3,tr1);
  	RTLIU(4);
  	RTLU (SK_UINT16, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10585);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10585);
  	uarg1 = (EIF_BOOLEAN) RTS_OU (arg1);
  	uarg = uarg1;
  	if (uarg) {
  		RTS_RC;
  		RTS_RS (arg1);
  		RTS_RW;
  	}
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0x34000000, 0,0); /* Result */
  	ur1 = RTCCL(arg1);
  	tu2_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWF(3884, dtype))(Current, ur1x)).it_n2);
  	Result = (EIF_NATURAL_16) tu2_1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("assigned_or_void", EX_POST);
  		tb1 = '\01';
  		tr1 = RTLN(eif_new_type(215, 0x00).id);
  		*(EIF_NATURAL_16 *)tr1 = Result;
  		if (!RTEQ(tr1, arg1)) {
  			tu2_1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3886, dtype))(Current)).it_n2);
  			tb1 = (EIF_BOOLEAN)(Result == tu2_1);
  		}
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	if (uarg) {
  		RTS_RD;
  	}
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_UINT16; r.it_n2 = Result; return r; }
  #undef ur1
  #undef arg1
  }
  
  /* {TYPE}.default_detachable_value */
  EIF_TYPED_VALUE F330_5303 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "default_detachable_value";
  	RTEX;
  	EIF_NATURAL_16 Result = ((EIF_NATURAL_16) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_UINT16, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10586);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10586);
  	RTIV(Current, RTAL);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_UINT16; r.it_n2 = Result; return r; }
  }
  
  /* {TYPE}.default */
  EIF_TYPED_VALUE F330_5304 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "default";
  	RTEX;
  	EIF_NATURAL_16 loc1 = (EIF_NATURAL_16) 0;
  	EIF_BOOLEAN tb1;
  	EIF_NATURAL_16 Result = ((EIF_NATURAL_16) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_UINT16, &Result);
  	RTLU (SK_REF, &Current);
  	RTLU(SK_UINT16, &loc1);
  	
  	RTEAA(l_feature_name, 329, Current, 1, 0, 10587);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10587);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("has_default", EX_PRE);
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3879, dtype))(Current)).it_b);
  		RTTE(tb1, label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(2);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_UINT16; r.it_n2 = Result; return r; }
  }
  
  /* {TYPE}.out */
  EIF_TYPED_VALUE F330_5305 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "out";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,tr1);
  	RTLR(1,Current);
  	RTLR(2,tr2);
  	RTLR(3,ur1);
  	RTLR(4,Result);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10588);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10588);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000E8, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(232, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr2;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4738, Dtype(tr1)))(tr1, ur1x);
  	RTNHOOK(1,1);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("out_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef ur1
  }
  
  /* {TYPE}.debug_output */
  EIF_TYPED_VALUE F330_5306 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "debug_output";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(3);
  	RTLR(0,Current);
  	RTLR(1,tr1);
  	RTLR(2,Result);
  	RTLIU(3);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10589);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10589);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000ED, 0,0); /* Result */
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3874, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	Result = (EIF_REFERENCE) tr1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("result_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  }
  
  /* {TYPE}.plus */
  EIF_TYPED_VALUE F330_5307 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "plus";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE up2x = {{0}, SK_POINTER};
  #define up2 up2x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_TYPED_VALUE ui4_1x = {{0}, SK_INT32};
  #define ui4_1 ui4_1x.it_i4
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_INTEGER_32 ti4_1;
  	EIF_INTEGER_32 ti4_2;
  	EIF_BOOLEAN tb1;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(6);
  	RTLR(0,arg1);
  	RTLR(1,tr1);
  	RTLR(2,Current);
  	RTLR(3,tr2);
  	RTLR(4,Result);
  	RTLR(5,ur1);
  	RTLIU(6);
  	RTLU (SK_REF, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10590);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10590);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(232, 0x01), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("argument_not_void", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0xF80000E8, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(232, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	RTNHOOK(2,1);
  	ti4_1 = *(EIF_INTEGER_32 *)(tr2 + RTVA(4768, "count", tr2));
  	ti4_2 = *(EIF_INTEGER_32 *)(arg1 + RTVA(4768, "count", arg1));
  	ui4_1 = (EIF_INTEGER_32) (ti4_1 + ti4_2);
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4642, Dtype(tr1)))(tr1, ui4_1x);
  	RTNHOOK(2,2);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	RTHOOK(3);
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr1;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4821, "append", Result))(Result, ur1x);
  	RTHOOK(4);
  	ur1 = RTCCL(arg1);
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4821, "append", Result))(Result, ur1x);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(5);
  		RTCT("result_exists", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  		RTHOOK(6);
  		RTCT("definition", EX_POST);
  		tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		ur1 = RTCCL(arg1);
  		tr2 = ((up2x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4721, "plus", tr1))(tr1, ur1x)), (((up2x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up2x.it_r = RTBU(up2x))), (up2x.type = SK_POINTER), up2x.it_r);
  		ur1 = tr2;
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4754, "same_string", Result))(Result, ur1x)).it_b);
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(7);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef up2
  #undef ur1
  #undef ui4_1
  #undef arg1
  }
  
  /* {TYPE}.same_string */
  EIF_TYPED_VALUE F330_5308 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "same_string";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_BOOLEAN tb1;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(4);
  	RTLR(0,arg1);
  	RTLR(1,Current);
  	RTLR(2,tr1);
  	RTLR(3,ur1);
  	RTLIU(4);
  	RTLU (SK_BOOL, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10591);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10591);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(232, 0x01), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("other_not_void", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0x04000000, 1,0); /* Result */
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	RTNHOOK(2,1);
  	ur1 = RTCCL(arg1);
  	tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4754, "same_string", tr1))(tr1, ur1x)).it_b);
  	Result = (EIF_BOOLEAN) tb1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("definition", EX_POST);
  		tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		RTNHOOK(3,1);
  		ur1 = RTCCL(arg1);
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4754, "same_string", tr1))(tr1, ur1x)).it_b);
  		if ((EIF_BOOLEAN)(Result == tb1)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(4);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  #undef up1
  #undef ur1
  #undef arg1
  }
  
  /* {TYPE}.is_case_insensitive_equal */
  EIF_TYPED_VALUE F330_5309 (EIF_REFERENCE Current, EIF_TYPED_VALUE arg1x)
  {
  	GTCX
  	char *l_feature_name = "is_case_insensitive_equal";
  	RTEX;
  #define arg1 arg1x.it_r
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_BOOLEAN tb1;
  	EIF_BOOLEAN Result = ((EIF_BOOLEAN) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	
  	RTLI(4);
  	RTLR(0,arg1);
  	RTLR(1,Current);
  	RTLR(2,tr1);
  	RTLR(3,ur1);
  	RTLIU(4);
  	RTLU (SK_BOOL, &Result);
  	RTLU(SK_REF,&arg1);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 1, 10592);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10592);
  	RTCC(arg1, 329, l_feature_name, 1, eif_new_type(232, 0x01), 0x01);
  	RTIV(Current, RTAL);
  	if ((RTAL & CK_REQUIRE) || RTAC) {
  		RTHOOK(1);
  		RTCT("other_not_void", EX_PRE);
  		RTTE((EIF_BOOLEAN)(arg1 != NULL), label_1);
  		RTCK;
  		RTJB;
  label_1:
  		RTCF;
  	}
  body:;
  	RTHOOK(2);
  	RTDBGAL(0, 0x04000000, 1,0); /* Result */
  	tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	RTNHOOK(2,1);
  	ur1 = RTCCL(arg1);
  	tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4752, "is_case_insensitive_equal", tr1))(tr1, ur1x)).it_b);
  	Result = (EIF_BOOLEAN) tb1;
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("definition", EX_POST);
  		tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		RTNHOOK(3,1);
  		ur1 = RTCCL(arg1);
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4752, "is_case_insensitive_equal", tr1))(tr1, ur1x)).it_b);
  		if ((EIF_BOOLEAN)(Result == tb1)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(4);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(3);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_BOOL; r.it_b = Result; return r; }
  #undef up1
  #undef ur1
  #undef arg1
  }
  
  /* {TYPE}.as_lower */
  EIF_TYPED_VALUE F330_5310 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "as_lower";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE up2x = {{0}, SK_POINTER};
  #define up2 up2x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_BOOLEAN tb1;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,tr1);
  	RTLR(1,Current);
  	RTLR(2,tr2);
  	RTLR(3,ur1);
  	RTLR(4,Result);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10593);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10593);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000E8, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(232, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr2;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4738, Dtype(tr1)))(tr1, ur1x);
  	RTNHOOK(1,1);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	RTHOOK(2);
  	(FUNCTION_CAST(void, (EIF_REFERENCE)) RTVF(4837, "to_lower", Result))(Result);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("as_lower_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  		RTHOOK(4);
  		RTCT("definition", EX_POST);
  		tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		RTNHOOK(4,1);
  		tr2 = ((up2x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTVF(4703, "as_lower", tr1))(tr1)), (((up2x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up2x.it_r = RTBU(up2x))), (up2x.type = SK_POINTER), up2x.it_r);
  		ur1 = tr2;
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4754, "same_string", Result))(Result, ur1x)).it_b);
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(5);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef up2
  #undef ur1
  }
  
  /* {TYPE}.as_upper */
  EIF_TYPED_VALUE F330_5311 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "as_upper";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE up2x = {{0}, SK_POINTER};
  #define up2 up2x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_BOOLEAN tb1;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,tr1);
  	RTLR(1,Current);
  	RTLR(2,tr2);
  	RTLR(3,ur1);
  	RTLR(4,Result);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10594);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10594);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000E8, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(232, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr2;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4738, Dtype(tr1)))(tr1, ur1x);
  	RTNHOOK(1,1);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	RTHOOK(2);
  	(FUNCTION_CAST(void, (EIF_REFERENCE)) RTVF(4838, "to_upper", Result))(Result);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(3);
  		RTCT("as_upper_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  		RTHOOK(4);
  		RTCT("definition", EX_POST);
  		tr1 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  		RTNHOOK(4,1);
  		tr2 = ((up2x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTVF(4704, "as_upper", tr1))(tr1)), (((up2x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up2x.it_r = RTBU(up2x))), (up2x.type = SK_POINTER), up2x.it_r);
  		ur1 = tr2;
  		tb1 = (((FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTVF(4754, "same_string", Result))(Result, ur1x)).it_b);
  		if (tb1) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(5);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef up2
  #undef ur1
  }
  
  /* {TYPE}.to_string_8 */
  EIF_TYPED_VALUE F330_5312 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "to_string_8";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,tr1);
  	RTLR(1,Current);
  	RTLR(2,tr2);
  	RTLR(3,ur1);
  	RTLR(4,Result);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10595);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10595);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000E8, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(232, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3875, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr2;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4738, Dtype(tr1)))(tr1, ur1x);
  	RTNHOOK(1,1);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("to_string_8_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef ur1
  }
  
  /* {TYPE}.to_string_32 */
  EIF_TYPED_VALUE F330_5313 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "to_string_32";
  	RTEX;
  	EIF_TYPED_VALUE up1x = {{0}, SK_POINTER};
  #define up1 up1x.it_p
  	EIF_TYPED_VALUE ur1x = {{0}, SK_REF};
  #define ur1 ur1x.it_r
  	EIF_REFERENCE tr1 = NULL;
  	EIF_REFERENCE tr2 = NULL;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(5);
  	RTLR(0,tr1);
  	RTLR(1,Current);
  	RTLR(2,tr2);
  	RTLR(3,ur1);
  	RTLR(4,Result);
  	RTLIU(5);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10596);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10596);
  	RTIV(Current, RTAL);
  	RTHOOK(1);
  	RTDBGAL(0, 0xF80000EE, 0,0); /* Result */
  	tr1 = RTLN(eif_new_type(238, 0x01).id);
  	tr2 = ((up1x = (FUNCTION_CAST(EIF_TYPED_VALUE, (EIF_REFERENCE)) RTWF(3874, dtype))(Current)), (((up1x.type & SK_HEAD) == SK_REF)? (EIF_REFERENCE) 0: (up1x.it_r = RTBU(up1x))), (up1x.type = SK_POINTER), up1x.it_r);
  	ur1 = tr2;
  	(FUNCTION_CAST(void, (EIF_REFERENCE, EIF_TYPED_VALUE)) RTWC(4884, Dtype(tr1)))(tr1, ur1x);
  	RTNHOOK(1,1);
  	Result = (EIF_REFERENCE) RTCCL(tr1);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(2);
  		RTCT("to_string_32_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(3);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  #undef up1
  #undef ur1
  }
  
  /* {TYPE}.internal_name_32 */
  static EIF_TYPED_VALUE F330_5314_body (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "internal_name_32";
  	RTEX;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10597);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10597);
  	RTIV(Current, RTAL);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  }
  
  EIF_TYPED_VALUE F330_5314 (EIF_REFERENCE Current)
  {
  	EIF_TYPED_VALUE r;
  	r.type = SK_REF;
  	r.it_r = *(EIF_REFERENCE *)(Current + RTWA(3895,Dtype(Current)));
  	if (!r.it_r) {
  		if (RTAT(RTWCT(3895, Dtype(Current), Dftype(Current)))) {
  			GTCX
  			RTLD;
  			RTLI(1);
  			RTLR(0,Current);
  			RTLIU(1);
  			r.it_r = (F330_5314_body (Current)).it_r;
  			*(EIF_REFERENCE *)(Current + RTWA(3895,Dtype(Current))) = r.it_r;
  			RTAR(Current, r.it_r);
  			RTLE;
  		}
  	}
  	return r;
  }
  
  
  /* {TYPE}.internal_name */
  static EIF_TYPED_VALUE F330_5315_body (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "internal_name";
  	RTEX;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(1);
  	RTLR(0,Current);
  	RTLIU(1);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10598);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 0);
  	RTGC;
  	RTDBGEAA(329, Current, 10598);
  	RTIV(Current, RTAL);
  	RTVI(Current, RTAL);
  	RTRS;
  	RTHOOK(1);
  	RTDBGLE;
  	RTMD(0);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  }
  
  EIF_TYPED_VALUE F330_5315 (EIF_REFERENCE Current)
  {
  	EIF_TYPED_VALUE r;
  	r.type = SK_REF;
  	r.it_r = *(EIF_REFERENCE *)(Current + RTWA(3896,Dtype(Current)));
  	if (!r.it_r) {
  		if (RTAT(RTWCT(3896, Dtype(Current), Dftype(Current)))) {
  			GTCX
  			RTLD;
  			RTLI(1);
  			RTLR(0,Current);
  			RTLIU(1);
  			r.it_r = (F330_5315_body (Current)).it_r;
  			*(EIF_REFERENCE *)(Current + RTWA(3896,Dtype(Current))) = r.it_r;
  			RTAR(Current, r.it_r);
  			RTLE;
  		}
  	}
  	return r;
  }
  
  
  /* {TYPE}.runtime_name */
  EIF_TYPED_VALUE F330_5316 (EIF_REFERENCE Current)
  {
  	GTCX
  	char *l_feature_name = "runtime_name";
  	RTEX;
  	EIF_REFERENCE Result = ((EIF_REFERENCE) 0);
  	
  	RTCDT;
  	RTSN;
  	RTDA;
  	RTLD;
  	
  	RTLI(2);
  	RTLR(0,Result);
  	RTLR(1,Current);
  	RTLIU(2);
  	RTLU (SK_REF, &Result);
  	RTLU (SK_REF, &Current);
  	
  	RTEAA(l_feature_name, 329, Current, 0, 0, 10599);
  	RTSA(dtype);
  	RTSC;
  	RTME(dtype, 1);
  	RTDBGEAA(329, Current, 10599);
  	RTIV(Current, RTAL);
  	Result = (EIF_REFERENCE) eif_builtin_TYPE_runtime_name (Current);
  	if (RTAL & CK_ENSURE) {
  		RTHOOK(1);
  		RTCT("name_not_void", EX_POST);
  		if ((EIF_BOOLEAN)(Result != NULL)) {
  			RTCK;
  		} else {
  			RTCF;
  		}
  	}
  	RTVI(Current, RTAL);
  	RTRS;
  	if (!Result) {RTEC(EN_FAIL);}
  	RTHOOK(2);
  	RTDBGLE;
  	RTMD(1);
  	RTLE;
  	RTLO(2);
  	RTEE;
  	{ EIF_TYPED_VALUE r; r.type = SK_REF; r.it_r = Result; return r; }
  }
  
  void EIF_Minit330 (void)
  {
  	GTCX
  }
  
  
  #ifdef __cplusplus
  }
  #endif
  