array A_nextFree148 integer A_firstFree204 integer A_maxIndex176 array A_typeId666 integer A_firstFree204 = 0 integer A_maxIndex176 = 0 function initGlobals561() { A_firstFree_204 = 0; A_maxIndex_176 = 0; } function main208() { initGlobals561(); init_B188(); } function config155() { } IS_NATIVE function testSuccess439() { } function init_B188() { dispatch_B_B_B_blub111(new_B858()); } function A_show953(integer this739) { testSuccess439(); } function A_init193(integer this185) { } function construct_A292(integer this106) { A_init193(this_106); } function B_blub116(integer this358) { dispatch_A_A_A_show130(this_358); } function B_init151(integer this143) { } function new_B858() returns integer { local integer this184 this_184 = alloc_B924(); construct_B390(this_184); return this_184; } function construct_B390(integer this163) { construct_A292(this_163); B_init151(this_163); } function error209(string msg188) { $debugPrint178((msg_188 + (" " + #getStackTrace()))); } function alloc_B924() returns integer { local integer this298 if (A_firstFree_204 == 0) { if (A_maxIndex_176 < 32768) { A_maxIndex_176 = (A_maxIndex_176 + 1); this_298 = A_maxIndex_176; A_typeId_666[this_298] = 2; } else { error209("Out of memory: Could not create B."); this_298 = 0; }; } else { A_firstFree_204 = (A_firstFree_204 - 1); this_298 = A_nextFree_148[A_firstFree_204]; A_typeId_666[this_298] = 2; }; return this_298; } function dispatch_A_A_A_show130(integer this129) { if (A_typeId_666[this_129] == 0) { if (this_129 == 0) { error209("Nullpointer exception when calling A.show"); } else { error209("Called A.show on invalid object."); }; } else { }; A_show953(this_129); } function dispatch_B_B_B_blub111(integer this201) { if (A_typeId_666[this_201] == 0) { if (this_201 == 0) { error209("Nullpointer exception when calling B.blub"); } else { error209("Called B.blub on invalid object."); }; } else { }; B_blub116(this_201); }