array A_nextFree626 integer A_firstFree160 integer A_maxIndex145 array A_typeId159 integer A_firstFree160 = 0 integer A_maxIndex145 = 0 function initGlobals409() { } function main243() { initGlobals409(); if (dispatch_A_test_A_foo164(new_C150()) == 8) { testSuccess174(); } else { }; } function config162() { } IS_NATIVE function testSuccess174() { } function new_C150() returns integer { local integer this176 if (A_firstFree_160 == 0) { if (A_maxIndex_145 < 32768) { A_maxIndex_145 = (A_maxIndex_145 + 1); this_176 = A_maxIndex_145; A_typeId_159[this_176] = 3; } else { error189("Out of memory: Could not create C."); this_176 = 0; }; } else { A_firstFree_160 = (A_firstFree_160 - 1); this_176 = A_nextFree_626[A_firstFree_160]; A_typeId_159[this_176] = 3; }; return this_176; } function error189(string msg998) { $debugPrint991((msg_998 + (" " + #getStackTrace()))); } function dispatch_A_test_A_foo164(integer this149) returns integer { if (A_typeId_159[this_149] == 0) { if (this_149 == 0) { error189("Nullpointer exception when calling A.foo"); } else { error189("Called A.foo on invalid object."); }; } else { }; if (A_typeId_159[this_149] <= 1) { this_149 = 7; } else { this_149 = 8; }; return this_149; }