array A_nextFree837 integer A_firstFree732 integer A_maxIndex108 array A_typeId201 array B_nextFree143 integer B_firstFree899 integer B_maxIndex130 array B_typeId459 array A_b153 integer A_firstFree732 = 0 integer A_maxIndex108 = 0 integer B_firstFree899 = 0 integer B_maxIndex130 = 0 function initGlobals104() { } function main193() { initGlobals104(); init_test128(); } function config125() { } function init_test128() { if (dispatch_A_test_A_get121(new_A141()) == 1) { testSuccess956(); } else { }; } IS_NATIVE function testSuccess956() { } function A_get103(integer this136) returns integer { return dispatch_B_test_A_B_get908(A_b_153[this_136]); } function A_init325(integer this143) { A_b_153[this_143] = new_B592(); } function new_A141() returns integer { local integer this646 this_646 = alloc_A527(); construct_A585(this_646); return this_646; } function construct_A585(integer this483) { A_init325(this_483); } function B_get178(integer this684) returns integer { return 1; } function new_B592() returns integer { local integer this483 this_483 = alloc_B136(); construct_B922(this_483); return this_483; } function B_init190(integer this852) { } function construct_B922(integer this438) { B_init190(this_438); } function alloc_A527() returns integer { local integer this114 if (A_firstFree_732 == 0) { if (A_maxIndex_108 < 32768) { A_maxIndex_108 = (A_maxIndex_108 + 1); this_114 = A_maxIndex_108; A_typeId_201[this_114] = 1; } else { error880("Out of memory: Could not create A."); this_114 = 0; }; } else { A_firstFree_732 = (A_firstFree_732 - 1); this_114 = A_nextFree_837[A_firstFree_732]; A_typeId_201[this_114] = 1; }; return this_114; } function error880(string msg206) { $debugPrint671((msg_206 + (" " + #getStackTrace()))); } function alloc_B136() returns integer { local integer this451 if (B_firstFree_899 == 0) { if (B_maxIndex_130 < 32768) { B_maxIndex_130 = (B_maxIndex_130 + 1); this_451 = B_maxIndex_130; B_typeId_459[this_451] = 2; } else { error880("Out of memory: Could not create B."); this_451 = 0; }; } else { B_firstFree_899 = (B_firstFree_899 - 1); this_451 = B_nextFree_143[B_firstFree_899]; B_typeId_459[this_451] = 2; }; return this_451; } function dispatch_A_test_A_get121(integer this439) returns integer { if (A_typeId_201[this_439] == 0) { if (this_439 == 0) { error880("Nullpointer exception when calling A.get"); } else { error880("Called A.get on invalid object."); }; } else { }; return A_get103(this_439); } function dispatch_B_test_A_B_get908(integer this194) returns integer { if (B_typeId_459[this_194] == 0) { if (this_194 == 0) { error880("Nullpointer exception when calling B.get"); } else { error880("Called B.get on invalid object."); }; } else { }; return B_get178(this_194); }