array A_nextFree133 integer A_firstFree986 integer A_maxIndex771 array A_typeId128 integer A_firstFree986 = 0 integer A_maxIndex771 = 0 function initGlobals857() { A_firstFree_986 = 0; A_maxIndex_771 = 0; } function main185() { initGlobals857(); init_B120(); } function config206() { } IS_NATIVE function testSuccess691() { } function init_B120() { dispatch_B_B_B_blub629(new_B129()); } function A_show285(integer this714) { testSuccess691(); } function A_init161(integer this199) { } function construct_A241(integer this203) { A_init161(this_203); } function B_blub626(integer this157) { dispatch_A_A_A_show144(this_157); } function B_init160(integer this136) { } function new_B129() returns integer { local integer this993 this_993 = alloc_B497(); construct_B103(this_993); return this_993; } function construct_B103(integer this158) { construct_A241(this_158); B_init160(this_158); } function error689(string msg378) { $debugPrint152((msg_378 + (" " + #getStackTrace()))); } function alloc_B497() returns integer { local integer this151 if (A_firstFree_986 == 0) { if (A_maxIndex_771 < 32768) { A_maxIndex_771 = (A_maxIndex_771 + 1); this_151 = A_maxIndex_771; A_typeId_128[this_151] = 2; } else { error689("Out of memory: Could not create B."); this_151 = 0; }; } else { A_firstFree_986 = (A_firstFree_986 - 1); this_151 = A_nextFree_133[A_firstFree_986]; A_typeId_128[this_151] = 2; }; return this_151; } function dispatch_A_A_A_show144(integer this169) { if (A_typeId_128[this_169] == 0) { if (this_169 == 0) { error689("Nullpointer exception when calling A.show"); } else { error689("Called A.show on invalid object."); }; } else { }; A_show285(this_169); } function dispatch_B_B_B_blub629(integer this207) { if (A_typeId_128[this_207] == 0) { if (this_207 == 0) { error689("Nullpointer exception when calling B.blub"); } else { error689("Called B.blub on invalid object."); }; } else { }; B_blub626(this_207); }