array A_nextFree112 integer A_firstFree843 integer A_maxIndex197 array A_typeId197 integer A_firstFree843 = 0 integer A_maxIndex197 = 0 function initGlobals355() { } function main173() { initGlobals355(); init_test141(); } function config186() { } function init_test141() { if (A_typeId_197[new_B114()] == 2) { testSuccess109(); } else { }; } IS_NATIVE function testSuccess109() { } function A_init114(integer this156) { } function construct_A755(integer this119) { A_init114(this_119); } function B_init219(integer this133) { } function new_B114() returns integer { local integer this676 this_676 = alloc_B202(); construct_B153(this_676); return this_676; } function construct_B153(integer this101) { construct_A755(this_101); B_init219(this_101); } function error189(string msg146) { $debugPrint163((msg_146 + (" " + #getStackTrace()))); } function alloc_B202() returns integer { local integer this334 if (A_firstFree_843 == 0) { if (A_maxIndex_197 < 32768) { A_maxIndex_197 = (A_maxIndex_197 + 1); this_334 = A_maxIndex_197; A_typeId_197[this_334] = 2; } else { error189("Out of memory: Could not create B."); this_334 = 0; }; } else { A_firstFree_843 = (A_firstFree_843 - 1); this_334 = A_nextFree_112[A_firstFree_843]; A_typeId_197[this_334] = 2; }; return this_334; }