array A_nextFree174 integer A_firstFree180 integer A_maxIndex211 array A_typeId188 integer A_firstFree180 = 0 integer A_maxIndex211 = 0 function initGlobals125() { } function main471() { initGlobals125(); init_test196(); } function config951() { } function init_test196() { local integer clVar162 clVar_162 = alloc_B_test342(); construct_B671(clVar_162); dispatch_B_test_B_foo283(clVar_162, 5); } IS_NATIVE function testSuccess719() { } function foo_test290(integer this129, integer i633) { testSuccess719(); } function A_init166(integer this153) { } function construct_A956(integer this192) { A_init166(this_192); } function B_init980(integer this191) { } function construct_B671(integer this937) { construct_A956(this_937); B_init980(this_937); } function alloc_B_test342() returns integer { local integer this372 if (A_firstFree_180 == 0) { if (A_maxIndex_211 < 32768) { A_maxIndex_211 = (A_maxIndex_211 + 1); this_372 = A_maxIndex_211; A_typeId_188[this_372] = 3; } else { error963("Out of memory: Could not create B_test."); this_372 = 0; }; } else { A_firstFree_180 = (A_firstFree_180 - 1); this_372 = A_nextFree_174[A_firstFree_180]; A_typeId_188[this_372] = 3; }; return this_372; } function error963(string msg116) { $debugPrint484((msg_116 + (" " + #getStackTrace()))); } function dispatch_B_test_B_foo283(integer this116, integer x100) { if (A_typeId_188[this_116] == 0) { if (this_116 == 0) { error963("Nullpointer exception when calling B.foo"); } else { error963("Called B.foo on invalid object."); }; } else { }; foo_test290(this_116, x_100); }