array A_nextFree191 integer A_firstFree187 integer A_maxIndex309 array A_typeId194 array B_nextFree112 integer B_firstFree449 integer B_maxIndex554 array B_typeId214 array A_b187 integer A_firstFree187 = 0 integer A_maxIndex309 = 0 integer B_firstFree449 = 0 integer B_maxIndex554 = 0 function initGlobals369() { } function main724() { initGlobals369(); init_test137(); } function config148() { } function init_test137() { if (dispatch_A_test_A_get100(new_A267()) == 1) { testSuccess992(); } else { }; } IS_NATIVE IS_EXTERN @extern function S2I623(string i120) returns integer { } IS_NATIVE function testSuccess992() { } function A_get152(integer this120) returns integer { return S2I623(dispatch_B_test_A_B_get189(A_b_187[this_120])); } function A_init126(integer this689) { A_b_187[this_689] = new_B126(); } function new_A267() returns integer { local integer this121 this_121 = alloc_A492(); construct_A277(this_121); return this_121; } function construct_A277(integer this114) { A_init126(this_114); } function B_get142(integer this201) returns string { return "1"; } function new_B126() returns integer { local integer this166 this_166 = alloc_B178(); construct_B189(this_166); return this_166; } function B_init348(integer this512) { } function construct_B189(integer this208) { B_init348(this_208); } function alloc_A492() returns integer { local integer this187 if (A_firstFree_187 == 0) { if (A_maxIndex_309 < 32768) { A_maxIndex_309 = (A_maxIndex_309 + 1); this_187 = A_maxIndex_309; A_typeId_194[this_187] = 1; } else { error193("Out of memory: Could not create A."); this_187 = 0; }; } else { A_firstFree_187 = (A_firstFree_187 - 1); this_187 = A_nextFree_191[A_firstFree_187]; A_typeId_194[this_187] = 1; }; return this_187; } function error193(string msg311) { $debugPrint122((msg_311 + (" " + #getStackTrace()))); } function alloc_B178() returns integer { local integer this265 if (B_firstFree_449 == 0) { if (B_maxIndex_554 < 32768) { B_maxIndex_554 = (B_maxIndex_554 + 1); this_265 = B_maxIndex_554; B_typeId_214[this_265] = 2; } else { error193("Out of memory: Could not create B."); this_265 = 0; }; } else { B_firstFree_449 = (B_firstFree_449 - 1); this_265 = B_nextFree_112[B_firstFree_449]; B_typeId_214[this_265] = 2; }; return this_265; } function dispatch_A_test_A_get100(integer this900) returns integer { if (A_typeId_194[this_900] == 0) { if (this_900 == 0) { error193("Nullpointer exception when calling A.get"); } else { error193("Called A.get on invalid object."); }; } else { }; return A_get152(this_900); } function dispatch_B_test_A_B_get189(integer this142) returns string { if (B_typeId_214[this_142] == 0) { if (this_142 == 0) { error193("Nullpointer exception when calling B.get"); } else { error193("Called B.get on invalid object."); }; } else { }; return B_get142(this_142); }