array F_nextFree107 integer F_firstFree634 integer F_maxIndex827 array F_typeId921 integer F_firstFree634 = 0 integer F_maxIndex827 = 0 function initGlobals168() { F_firstFree_634 = 0; F_maxIndex_827 = 0; } function main160() { initGlobals168(); init_A640(); } function config544() { } function init_A640() { local integer x118 local integer clVar200 clVar_200 = alloc_F_blub_A136(); x_118 = blub179(5, clVar_200); if (x_118 == 6) { testSuccess737(); } else { }; } function blub179(integer x219, integer f698) returns integer { return dispatch_F_A_F_apply132(f_698, x_219); } IS_NATIVE function testSuccess737() { } function apply_blub_A940(integer this117, integer x515) returns integer { return (x_515 + 1); } function alloc_F_blub_A136() returns integer { local integer this647 if (F_firstFree_634 == 0) { if (F_maxIndex_827 < 32768) { F_maxIndex_827 = (F_maxIndex_827 + 1); this_647 = F_maxIndex_827; F_typeId_921[this_647] = 2; } else { error161("Out of memory: Could not create F_blub_A."); this_647 = 0; }; } else { F_firstFree_634 = (F_firstFree_634 - 1); this_647 = F_nextFree_107[F_firstFree_634]; F_typeId_921[this_647] = 2; }; return this_647; } function error161(string msg171) { $debugPrint159((msg_171 + (" " + #getStackTrace()))); } function dispatch_F_A_F_apply132(integer this193, integer x182) returns integer { local integer A_F_apply_result143 if (F_typeId_921[this_193] == 0) { if (this_193 == 0) { error161("Nullpointer exception when calling F.apply"); } else { error161("Called F.apply on invalid object."); }; } else { }; A_F_apply_result_143 = apply_blub_A940(this_193, x_182); return A_F_apply_result_143; }