array A_nextFree969 integer A_firstFree189 integer A_maxIndex324 array A_typeId876 integer A_firstFree189 = 0 integer A_maxIndex324 = 0 function initGlobals103() { A_firstFree_189 = 0; A_maxIndex_324 = 0; } function main171() { initGlobals103(); init_test168(); } function config978() { } function init_test168() { local integer b657 local integer a175 b_657 = new_C177(); a_175 = b_657; if (dispatch_A_test_A_f1169(a_175) == 3) { testSuccess196(); } else { }; } IS_NATIVE function testSuccess196() { } function C_f1369(integer this188) returns integer { return 3; } function C_init780(integer this134) { } function new_C177() returns integer { local integer this962 this_962 = alloc_C210(); construct_C622(this_962); return this_962; } function construct_C622(integer this139) { C_init780(this_139); } function error190(string msg109) { $debugPrint453((msg_109 + (" " + #getStackTrace()))); } function alloc_C210() returns integer { local integer this481 if (A_firstFree_189 == 0) { if (A_maxIndex_324 < 32768) { A_maxIndex_324 = (A_maxIndex_324 + 1); this_481 = A_maxIndex_324; A_typeId_876[this_481] = 3; } else { error190("Out of memory: Could not create C."); this_481 = 0; }; } else { A_firstFree_189 = (A_firstFree_189 - 1); this_481 = A_nextFree_969[A_firstFree_189]; A_typeId_876[this_481] = 3; }; return this_481; } function dispatch_A_test_A_f1169(integer this101) returns integer { local integer test_A_f1_result437 if (A_typeId_876[this_101] == 0) { if (this_101 == 0) { error190("Nullpointer exception when calling A.f1"); } else { error190("Called A.f1 on invalid object."); }; } else { }; test_A_f1_result_437 = C_f1369(this_101); return test_A_f1_result_437; }