array A_nextFree476 integer A_firstFree138 integer A_maxIndex705 array A_typeId243 integer A_firstFree138 = 0 integer A_maxIndex705 = 0 function initGlobals181() { A_firstFree_138 = 0; A_maxIndex_705 = 0; } function main126() { initGlobals181(); init_test209(); } function config136() { } function init_test209() { dispatch_A_test_A_foo708(new_A186()); } function A_foo214(integer this200) { } function A_init197(integer this350) { } function new_A186() returns integer { local integer this169 this_169 = alloc_A154(); construct_A183(this_169); return this_169; } function construct_A183(integer this312) { A_init197(this_312); } function alloc_A154() returns integer { local integer this482 if (A_firstFree_138 == 0) { if (A_maxIndex_705 < 32768) { A_maxIndex_705 = (A_maxIndex_705 + 1); this_482 = A_maxIndex_705; A_typeId_243[this_482] = 1; } else { error176("Out of memory: Could not create A."); this_482 = 0; }; } else { A_firstFree_138 = (A_firstFree_138 - 1); this_482 = A_nextFree_476[A_firstFree_138]; A_typeId_243[this_482] = 1; }; return this_482; } function error176(string msg428) { $debugPrint163((msg_428 + (" " + #getStackTrace()))); } function dispatch_A_test_A_foo708(integer this145) { if (A_typeId_243[this_145] == 0) { if (this_145 == 0) { error176("Nullpointer exception when calling A.foo"); } else { error176("Called A.foo on invalid object."); }; } else { }; A_foo214(this_145); }