array Blub_nextFree696 integer Blub_firstFree111 integer Blub_maxIndex319 array Blub_typeId118 integer Blub_firstFree111 = 0 integer Blub_maxIndex319 = 0 function initGlobals109() { } function main253() { local integer blub367 initGlobals109(); blub_367 = new_Blub199(); if (Blub_typeId_118[blub_367] == 0) { if (blub_367 == 0) { error161("Nullpointer exception when calling Blub.foo"); } else { error161("Called Blub.foo on invalid object."); }; } else { }; } function config107() { } function new_Blub199() returns integer { local integer this171 if (Blub_firstFree_111 == 0) { if (Blub_maxIndex_319 < 32768) { Blub_maxIndex_319 = (Blub_maxIndex_319 + 1); this_171 = Blub_maxIndex_319; Blub_typeId_118[this_171] = 1; } else { error161("Out of memory: Could not create Blub."); this_171 = 0; }; } else { Blub_firstFree_111 = (Blub_firstFree_111 - 1); this_171 = Blub_nextFree_696[Blub_firstFree_111]; Blub_typeId_118[this_171] = 1; }; return this_171; } function error161(string msg173) { $debugPrint208((msg_173 + (" " + #getStackTrace()))); }